• tiago.vignatti@intel.com's avatar
    media: Add MediaOzonePlatform support · 5e658c28
    tiago.vignatti@intel.com authored
    This CL adds MediaOzonePlatform, a new Ozone component for abstracting media
    and related. In particular it adds CreateVideoDecodeAccelerator method so Ozone
    implementations can use that for abstracting video decoding acceleration (i.e.
    GPU based video decoding). Eventually MediaOzonePlatform will be used as well
    for many windowing systems abstractions related to media, e.g. video encode,
    audio, etc. We will add support for these others as needed.
    
    Media platform is called and created on demand whenever a video playback is set
    to play. Different than ui::OzonePlatform methods, the one added in here is 
    non-pure virtual so the implementations can decide themselves whether a video 
    implementation is actually wanted, based on its hardware capabilities.
    
    This work is aimed at internal implementations like Ozone-DRI, Ozone-test but
    also for externals like Ozone-Wayland. Different targets like Chromium Browser,
    Chrome OS, ChromeCast and others can now take advantage of it.
    
    BUG=380884
    TEST=manually on Ozone-Wayland, using:
    
     $ export GYP_DEFINES='chromeos=0 use_ozone=1 proprietary_codecs=1 ffmpeg_branding=Chrome'
     $ ninja -j16 -C out/Release content
    
    and to run:
    
     ~/git/chromium/src/out/Debug$ ./chrome --no-sandbox --user-data-dir=/tmp/chrome --ignore-gpu-blacklist ../../third_party/WebKit/PerformanceTests/resources/bear-1280x720.mp4  --vmodule=*/ozone/ui*=3 --v=0
    
    additionally, in Release builds you can start chrome with --disable-accelerated-video-decode to compare the results.
    
    Review URL: https://codereview.chromium.org/269673005
    
    git-svn-id: svn://svn.chromium.org/chrome/trunk/src@276552 0039d316-1c4b-4281-b951-d872f2087c98
    5e658c28
media_ozone_platform.h 1.45 KB