[FFmpeg-user] FFv1: Encode rgb48le?

Carl Eugen Hoyos cehoyos at ag.or.at
Sat Jun 9 07:52:33 CEST 2012

Peter B. <pb <at> das-werkstatt.com> writes:

> On 06/06/2012 08:39 PM, Carl Eugen Hoyos wrote:
> > Peter B. <pb <at> das-werkstatt.com> writes:
> >
> >> "Incompatible pixel format 'rgb48le' for codec 'ffv1', 
> >> auto-selecting format 'yuv420p16le'"
> > I consider it a bug that FFmpeg does not auto-select yuv444p16

Ticket #1426


> I must admit, that I don't understand the "0" in RGB 
> colorspaces (0RGB, RGB0)...

RGB24 is RGB with 8bit colour information per pixel, 
RGBA (and friends) is RGB24 plus eight bit transparency 
information. RGB0 is a 32bit representation of RGB24, 
there is no transparency information hidden there.
There are two reasons for RGB0's existence:
ffv1 (and other encoders) in the past claimed to support 
RGBA but actually supported only RGB0
It might be faster to process RGB0 than RGB24 (for 
some encoders)
(The naming is FFmpeg-specific afaik.)


> > 16bit rgb encoding is not as trivial as I hoped but certainly 
> > possible.
> Interesting to hear that.
> What is necessary in order to support it?

encode_rgb_frame() needs to support bits_per_raw_sample>8 
similar to encode_plane()

Carl Eugen

More information about the ffmpeg-user mailing list