x264enc encoding parameters

Tim Müller tim at centricular.com
Thu Mar 23 18:48:41 UTC 2017


On Thu, 2017-03-23 at 18:28 +0000, Ian Davidson wrote:

Hi David,


> I have a C program which records a video file from a camera.
> The video part of the pipeline (assuming that I have transcribed it
> correctly) is
> v4l2src ! queue ! videorate ! videoscale ! video/x-
> raw,format=(string)I420,width=720,height=576,framerate=(fraction)25/1
> ! queue ! videoconvert ! x264enc ! mp4mux ! filesink location=foo/bar
> The program works fine and the degree of compression achieved by the
> encoder is impressive. However, when there is significant movement in
> the image, there is a very obvious 'interleave effect' which remains
> visible for quite a while. I would be prepared to pay the cost of
> less aggressive compression/greater file size to improve the image
> quality.
> I have attempted to change the behaviour of the encoder, for example
> by setting bitrate to 6000, but I have not found anything which seems
> to make any difference.
> How should I go about getting better picture quality?

It might be helpful if you put up a couple-of-second-long sample mp4
somewhere on your website, so we can check out the exact problem.

What is the device that produces this? Is it an analogue video capture
device by any chance? Is it possible the device produces interlaced
video? You could try adding a 'deinterlace' element to see if it makes
a difference.

Cheers
 -Tim

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


More information about the gstreamer-devel mailing list