Pipeline performance problems
David Klasinc
bigwhale at lubica.net
Thu Mar 22 03:37:21 PDT 2012
Greetings,
I have some serious problems with gst pipelines. Originally it was a
python application and I thought the problem is with the my application,
but it turns out the problem is with gstreamer or at least with my pipeline.
Here's the pipeline:
$ time gst-launch -e videotestsrc pattern=snow num-buffers=250 ! \
video/x-raw-yuv,width=640,height=480,framerate=25/1 ! \
ffmpegcolorspace ! queue ! vp8enc ! queue ! webmmux ! filesink \
location="test.webm"
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Redistribute latency...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Got EOS from element "pipeline0".
Execution ended after 145388989110 ns.
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
Freeing pipeline ...
real 2m25.609s
user 2m26.189s
sys 0m0.136s
It takes over two minutes for this pipeline to complete which is rather
strange. If I use xvimagesink instead of filesink, then it takes a wee
bit over 10 seconds to complete. As expected.
So, what am I doing wrong? I tried with various settings for vp8enc and
webmmux, I tried different queue placement and the result is always more
or less the same. If I press CTRL-C after some time, waiting for EOS is
displayed for quite some time and the video is only a second or two
long. If resolution is increased, then everything takes much much longer.
I am running this on quad i5 with 4GB of RAM and there is almost no disk
activity during recording.
Kernel, OS and Gstreamer versions below:
Linux pond 3.2.0-19-generic #30-Ubuntu SMP Fri Mar 16 16:27:15 UTC 2012
x86_64 x86_64 x86_64 GNU/Linux
Ubuntu Precise Pangolin 12.04
gst-launch-0.10 version 0.10.36
GStreamer 0.10.36
https://launchpad.net/distros/ubuntu/+source/gstreamer0.10
Plugin Details:
Name: vp8
Description: VP8 plugin
Filename: /usr/lib/x86_64-linux-gnu/gstreamer-0.10/libgstvp8.so
Version: 0.10.22.3
License: LGPL
Source module: gst-plugins-bad
Source release date: 2012-02-09 14:42 (UTC)
Plugin Details:
Name: matroska
Description: Matroska and WebM stream handling
Filename: /usr/lib/x86_64-linux-gnu/gstreamer-0.10/libgstmatroska.so
Version: 0.10.31
License: LGPL
Source module: gst-plugins-good
Source release date: 2012-02-20
More information about the gstreamer-devel
mailing list