• Chih-Yu Huang's avatar
    Reland "media/gpu: make VideoDecoderPipeline select VD implementation during Initialize()." · fc163808
    Chih-Yu Huang authored
    This reverts commit a1d47a7f.
    
    Reason for revert: Fix build failure with target_os="chromeos"
    
    Original change's description:
    > Revert "media/gpu: make VideoDecoderPipeline select VD implementation during Initialize()."
    >
    > This reverts commit cae62756.
    >
    > Reason for revert: Breaks build with target_os="chromeos"
    >
    > FAILED: libmedia_gpu.so libmedia_gpu.so.TOC
    > python "../../build/toolchain/gcc_solink_wrapper.py" --readelf="readelf" --nm="nm" --sofile="./libmedia_gpu.so" --tocfile="./libmedia_gpu.so.TOC" --output="./libmedia_gpu.so" -- ../../third_party/llvm-build/Release+Asserts/bin/clang++ -shared -Wl,-soname="libmedia_gpu.so" -Wl,--fatal-warnings -fPIC -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,defs -Wl,--as-needed -fuse-ld=lld -Wl,--color-diagnostics -m64 -Werror -Wl,--gdb-index -nostdlib++ --sysroot=../../build/linux/debian_sid_amd64-sysroot -L../../build/linux/debian_sid_amd64-sysroot/usr/local/lib/x86_64-linux-gnu -L../../build/linux/debian_sid_amd64-sysroot/lib/x86_64-linux-gnu -L../../build/linux/debian_sid_amd64-sysroot/usr/lib/x86_64-linux-gnu -Wl,-rpath=\$ORIGIN -Wl,-rpath=\$ORIGIN -o "./libmedia_gpu.so" @"./libmedia_gpu.so.rsp"
    > ld.lld: error: undefined symbol: media::VideoDecoderPipeline::Create(scoped_refptr<base::SequencedTaskRunner>, std::__Cr::unique_ptr<media::DmabufVideoFramePool, std::__Cr::default_delete<media::DmabufVideoFramePool> >, std::__Cr::unique_ptr<media::VideoFrameConverter, std::__Cr::default_delete<media::VideoFrameConverter> >)
    > >>> referenced by chromeos_video_decoder_factory.cc:54 (../../media/gpu/chromeos/chromeos_video_decoder_factory.cc:54)
    > >>>               obj/media/gpu/chromeos/chromeos/chromeos_video_decoder_factory.o:(media::ChromeosVideoDecoderFactory::Create(scoped_refptr<base::SequencedTaskRunner>, std::__Cr::unique_ptr<media::DmabufVideoFramePool, std::__Cr::default_delete<media::DmabufVideoFramePool> >, std::__Cr::unique_ptr<media::VideoFrameConverter, std::__Cr::default_delete<media::VideoFrameConverter> >))
    > clang: error: linker command failed with exit code 1 (use -v to see invocation)
    >
    > Original change's description:
    > > media/gpu: make VideoDecoderPipeline select VD implementation during Initialize().
    > >
    > > Some devices select the video decoder implementation by the video
    > > configuration (e.g. codec). VideoDecoderPipeline needs to select a
    > > proper video decoder in Initialize() when a video configuration is
    > > specified.
    > >
    > > This CL implements the mechanism of selecting VD at Initialize()
    > > instead of Create() method.
    > >
    > > BUG=chromium:952730
    > > TEST=Run video_decode_accelerator_tests on Kevin and Eve
    > >
    > > Change-Id: I76077df0bc1e1eeae730e618a62c6e1049e02500
    > > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1708693
    > > Reviewed-by: David Staessens <dstaessens@chromium.org>
    > > Reviewed-by: Alexandre Courbot <acourbot@chromium.org>
    > > Reviewed-by: Hirokazu Honda <hiroh@chromium.org>
    > > Commit-Queue: Chih-Yu Huang <akahuang@chromium.org>
    > > Cr-Commit-Position: refs/heads/master@{#691946}
    >
    > TBR=deanliao@chromium.org,akahuang@chromium.org,hiroh@chromium.org,acourbot@chromium.org,dstaessens@chromium.org
    >
    > Change-Id: I2edea554734a766fce1d61943297547159c8cbeb
    > No-Presubmit: true
    > No-Tree-Checks: true
    > No-Try: true
    > Bug: chromium:952730
    > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1778048
    > Reviewed-by: Elly Fong-Jones <ellyjones@chromium.org>
    > Reviewed-by: Vladislav Kuzkokov <vkuzkokov@chromium.org>
    > Commit-Queue: Vladislav Kuzkokov <vkuzkokov@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#692035}
    
    TBR=ellyjones@chromium.org,deanliao@chromium.org,vkuzkokov@chromium.org,akahuang@chromium.org,hiroh@chromium.org,acourbot@chromium.org,dstaessens@chromium.org
    
    Bug: chromium:952730
    Test: Run `autoninja media/gpu` with gn gargs: target_os="chromeos"
    Change-Id: I34405281dbe106e3182456da154e3ceafd19f9b2
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1781126Reviewed-by: default avatarChih-Yu Huang <akahuang@chromium.org>
    Reviewed-by: default avatarAlexandre Courbot <acourbot@chromium.org>
    Commit-Queue: Chih-Yu Huang <akahuang@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#692405}
    fc163808
vaapi_video_decoder.cc 24.3 KB