Hi, 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. _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
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 _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Hi Tim!
> gst-launch-1.0 -v \ Yes, i thought so.
It is an i.MX287 (454MHz Arm926EJ-S core with 16KB/32KB Cache)
1.12.0
Had to install perf first. perf top is not usable. The top 20 lines of "perf report": # Samples: 268K of event 'cpu-clock' # Event count (approx.): 67059250000 # # Overhead Command Shared Object Symbol # ........ .............. .............................. ............................................... # 9.23% gst-launch-1.0 [kernel.kallsyms] [k] _raw_spin_unlock_irq 4.28% gst-launch-1.0 [kernel.kallsyms] [k] _raw_spin_unlock_irqrestore 3.05% gst-launch-1.0 [kernel.kallsyms] [k] lock_acquire 1.47% gst-launch-1.0 [kernel.kallsyms] [k] _raw_read_unlock_irq 1.44% gst-launch-1.0 [kernel.kallsyms] [k] ktime_get_ts 1.38% gst-launch-1.0 libpthread-2.18.so [.] pthread_getspecific 1.21% gst-launch-1.0 libglib-2.0.so.0.5200.1 [.] g_slice_alloc 1.16% gst-launch-1.0 libgobject-2.0.so.0.5200.1 [.] g_type_check_instance_is_fundamentally_a 1.10% gst-launch-1.0 libglib-2.0.so.0.5200.1 [.] g_slice_free1 1.08% gst-launch-1.0 libglib-2.0.so.0.5200.1 [.] g_private_get 0.95% gst-launch-1.0 libglib-2.0.so.0.5200.1 [.] g_mutex_lock 0.87% gst-launch-1.0 [kernel.kallsyms] [k] __do_softirq 0.78% gst-launch-1.0 libglib-2.0.so.0.5200.1 [.] g_datalist_get_flags 0.77% gst-launch-1.0 [kernel.kallsyms] [k] lock_release 0.70% gst-launch-1.0 libglib-2.0.so.0.5200.1 [.] g_mutex_unlock 0.68% gst-launch-1.0 libgobject-2.0.so.0.5200.1 [.] g_type_check_instance_is_a 0.67% gst-launch-1.0 libglib-2.0.so.0.5200.1 [.] 0x0009461c 0.64% gst-launch-1.0 [kernel.kallsyms] [k] vector_swi 0.64% gst-launch-1.0 libgstreamer-1.0.so.0.1200.0 [.] gst_mini_object_unlock 0.64% gst-launch-1.0 libgobject-2.0.so.0.5200.1 [.] g_type_is_a 0.60% gst-launch-1.0 libc-2.18.so [.] syscall 0.59% gst-launch-1.0 libglib-2.0.so.0.5200.1 [.] 0x00093828 0.58% gst-launch-1.0 libgstreamer-1.0.so.0.1200.0 [.] gst_pad_push 0.58% gst-launch-1.0 libgstreamer-1.0.so.0.1200.0 [.] gst_mini_object_lock 0.56% gst-launch-1.0 libgstbadbase-1.0.so.0.1200.0 [.] gst_aggregator_iterate_sinkpads 0.52% gst-launch-1.0 libgstreamer-1.0.so.0.1200.0 [.] gst_buffer_get_sizes_range 0.52% gst-launch-1.0 [kernel.kallsyms] [k] _raw_read_unlock_irqrestore 0.50% gst-launch-1.0 libglib-2.0.so.0.5200.1 [.] g_atomic_pointer_get 0.50% gst-launch-1.0 libgstreamer-1.0.so.0.1200.0 [.] gst_buffer_map_range 0.50% gst-launch-1.0 libgobject-2.0.so.0.5200.1 [.] g_object_ref 0.50% gst-launch-1.0 libgstreamer-1.0.so.0.1200.0 [.] gst_mini_object_unref 0.49% gst-launch-1.0 libglib-2.0.so.0.5200.1 [.] g_slice_free_chain_with_offset 0.48% gst-launch-1.0 libpthread-2.18.so [.] pthread_mutex_lock 0.48% gst-launch-1.0 libgobject-2.0.so.0.5200.1 [.] g_object_unref 0.45% gst-launch-1.0 [kernel.kallsyms] [k] do_sys_poll 0.44% gst-launch-1.0 [kernel.kallsyms] [k] __copy_from_user 0.42% gst-launch-1.0 libgstaudio-1.0.so.0.1200.0 [.] gst_audio_buffer_clip 0.42% gst-launch-1.0 libgstreamer-1.0.so.0.1200.0 [.] gst_iterator_next 0.42% gst-launch-1.0 libgstreamer-1.0.so.0.1200.0 [.] gst_object_unref 0.39% gst-launch-1.0 libgstreamer-1.0.so.0.1200.0 [.] gst_memory_map 0.39% gst-launch-1.0 libglib-2.0.so.0.5200.1 [.] g_atomic_int_get 0.38% gst-launch-1.0 libgobject-2.0.so.0.5200.1 [.] qsort@plt
Greetings Fritz _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Administrator
|
In reply to this post by Fritz Emboli
Is it an issue with single threaded mixing?
-- Sent from: http://gstreamer-devel.966125.n4.nabble.com/ _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Free forum by Nabble | Edit this page |