[FFmpeg-user] Creating ffv1 full-range and broadcast-range files

Robert Krüger krueger at lesspain.de
Tue May 13 12:48:15 CEST 2014


On Tue, May 13, 2014 at 11:52 AM, Andy Furniss <adf.lists at gmail.com> wrote:
> Robert Krüger wrote:
>>
>> On Fri, May 9, 2014 at 4:30 PM, Robert Krüger <krueger at lesspain.de>
>> wrote:
>>>
>>> On Fri, May 9, 2014 at 3:24 PM, Carl Eugen Hoyos <cehoyos at ag.or.at>
>>> wrote:
>>>>
>>>> Robert Krüger <krueger <at> lesspain.de> writes:
>>>>
>>>>>> Did you test what happens if you replace all occurrences of
>>>>>> AV_PIX_FMT_YUV420P in libavcodec/ffv1enc.c and
>>>>>> libavcodec/ffv1dec.c with AV_PIX_FMT_YUVJ420P ?
>>>>>
>>>>>
>>>>> I just tried and the resulting file checked with the histogram
>>>>> filter appears to have the correct (full-range) levels.
>>>>
>>>>
>>>> The more important question is if the output is bit-exact?
>>>
>>>
>>> I checked a more complex yuvj420p sample and the framemd5 output
>>> is identical, so I would say yes.
>>
>>
>> would you say, submitting a patch that just adds this pixel format
>> instead of replacing AV_PIX_FMT_YUV420P makes sense? The risk here
>> is only that I would probably not be qualified to deal with problems
>> that require a deeper understanding of what is going on there but so
>> far it looks like it could "just work".
>
>
> I also am not qualified in any way, but one thing to consider is
> sub-sampling positions.
>
> I don't know what ffmpeg does, so it may make no difference, but AIUI
> jpeg/mpeg1 420 is slightly different from >= mpeg2. Maybe it makes no
> difference, but I suppose there's a chance that it could if conversions
> are involved.

I compared the decoded frames' md5 hashes from the original mjpeg
stream and the ffv1 video (see earlier in this thread), so I would
assume that this does not seem to be a problem in this case.


More information about the ffmpeg-user mailing list