• posciak's avatar
    Reland: Add accelerated video decoder interface, VP8 and H.264 implementations... · 3c09b9b2
    posciak authored
    Reland: Add accelerated video decoder interface, VP8 and H.264 implementations and hook up to V4L2SVDA.
    
    This is a reland as the previous CL has an issue with BUILD.gn and failed gn build.
    
    An AcceleratedVideoDecoder is a video decoder that requires support from an
    external accelerator (typically a hardware accelerator) to partially
    offload the decode process after parsing stream headers, and performing
    reference frame and state management.
    
    In this design, the hardware-independent decoder implementation interfaces
    with a HW-specific Accelerator to offload last stages of the decode process.
    
    Add the interface for AcceleratedVideoDecoder, decoders for VP8 and H264,
    V4L2-specific Accelerators for VP8 and H264 and a common accelerator/client
    class for V4L2.
    
    TEST=vdatest VP8/H264, mp4 local video playback, apprtc decode
    BUG=chrome-os-partner:33728
    TBR=wuchengli@chromium.org,kcwu@chromium.org,owenlin@chromium.org,xhwang@chromium.org,scherkus@chromium.org,dalecurtis@chromium.org
    
    Review URL: https://codereview.chromium.org/813693006
    
    Cr-Commit-Position: refs/heads/master@{#311464}
    3c09b9b2
vaapi_h264_decoder.cc 55 KB