PJSIP Performance

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

 



Hi,


First of all, english is not my main language, so take care! =)

I'm having problems with PJMEDIA performance in my aplication while running
it in a OMAP35xx processor (ARM / ~600MHz).

The aplication send an RTP stream over the network whenever someone push a
button. The stream will be received in many devices(including the one that
is generating it) throught Multicast.

In the sender side:
I've created some (3) streams that should be avaible all the time the
program is running, so that the push button -> sound sequence is the fastest
possible. Each one send the RTP stream to a different multicast address.

In the receiver side:
There are at most 3 streams listening to one multicast address each.

The sender signals the receiver each time the button is pushed, so I can
open/resume the stream processing.

But running 6 streams is a bit too much for the processor.

When I run the application with gprof enabled, I see get_frame and put_frame
as the great consumers of CPU power.

I have one conference brigde, so that I can connect wav_players and
recorders, so my first solution was to try to disconnect everything from the
conference brigde.
I tried disconnecting the snd_port also, but no difference in performance
with this step. I've searched a bit and found pjmedia_aud_stream_stop
and pjmedia_aud_stream_start, but stopping and starting when needed don't
make the sound come back.

(How) am I supposed to start/stop an pjmedia_aud_stream? Am I missing
something?

Every thing else is works like a charm! Great library, unfortunately I want
to do some unusual things with it.  Is there a better way to accomplish the
same behaviour that I am missing?

Thanks,
Fernando
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20100218/8fe42468/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