• David Barker's avatar
    Harmonize superres + loop-restoration + lf-across-tiles · 1fee28bd
    David Barker authored
    Properly support loopfiltering-across-tiles in combination with
    superres and/or loop-restoration:
    
    Upscale one tile column at a time, rather than doing the whole
    frame at once. This allows us to correctly support the loop filter
    across tiles flag, by temporarily extending the left/right boundaries
    of each tile column to avoid sampling from adjacent tiles.
    
    This code is also reused by striped-loop-restoration, when upscaling the
    deblocked context above/below each stripe. That way, we i) ensure
    that the upscaling is done consistently, and ii) fix the last remaining
    case where loop-restoration didn't respect the loop filter across tiles
    flag.
    
    This also makes it easy to perform extension of the left/right edges
    of the frame "as needed", so we don't need to extend the frame borders
    immediately after deblocking. This should give marginally better CDEF
    filtering for frames using superres.
    
    Change-Id: I28712a177853a20c9eb2993e740da8ba7c95a8cc
    1fee28bd
decodeframe.c 129 KB