Optimising H264enc pipeline
buzzy
zygjys at gmail.com
Tue Mar 18 11:39:55 PDT 2014
Hello,
we need to optimize the pipeline which has socket as an input and outputs to
udp after H264 encoding. The following pipeline looks like this:
============================================================================
gst-launch-0.10 -v shmsrc socket-path=/tmp/socket do-timestamp=true
is-live=true ! \
queue leaky=2 max-size-buffers=2
! \
video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321,
red_mask=(int)65280, green_mask=(int)16711680, blue_mask=(int)-16777216,
pixel-aspect-ratio=(fraction)1/1, interlaced=(boolean)false',
width=(int)'1024', height=(int)'768', framerate=(fraction)'1/24'
! \
videoscale
! \
ffmpegcolorspace
! \
video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321,
red_mask=(int)65280, green_mask=(int)16711680, blue_mask=(int)-16777216,
pixel-aspect-ratio=(fraction)1/1, interlaced=(boolean)false',
width=(int)'1024', height=(int)'768', framerate=(fraction)'1/24'
! \
queue
! \
ffmpegcolorspace
! \
x264enc bitrate=1200 tune=zerolatency speed-preset=2 key-int-max=20
cabac=false ! \
'video/x-h264, profile=main'
! \
h264parse
! \
queue
! \
mpegtsmux alignment=7 ! chopmydata max-size=1316 min-size=1316
! \
udpsink clients=224.0.0.5:1234 auto-multicast=true sync=false
============================================================================
(The pipeline could not work out of the box because I've changed env/shell
variables to actual elements and didn't test it).
So, the problem is that this pipeline uses almost 50% of CPU and we wish to
reduce this number. The resolution, framerate and bitrate are already the
lowest values thats accepted. Output stream must be H264/MP4 video.
What could be the tips to reduce the CPU load? What options to use? Maybe
start using Gstreamer1.0?
Thank you!
--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/Optimising-H264enc-pipeline-tp4666006.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.
More information about the gstreamer-devel
mailing list