[pjsip] how to reduce CPU load and improve voice quality on mobile device FR

TARUN CHAPLOT tarunchaplot at yahoo.com
Mon Aug 18 13:14:26 EDT 2008

Hello All
Thanks for the prompt replies.

I am using pjsip 0.9.0 version on openmoko FR compiled in arm-angstrom-linux environment 
by using following command

I am having problem with sound quality 

	* audio stutters, 
	* audio break-ups. I looked through the checklist https://trac.pjsip.org/repos/wiki/sound-problems, and I ran the sound test by

./sndtest  (https://trac.pjsip.org/repos/wiki/audio-check-sound-device-jitter)
and got the below given results .

 17:49:15.121 os_core_unix.c pjlib 0.9.0-release for POSIX initialized
 17:49:19.212      pasound.c PortAudio sound library initialized, status=0
 17:49:19.215      pasound.c PortAudio host api count=1
 17:49:19.217      pasound.c Sound device count=1
 17:49:19.222          pjlib select() I/O Queue created (0x47754)
 17:49:19.226      sndtest.c Found 1 devices:
 17:49:19.228      sndtest.c  0: /dev/dsp (capture=16, playback=16)
 17:49:19.915      sndtest.c Testing playback device /dev/dsp
 17:49:19.917      sndtest.c Testing capture device /dev/dsp
 17:49:20.481      sndtest.c  Please wait while test is in progress (~11 secs)..
 17:49:32.424      sndtest.c  Dumping results:
 17:49:32.425      sndtest.c   Parameters: clock rate=8000Hz, 80 samples/frame
 17:49:32.425      sndtest.c   Playback stream report:
 17:49:32.425      sndtest.c    Duration: 9s.980
 17:49:32.426      sndtest.c    Frame interval: min=0.004ms, max=132.173ms
 17:49:32.426      sndtest.c    Jitter: min=9.955ms, avg=28.194ms, max=132.168ms
 17:49:32.427      sndtest.c   Capture stream report:
 17:49:32.427      sndtest.c    Duration: 9s.980
 17:49:32.427      sndtest.c    Frame interval: min=0.003ms, max=132.144ms
 17:49:32.428      sndtest.c    Jitter: min=9.943ms, avg=28.187ms, max=132.141ms
 17:49:32.428      sndtest.c   Checking for clock drifts:
 17:49:32.428      sndtest.c    No clock drifts is detected
 17:49:32.429      sndtest.c  Test completed with some warnings
As the avg jitter is below 32 ms so that is fine but the max jitter is very high (132.168ms) so as suggested on that page 
I would like to ask what can be the problem. Do I need to change the jitter buffer settings according to device (openmoko FR).?

Further I tried using PCMU and Speex codecs but do not see any change in CPU load.

Any kind of suggestion will be greatly appeciated.


----- Original Message ----
From: Benny Prijono <bennylp at pjsip.org>
To: pjsip list <pjsip at lists.pjsip.org>
Sent: Monday, August 18, 2008 8:29:01 PM
Subject: Re: [pjsip] how to reduce CPU load and improve voice quality on mobile device FR

On Mon, Aug 18, 2008 at 6:51 AM, TARUN CHAPLOT <tarunchaplot at yahoo.com> wrote:


We are having a problem with running PJSIP on the neo freerunner, and have tried a
 variety of solutions to fix this but still not successful.   The setup
 that we are using is PJSIP on a Mac with OSX, and PJSIP compiled for
openmoko.I compiled PJSIP for openmoko by setting the env using command
 source /usr/local/openmoko/arm/setup-env
and ./configure --host=arm-angstrom-linux-gnueabi.

First thing first, what pjsip version?

 When we run PJSIP between the Mac and Openmoko, we are encountering  problems. 
The  problem is that the sound quality is very bad. When we speak
 into the Mac, the sound coming from the Openmoko comes out in stutters
(on and off every half second). It is also full of static.  
When we try a VOIP call directly from mac to mac, it works and sounds fine.  

If you haven't seen this, perhaps you can follow the checklists in https://trac.pjsip.org/repos/wiki/sound-problems, and find out what the exact problem is.
I looked at the CPU load and found that it is almost 80% on freerunner and 25 % on Mac OS X.
I have tried with different codecs e.g. speex ,PCMA and GSM.

Please advise me that how can I reduce the CPU load. I have followed the following http://trac.pjsip.org/repos/wiki/FAQ#cpu but 
no improvement.

Now that's surprising. You *should* see significant difference in CPU usage between Speex and PCMU. If not, then that probably suggests that the problem is elsewhere.


Thanks in advance.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20080818/cedd93e1/attachment.html 

More information about the pjsip mailing list