Hi, I'm new to PJSIP and am afraid I experience heavy latency issues
early on that make me feel like VoIP has just been invented :) I was
surprised because my computer works quite well with any other
proprietary or open-source VoIP software (dual-core PC with 8GB RAM and
Ubuntu 16.04). I also didn't mess around with my ALSA audio settings.
I'm testing the latency with pjsystest in combination with a hardwired
audio loopback cable (including attenuator to match the mic
sensitivity). After reading quite a lot about pjsip latency issues I'm
unsure which information is outdated and where I should start to tweak.
It would be very helpful if somebody can put me in the right
directionbased on the attached output from my pjsystest latency test.
Many thanks, Frank
06:04:56.414 os_core_unix.c !pjlib 2.8 for POSIX initialized
06:04:56.415 sip_endpoint.c .Creating endpoint instance...
06:04:56.415 pjlib .select() I/O Queue created (0x146ea70)
06:04:56.415 sip_endpoint.c .Module "mod-msg-print" registered
06:04:56.415 sip_transport.c .Transport manager created.
06:04:56.415 pjsua_core.c .PJSUA state changed: NULL --> CREATED
06:04:56.415 sip_endpoint.c .Module "mod-pjsua-log" registered
06:04:56.415 sip_endpoint.c .Module "mod-tsx-layer" registered
06:04:56.415 sip_endpoint.c .Module "mod-stateful-util" registered
06:04:56.415 sip_endpoint.c .Module "mod-ua" registered
06:04:56.415 sip_endpoint.c .Module "mod-100rel" registered
06:04:56.415 sip_endpoint.c .Module "mod-pjsua" registered
06:04:56.415 sip_endpoint.c .Module "mod-invite" registered
06:04:56.653 alsa_dev.c ..ALSA driver found 32 devices
06:04:56.653 alsa_dev.c ..ALSA initialized
06:04:56.654 pjlib ..select() I/O Queue created
(0x14ded58)
06:04:56.658 sip_endpoint.c .Module "mod-evsub" registered
06:04:56.658 sip_endpoint.c .Module "mod-presence" registered
06:04:56.658 sip_endpoint.c .Module "mod-mwi" registered
06:04:56.658 sip_endpoint.c .Module "mod-refer" registered
06:04:56.658 sip_endpoint.c .Module "mod-pjsua-pres" registered
06:04:56.658 sip_endpoint.c .Module "mod-pjsua-im" registered
06:04:56.658 sip_endpoint.c .Module "mod-pjsua-options" registered
06:04:56.658 pjsua_core.c .1 SIP worker threads created
06:04:56.658 pjsua_core.c .pjsua version 2.8 for
Linux-4.4.0.139/x86_64/glibc-2.23 initialized
06:04:56.658 pjsua_core.c .PJSUA state changed: CREATED --> INIT
06:04:56.658 pjsua_core.c PJSUA state changed: INIT --> STARTING
06:04:56.658 sip_endpoint.c .Module "mod-unsolicited-mwi"
registered
06:04:56.658 pjsua_core.c .PJSUA state changed: STARTING -->
RUNNING
...
06:05:06.523 systest.c Running Audio Latency Test
06:05:06.524 pjsua_aud.c Creating file player: tock8.wav..
06:05:06.524 wav_player.c .File player 'tock8.wav' created:
samp.rate=8000, ch=1, bufsize=4KB, filesize=16KB
06:05:06.524 pjsua_aud.c .Player created, id=0, slot=1
06:05:06.524 pjsua_aud.c Creating recorder
PJSYSTEST_LATREC.WAV..
06:05:06.524 wav_writer.c .File writer 'PJSYSTEST_LATREC.WAV'
created: samp.rate=8000, bufsize=4KB
06:05:06.524 pjsua_aud.c .Recorder created, id=0, slot=2
06:05:06.524 pjsua_aud.c Conf connect: 1 --> 0
06:05:06.524 pjsua_aud.c .Set sound device: capture=-1,
playback=-2
06:05:06.524 pjsua_aud.c ..Opening sound device (speaker +
mic) PCM@8000/1/20ms
06:05:06.561 conference.c .Port 1 (tock8.wav) transmitting to
port 0 (default)
06:05:06.561 pjsua_aud.c Conf connect: 0 --> 2
06:05:06.561 conference.c .Port 0 (default) transmitting to
port 2 (PJSYSTEST_LATREC.WAV)
06:05:06.561 pjsua_aud.c !Conf connect: 1 --> 2
06:05:06.561 conference.c .Port 1 (tock8.wav) transmitting to
port 2 (PJSYSTEST_LATREC.WAV)
06:05:06.561 systest.c Please wait while test is running
(~10 sec)
06:05:06.566 Master/sound !Underflow, buf_cnt=0, will generate
1 frame
06:05:06.567 Master/sound Underflow, buf_cnt=0, will generate
1 frame
06:05:06.567 Master/sound Underflow, buf_cnt=0, will generate
1 frame
06:05:06.567 Master/sound Underflow, buf_cnt=0, will generate
1 frame
06:05:06.567 Master/sound Underflow, buf_cnt=0, will generate
1 frame
06:05:06.567 Master/sound Underflow, buf_cnt=0, will generate
1 frame
06:05:06.567 Master/sound Underflow, buf_cnt=0, will generate
1 frame
06:05:06.567 Master/sound Underflow, buf_cnt=0, will generate
1 frame
06:05:06.577 Master/sound Underflow, buf_cnt=0, will generate
1 frame
06:05:06.693 Master/sound Underflow, buf_cnt=0, will generate
1 frame
06:05:16.561 pjsua_aud.c !Conf disconnect: 1 -x- 2
06:05:16.561 conference.c .Port 1 (tock8.wav) stop
transmitting to port 2 (PJSYSTEST_LATREC.WAV)
06:05:16.561 pjsua_aud.c Conf disconnect: 0 -x- 2
06:05:16.561 conference.c .Port 0 (default) stop transmitting
to port 2 (PJSYSTEST_LATREC.WAV)
06:05:16.561 pjsua_aud.c Conf disconnect: 1 -x- 0
06:05:16.561 conference.c .Port 1 (tock8.wav) stop
transmitting to port 0 (default)
06:05:16.561 pjsua_aud.c Destroying recorder 0..
06:05:16.561 pjsua_aud.c Destroying player 0..
...
06:05:16.565 pjsua_aud.c !Closing sound device after idle for
0 second(s)
06:05:16.565 pjsua_aud.c .Closing default sound playback
device and default sound capture device
06:05:21.907 pjsua_aud.c !Creating file player:
PJSYSTEST_LATREC.WAV..
06:05:21.907 wav_player.c .File player 'PJSYSTEST_LATREC.WAV'
created: samp.rate=8000, ch=1, bufsize=4KB, filesize=162KB
06:05:21.907 pjsua_aud.c .Player created, id=0, slot=1
06:05:21.907 pjsua_aud.c Conf connect: 1 --> 0
06:05:21.907 pjsua_aud.c .Set sound device: capture=-1,
playback=-2
06:05:21.907 pjsua_aud.c ..Opening sound device (speaker +
mic) PCM@8000/1/20ms
06:05:21.915 conference.c .Port 1 (PJSYSTEST_LATREC.WAV)
transmitting to port 0 (default)
...
Audio Latency Test
The sound device latency:
Min=225, Max=774, Avg=713
The latency is huge!
_______________________________________________
Visit our blog: http://blog.pjsip.org
pjsip mailing list
pjsip@xxxxxxxxxxxxxxx
http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org