[FFmpeg-user] Which videoc codec gives best compression for screen recording?

Carl Eugen Hoyos cehoyos at ag.or.at
Thu Nov 13 12:33:00 CET 2014


Tobias Rapp <t.rapp <at> noa-audio.com> writes:

> > Command line and complete, uncut console output 
> > missing / which encoders did you already test?
> 
> I tested FLV and MP4, see attached log.

Neither are encoders imo but see below.

>     Stream #0:0: Video: flv1 (flv) ([2][0][0][0] / 0x0002), yuv420p

>     Stream #0:0: Video: mpeg4 ( [0][0][0] / 0x0020), yuv420p

I am surprised now:
You wrote originally "I want to do screen recording 
[...] but the output file size is quite high".
I was assuming that you meant lossless encoding in 
the rgb colourspace. For lossy encoding (flv1 and 
mpeg4 only support lossy encoding), you can get a 
smaller filesize by either specifying a lower bitrate 
or requesting a higher constant quantizer.
As you already mentioned, the best lossy encoder 
(with acceptable encoding speed) is x264.

If you want lossless encoding that keeps the original 
colourspace (rgb), please test png, ffv1, (ff)huffyuv 
and flashsv2. Then also test x264rgb with the lossless 
option. (The filesizes may be very significantly 
higher in all these cases than what you saw with the 
lossy encodings you tested, this is not unexpected. 
The files may be smaller depending on what you 
record.)

Carl Eugen



More information about the ffmpeg-user mailing list