Performance problem mixing 4 RTP streams

Tim Müller tim at centricular.com
Fri Jan 12 14:04:19 UTC 2018


On Fri, 2018-01-12 at 14:30 +0100, Fritz Emboli wrote:

Hi Fritz,

> can anybody tell me, why the following pipeline takes up to 70% CPU
> time on an embedded device?
> 
> gst-launch-1.0 -v \
> udpsrc port=10204 caps="application/x-rtp,clock-rate=8000,channels=1" 
> ! queue ! rtppcmadepay ! alawdec ! \
> liveadder name=mix latency=20000 ! audioconvert ! alsasink
> device="hw:0,0" sync=false \
> udpsrc port=10206 caps="application/x-rtp,clock-rate=8000,channels=1" 
> ! queue ! rtppcmadepay ! alawdec ! mix. \
> udpsrc port=10208 caps="application/x-rtp,clock-rate=8000,channels=1" 
> ! queue ! rtppcmadepay ! alawdec ! mix. \
> udpsrc port=10210 caps="application/x-rtp,clock-rate=8000,channels=1" 
> ! queue ! rtppcmadepay ! alawdec ! mix.

This doesn't look like something that should take huge amounts of CPU
at first glance.

What kind of embedded device is this with?

What GStreamer version are you using?

What do perf or perf top say where the cpu time is spent?

You might also want an rtpjitterbuffer latency=50 or somesuch after
each udpsrc.

Does your audiomixer use liborc and is it active on your cpu?

Cheers
 -Tim

-- 
Tim Müller, Centricular Ltd - http://www.centricular.com


More information about the gstreamer-devel mailing list