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

Carl Eugen Hoyos ceffmpeg at gmail.com
Wed Aug 17 23:39:12 EEST 2016


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".

Carl Eugen

More information about the ffmpeg-user mailing list