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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Aug 28, 2008 at 6:02 AM, TARUN CHAPLOT <tarunchaplot at yahoo.com>wrote:

>  Hi
> I have followed the suggestions given by Benny and have tried http://trac.pjsip.org/repos/wiki/FAQ#cpu
>
> all the steps properly. Now I am getting the good voice quality when the
> CPU utilization is about 80-90 % by pjsua.
> When I run other application on openmoko freerunner the CPU utilization by
> pjsua reduces to around 40% and the voice quality becomes very poor.
>
>
80-90% CPU utilization is really bad, I have strong feeling that something
is not right with your settings. Can you list what exactly did you do with
regard to the checklist in http://trac.pjsip.org/repos/wiki/FAQ#cpu?

Also
 - make sure optimization is on (the gcc -O2 flag)
 - disable floating point (with --disable-floating-point in configure, or
"#define PJ_HAS_FLOATING_POINT 0" in your config_site.h)

Also have a look at the PJMEDIA performance measurement results in
http://trac.pjsip.org/repos/wiki/PJMEDIA-MIPS, especially the ARM Linux and
PocketPC sections. From this, you can see how various features in pjmedia
affect the CPU usage.

Few things to highlight from the results:
 - *never ever* use iLBC for devices (as it takes between 200-600 percent of
CPU :D )
 - resampling with large filter is expensive, don't do it.
 - AEC is expensive, use echo suppressor/ES instead (there is a big
improvement in ES in the SVN trunk, see
http://blog.pjsip.org/2008/08/15/new-low-complexity-echo-suppressor-for-mobile-devices/
)
 - Speex is expensive

Cheers
 Benny
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20080828/c2e77fc8/attachment.html 


[Index of Archives]     [Asterisk Users]     [Asterisk App Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [Linux API]
  Powered by Linux