[FFmpeg-user] FFV1/rgb48le issue: ffmpeg automatically chooses gbrp16le to decode an rgb48le FFV1 file.

Paul B Mahol onemda at gmail.com
Wed Aug 17 23:58:32 EEST 2016

On 8/17/16, Carl Eugen Hoyos <ceffmpeg at gmail.com> wrote:
> Hi!
> 2016-08-17 18:23 GMT+02:00 Kieran O Leary <kieran.o.leary at gmail.com>:
>> Would it be correct to state that 16-bit FFV1 RGB will always be
>> gbr16
> I don't think this is correct:
> FFV1 allows to encode 16 bpc RGB data. FFmpeg accepts its internal
> pix_fmts rgb48 and gbrp16 for encoding (this can be rgb48le or rgb48be
> depending on your hardware) and provides gbrp16 (again, this can be
> either gbrp16le or gbrp16be) output on decoding. I believe this is not
> very likely to change.
> Another library (or player) supporting ffv1 decoding may provide a packed
> rgb format (not necessarily rgb) on decoding or another format that also
> allows to represent 16bpc rgb.
>> even if the source is rgb48?
> This part of your question makes me a little nervous:
> ffv1 neither stores "rgb48" nor "gbrp16", it cannot know the "source"
> format,
> it does support 16bit per component though and it does allow to distinguish
> between "yuv" and "rgb".

rgb48 is packed version of gbrp16

gbrp16 is planar version of rgb48.

They have same information but in different memory layout.

More information about the ffmpeg-user mailing list