• Niklas Haas's avatar
    avfilter/vf_tinterlace: support full-range YUV · a69b0879
    Niklas Haas authored
    This filter, when used in the "pad" mode, currently makes the
    distinction between limited and full range solely by testing for YUVJ
    pixel formats at link setup time. This is deprecated and should be
    improved to perform the detection based on the per-frame metadata.
    
    In order to make this distinction based on color range metadata, which
    is only known at the time of filtering frames, for simplicity, we simply
    allocate two copies of the "black" frame - one for limited range and the
    other for full range metadata. This could be done more dynamically (e.g.
    as-needed or simply by blitting the appropriate pixel value directly),
    but this change is relatively simple and preserves the structure of the
    existing code.
    
    This commit actually fixes a bug in FATE - the new output is correct for
    the first time. The previous md5 ref was of a frame that incorrectly
    combined full-range pixel data with limited-range black fields. The
    corresponding result has been updated.
    Signed-off-by: 's avatarNiklas Haas <git@haasn.dev>
    a69b0879
tinterlace.h 2.46 KB