Pipeline performance problems

David Klasinc bigwhale at lubica.net
Thu Mar 22 04:15:42 PDT 2012

On 03/22/2012 11:53 AM, Stefan Sauer wrote:

> ximagesink can't render webm, so how exactly is the xvimagesink based
> pipeline lokks like. Is it
> gst-launch -e videotestsrc pattern=snow num-buffers=250 ! \
> video/x-raw-yuv,width=640,height=480,framerate=25/1 ! \
> ffmpegcolorspace ! queue ! xvimagesink

This is the pipeline without filesink and no encoding, yes.

> For the first one it obviously is faster (no encoding). For the 2nd one
> it would be suprising. Please also note that testing an encoder with the
> snow pattern is ecpected to be slow, as there is hadly anything that can
> be compressed.

I can understand that with encoding it will be somewhat slower, but the 
performance drop is significant. Initial pipeline what I was working 
with used ximagesrc as a source and I had the same performance issues. I 
wanted to exclude ximagesrc that is why I was trying with videotest.

With ximagesrc everything is even worse. This is an example:

$ time gst-launch -e ximagesrc startx=0 starty=0 endx=1919 endy=1079\
num-buffers=250 use-damage=0 ! video/x-raw-rgb,framerate=25/1 ! \
videorate ! queue ! ffmpegcolorspace ! vp8enc ! queue ! webmmux !
\ queue ! filesink location="test.webm"

Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Redistribute latency...
^CCaught interrupt -- handling interrupt.
Interrupt: Stopping pipeline ...
EOS on shutdown enabled -- Forcing EOS on the pipeline
Waiting for EOS...
Got EOS from element "pipeline0".
EOS received - stopping pipeline...
Execution ended after 333779194456 ns.
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
Freeing pipeline ...

real	5m33.906s
user	5m32.701s
sys	0m0.564s

Times here are horrible. I waited for two minutes or so for gst to stop 
capturing then I pressed CTRL-C. After that, I was waiting for more than 
three minutes for EOS.

Any help will be greatly appreciated.


More information about the gstreamer-devel mailing list