• Dan Sanders's avatar
    [media] Add interface for VDAs to Decode() media::DecoderBuffers. · 4596c802
    Dan Sanders authored
    Using DecoderBuffer removes the need to provided SharedMemoryHandles in
    cases that SharedMemory is not already allocated (in particular, when
    VDAs are used through MojoVideoDecoder+VdaVideoDecoder). Since
    base::SharedMemory is not an interface, a new type is required, and
    DecoderBuffer already implements a suitable interface for this use case.
    
    This CL adds:
      - A VideoDecodeAccelerator::Decode() overload for decoding
        DecoderBuffers, which VDAs may optionally implement.
        Note that VdaVideoDecoder will require this, and therefore all VDAs
        will be updated to support DecoderBuffers over time.
      - Support for SHM in DecoderBuffer. This eases the transition by
        allowing BitstreamBuffers to be easily converted to equivalent
        DecoderBuffers.
      - An implementation of the new VideoDecodeAccelerator::Decode()
        overload in VTVideoDecodeAccelerator.
      - Calling the new overload from VdaVideoDecoder.
    
    Bug: 522298
    Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel
    Change-Id: Ib932c3524b37e339f592b150685937ea94d4199d
    Reviewed-on: https://chromium-review.googlesource.com/1015965Reviewed-by: default avatarPawel Osciak <posciak@chromium.org>
    Reviewed-by: default avatarDale Curtis <dalecurtis@chromium.org>
    Commit-Queue: Dan Sanders <sandersd@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#553364}
    4596c802
unaligned_shared_memory_unittest.cc 2.44 KB