[Freeswitch-users] mod_portaudio send 3 rtppacket/60msinsteadof1 packet/20ms

Anthony Minessale anthony.minessale at gmail.com
Wed May 7 12:49:34 EDT 2008


ok,
please try 8295 at all combinations of codec-ms etc.
I changed the code to snoop the ringbuffer and make sure 2 frames worth of
audio as accumulated before i read from it.


On Wed, May 7, 2008 at 10:13 AM, Sluschny, Thomas <
Thomas.Sluschny at siemens.com> wrote:

>  I get always 3 RTP packets at once with 60ms setting, i also test with
> PCMU at 60i in vars.xml but i always get 20ms packets with 160byres packet
> size.
>
> Anthony, you are right with you "timeout assumption". To illustrate, here
> a log from my patch without waiting, i. e. no functional difference:
>
> 2008-05-07 16:53:48 [DEBUG] pablio.c:156 ReadAudioStream() 115594577 ms :
> Beginning (0 Bytes readable) ...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594577 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594577 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594579 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594579 ms :
> after Wait... (960 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:184 ReadAudioStream() 115594581 ms :
> all 320 Bytes read (640 Bytes readable), exit.
> 2008-05-07 16:53:48 [DEBUG] pablio.c:156 ReadAudioStream() 115594582 ms :
> Beginning (640 Bytes readable) ...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:184 ReadAudioStream() 115594582 ms :
> all 320 Bytes read (320 Bytes readable), exit.
> 2008-05-07 16:53:48 [DEBUG] pablio.c:156 ReadAudioStream() 115594582 ms :
> Beginning (320 Bytes readable) ...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:184 ReadAudioStream() 115594582 ms :
> all 320 Bytes read (0 Bytes readable), exit.
> 2008-05-07 16:53:48 [DEBUG] pablio.c:156 ReadAudioStream() 115594582 ms :
> Beginning (0 Bytes readable) ...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594582 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594582 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594583 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594583 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594585 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594585 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594587 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594587 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594589 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594589 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:167 ReadAudioStream() 115594591 ms :
> timer timed out (0 Bytes readable)!
> 2008-05-07 16:53:48 [DEBUG] pablio.c:156 ReadAudioStream() 115594593 ms :
> Beginning (0 Bytes readable) ...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594593 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594593 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594595 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594595 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594597 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594597 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594599 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594599 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594601 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594601 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594603 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594603 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594605 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594605 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:167 ReadAudioStream() 115594607 ms :
> timer timed out (0 Bytes readable)!
> 2008-05-07 16:53:48 [DEBUG] pablio.c:156 ReadAudioStream() 115594609 ms :
> Beginning (0 Bytes readable) ...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594609 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594609 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594611 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594611 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594613 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594613 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594615 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594615 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594617 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594617 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594618 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594618 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594620 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594620 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:167 ReadAudioStream() 115594622 ms :
> timer timed out (0 Bytes readable)!
> 2008-05-07 16:53:48 [DEBUG] pablio.c:156 ReadAudioStream() 115594624 ms :
> Beginning (0 Bytes readable) ...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594624 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594624 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594626 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594626 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594628 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594628 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594630 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594630 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594632 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594632 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594634 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594634 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594636 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594636 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594638 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594638 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594640 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594640 ms :
> after Wait... (960 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:184 ReadAudioStream() 115594642 ms :
> all 320 Bytes read (640 Bytes readable), exit.
> 2008-05-07 16:53:48 [DEBUG] pablio.c:156 ReadAudioStream() 115594642 ms :
> Beginning (640 Bytes readable) ...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:184 ReadAudioStream() 115594642 ms :
> all 320 Bytes read (320 Bytes readable), exit.
> 2008-05-07 16:53:48 [DEBUG] pablio.c:156 ReadAudioStream() 115594642 ms :
> Beginning (320 Bytes readable) ...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:184 ReadAudioStream() 115594642 ms :
> all 320 Bytes read (0 Bytes readable), exit.
> 2008-05-07 16:53:48 [DEBUG] pablio.c:156 ReadAudioStream() 115594642 ms :
> Beginning (0 Bytes readable) ...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594642 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594642 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594644 ms :
> before Wait...
> 2008-05-07 16:53:48 [DEBUG] pablio.c:172 ReadAudioStream() 115594644 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 16:53:48 [DEBUG] pablio.c:170 ReadAudioStream() 115594646 ms :
> before Wait...
> So i want use the timer to prevent these buffer read bursts all 60ms.
> All 3 x 320 bytes are used for RTP packets, so samples are not lost (only
> during the first 2 timeouts, but this is irrelevant).
>
> And if you like logs ;), here are the behavior with 60ms in portaudio.xml:
>
> 2008-05-07 17:09:04 [DEBUG] pablio.c:156 ReadAudioStream() 116511260 ms :
> Beginning (0 Bytes readable) ...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511260 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511260 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511262 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511262 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511264 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511264 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511266 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511266 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511268 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511268 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511270 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511270 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511272 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511272 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511274 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511274 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511276 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511276 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511278 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511278 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511279 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511279 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511281 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511281 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511283 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511283 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511285 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511285 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511287 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511287 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511289 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511289 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511291 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511291 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511293 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511293 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:167 ReadAudioStream() 116511295 ms :
> timer timed out (0 Bytes readable)!
> 2008-05-07 17:09:04 [DEBUG] pablio.c:156 ReadAudioStream() 116511297 ms :
> Beginning (0 Bytes readable) ...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511297 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511297 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511299 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511299 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511301 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511301 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511303 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511303 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511305 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511305 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511307 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511307 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511309 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511309 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511311 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511311 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511313 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511313 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511315 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511315 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511317 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511317 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511318 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511318 ms :
> after Wait... (960 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:184 ReadAudioStream() 116511321 ms :
> all 960 Bytes read (0 Bytes readable), exit.
> 2008-05-07 17:09:04 [DEBUG] pablio.c:156 ReadAudioStream() 116511321 ms :
> Beginning (0 Bytes readable) ...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511321 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511321 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511322 ms :
> before Wait...
> 2008-05-07 17:09:04 [DEBUG] pablio.c:172 ReadAudioStream() 116511322 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:04 [DEBUG] pablio.c:170 ReadAudioStream() 116511324 ms :
> before Wait...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:172 ReadAudioStream() 116511324 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:05 [DEBUG] pablio.c:170 ReadAudioStream() 116511326 ms :
> before Wait...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:172 ReadAudioStream() 116511326 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:05 [DEBUG] pablio.c:170 ReadAudioStream() 116511328 ms :
> before Wait...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:172 ReadAudioStream() 116511328 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:05 [DEBUG] pablio.c:170 ReadAudioStream() 116511330 ms :
> before Wait...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:172 ReadAudioStream() 116511330 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:05 [DEBUG] pablio.c:170 ReadAudioStream() 116511332 ms :
> before Wait...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:172 ReadAudioStream() 116511332 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:05 [DEBUG] pablio.c:170 ReadAudioStream() 116511334 ms :
> before Wait...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:172 ReadAudioStream() 116511334 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:05 [DEBUG] pablio.c:170 ReadAudioStream() 116511336 ms :
> before Wait...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:172 ReadAudioStream() 116511336 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:05 [DEBUG] pablio.c:170 ReadAudioStream() 116511338 ms :
> before Wait...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:172 ReadAudioStream() 116511338 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:05 [DEBUG] pablio.c:170 ReadAudioStream() 116511340 ms :
> before Wait...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:172 ReadAudioStream() 116511340 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:05 [DEBUG] pablio.c:170 ReadAudioStream() 116511342 ms :
> before Wait...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:172 ReadAudioStream() 116511342 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:05 [DEBUG] pablio.c:170 ReadAudioStream() 116511344 ms :
> before Wait...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:172 ReadAudioStream() 116511344 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:05 [DEBUG] pablio.c:170 ReadAudioStream() 116511346 ms :
> before Wait...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:172 ReadAudioStream() 116511346 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:05 [DEBUG] pablio.c:170 ReadAudioStream() 116511348 ms :
> before Wait...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:172 ReadAudioStream() 116511348 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:05 [DEBUG] pablio.c:170 ReadAudioStream() 116511350 ms :
> before Wait...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:172 ReadAudioStream() 116511350 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:05 [DEBUG] pablio.c:170 ReadAudioStream() 116511352 ms :
> before Wait...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:172 ReadAudioStream() 116511352 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:05 [DEBUG] pablio.c:170 ReadAudioStream() 116511354 ms :
> before Wait...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:172 ReadAudioStream() 116511354 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:05 [DEBUG] pablio.c:170 ReadAudioStream() 116511356 ms :
> before Wait...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:172 ReadAudioStream() 116511356 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:05 [DEBUG] pablio.c:167 ReadAudioStream() 116511358 ms :
> timer timed out (0 Bytes readable)!
> 2008-05-07 17:09:05 [DEBUG] pablio.c:156 ReadAudioStream() 116511359 ms :
> Beginning (0 Bytes readable) ...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:170 ReadAudioStream() 116511360 ms :
> before Wait...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:172 ReadAudioStream() 116511360 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:05 [DEBUG] pablio.c:170 ReadAudioStream() 116511361 ms :
> before Wait...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:172 ReadAudioStream() 116511361 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:05 [DEBUG] pablio.c:170 ReadAudioStream() 116511363 ms :
> before Wait...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:172 ReadAudioStream() 116511363 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:05 [DEBUG] pablio.c:170 ReadAudioStream() 116511365 ms :
> before Wait...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:172 ReadAudioStream() 116511365 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:05 [DEBUG] pablio.c:170 ReadAudioStream() 116511367 ms :
> before Wait...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:172 ReadAudioStream() 116511367 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:05 [DEBUG] pablio.c:170 ReadAudioStream() 116511369 ms :
> before Wait...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:172 ReadAudioStream() 116511369 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:05 [DEBUG] pablio.c:170 ReadAudioStream() 116511371 ms :
> before Wait...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:172 ReadAudioStream() 116511371 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:05 [DEBUG] pablio.c:170 ReadAudioStream() 116511373 ms :
> before Wait...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:172 ReadAudioStream() 116511373 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:05 [DEBUG] pablio.c:170 ReadAudioStream() 116511375 ms :
> before Wait...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:172 ReadAudioStream() 116511375 ms :
> after Wait... (0 Bytes readable)
> 2008-05-07 17:09:05 [DEBUG] pablio.c:170 ReadAudioStream() 116511377 ms :
> before Wait...
> 2008-05-07 17:09:05 [DEBUG] pablio.c:172 ReadAudioStream() 116511377 ms :
> after Wait... (960 Bytes readable)
> 2008-05-07 17:09:05 [DEBUG] pablio.c:184 ReadAudioStream() 116511379 ms :
> all 960 Bytes read (0 Bytes readable), exit.
> Strange timeout after 35...40ms, or should it be?
>
> Thomas
>
>  ------------------------------
> *Von:* freeswitch-users-bounces at lists.freeswitch.org [mailto:
> freeswitch-users-bounces at lists.freeswitch.org] *Im Auftrag von *Csaba
> Zelei
> *Gesendet:* Mittwoch, 7. Mai 2008 16:46
> *An:* freeswitch-users at lists.freeswitch.org
> *Betreff:* Re: [Freeswitch-users] mod_portaudio send 3
> rtppacket/60msinsteadof1 packet/20ms
>
> I tried it with the latest trunk.
> If I set it to 60ms sometimes I still get <1ms rtp packet delta, if I set
> it to 120ms then there is none
> The rtp packet delta is still random within 50-70ms with sometimes too low
> 15-30ms, sometimes too high 100-150ms delta (with codec-ms = 60ms), and with
> 15-20ms jitter.
>
>
> Anthony Minessale wrote:
>
> Have you tried setting the codec-ms in the portaudio.conf.xml to 60 or 120
> ms?
> Maybe the soundcard is not able to do 20ms intervals and portaudio is
> doing the least common multiple and chopping it up for us.
> I think what's happening is the timer in the module is set to the interval
> from the config file (20ms) and during every 60ms period there is no audio
> until the last ms.  so in each 60 ms:
>
> 20ms (timeout..... flush buffer)
> 20ms (timeout..... flush buffer)
> 20ms (get 60ms worth of audio at once [3 20ms packets] but we have already
> read 2 filler frames from the timeouts)
>
> So now we have read 5 packets instead of 3 and erased some of our buffer
> because of perceived timeouts.
> The code is using the assumption that if the device will obey the chosen
> frame size and sample rate requests down to the interval.
>
> If you find and edit conf/autoload_configs/portaudio.conf.xml
>
> look for this:
>
>  <param name="codec-ms" value="20"/>
>
> and change 20 to 60
>
> Setting this to 60 will change the frame size of all the packets from 320
> to 960 and set the timer to clock at an interval of 60ms
> Since the card seems to be able to reliably produce 3 20ms packets every
> 60ms it should also be able to produce 1 60ms packet.
>
> FreeSWITCH should then buffer the audio and still deliver it over SIP at
> 20ms if you want but you can opt to set the codec PCMU at 60i to disable
> buffering if you are in a reliable network.
>
> The same should be true for setting the codec-ms to 120
>
>
> On Wed, May 7, 2008 at 3:27 AM, Sluschny, Thomas <
> Thomas.Sluschny at siemens.com> wrote:
>
> >  Hi Anthony,
> >
> > i also tested your patch with no success.
> > As i already described below, the problem with all 60ms 3 packets comes
> > from the soundcard.
> > The hardware delivers its samples all 60 ms.
> > Our problem is (like Csaba said) that we read out the buffer after 60ms,
> > 3 times, each with samples for 20ms, AND WITH NO DELAY!
> > So we get: 60ms wait and 3 RTP packets within <1ms to send, and after
> > that we already wait 60 ms for the next samples.
> >
> > In my patch i wait appr.20 ms if last method call was no longer than 4ms
> > ago,
> > but i think we can do better with switch_core_timer_check() method, but
> > i don't know exactly how.
> >
> > You are absolutly right with your demand for a better timing resolution
> > under Windows,
> > but this 60ms mystery is caused by the soundcard.
> >
> > Thomas
> >
> >  ------------------------------
> >
>
>
> _______________________________________________
> Freeswitch-users mailing list
> Freeswitch-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org
>
>


-- 
Anthony Minessale II

FreeSWITCH http://www.freeswitch.org/
ClueCon http://www.cluecon.com/

AIM: anthm
MSN:anthony_minessale at hotmail.com <MSN%3Aanthony_minessale at hotmail.com>
GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com<PAYPAL%3Aanthony.minessale at gmail.com>
IRC: irc.freenode.net #freeswitch

FreeSWITCH Developer Conference
sip:888 at conference.freeswitch.org <sip%3A888 at conference.freeswitch.org>
iax:guest at conference.freeswitch.org/888
googletalk:conf+888 at conference.freeswitch.org<googletalk%3Aconf%2B888 at conference.freeswitch.org>
pstn:213-799-1400
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20080507/d54a17b9/attachment-0001.html 


More information about the Freeswitch-users mailing list