• Derek Buitenhuis's avatar
    lavc/ffv1: Properly check that the 4th and 5th quant tables are zeroes · a2d35111
    Derek Buitenhuis authored
    Currently, the decoder checks the 128th value of the 4th quant table during
    while deriving the context on each sample, in order to speed itself up. This
    is due to relying on the behavior of FFmpeg's FFV1 encoder, in which if that
    value is zero, the entire 4th and 5th quant tables are assumed to be entirely
    zero.
    
    This does not match the FFV1 spec, which has no such restriction, and after
    some discussion, it was decided to fix FFmpeg to abide by the spec, rather
    than change the spec.
    
    We will now check whether the 4th and 5th quant tables are zero properly,
    by checking the 128th valye of both tables (which means they are zero due
    to the way they're coded in the bitstream).
    
    For further context, the FFV1 issue in question is located at:
    
        https://github.com/FFmpeg/FFV1/issues/169Signed-off-by: 's avatarDerek Buitenhuis <derek.buitenhuis@gmail.com>
    a2d35111
ffv1_template.c 1.79 KB