• Ben Jackson's avatar
    lavc/vp6: Implement "slice" threading for VP6A decode · 39a3894a
    Ben Jackson authored
    The YUV channels of VP6 are encoded in a highly linear fashion which does
    not have any slice-like concept to thread.  The alpha channel of VP6A is
    fairly independent of the YUV and comprises 40% of the work.  This patch
    uses the THREAD_SLICE capability to split the YUV and A decodes into
    separate threads.
    
    Two bugs are fixed by splitting YUV and alpha state:
    - qscale_table from VP6A decode was for alpha channel instead of YUV
    - alpha channel filtering settings were overwritten by YUV header parse
    Signed-off-by: 's avatarBen Jackson <ben@ben.com>
    Signed-off-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
    39a3894a
vp6.c 23 KB