• Xiaohan Wang's avatar
    media: Support Decryptor in MediaService · ea55047f
    Xiaohan Wang authored
    This CL provides a way for a MediaService client to create a decryptor
    which is backed by a CDM or a CdmProxy, also running in the MediaService.
    
    Detailed changes:
    - Add CreateDecryptor() in media::mojom::InterfaceFactory
    - Plumb CreateDecryptor() through multiple layers to reach
      InterfaceFactoryImpl in MediaService
    - In InterfaceFactoryImpl, use the |cdm_id| to find the CdmContextRef,
      and then if a Decryptor is supported, create a MojoDecryptorService.
    - Add a dummy D3D11Decryptor implementation.
    - Update ClearKeyCdmProxy to support Decryptor.
    - Add MediaServiceTest to test this path.
    
    Bug: 806018
    Test: media_service_unittests updated.
    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: I0eba8aef333cb55ad5180ce1a401f3384c95c9c8
    Reviewed-on: https://chromium-review.googlesource.com/1041660Reviewed-by: default avatarDaniel Cheng <dcheng@chromium.org>
    Reviewed-by: default avatarFrank Liberato <liberato@chromium.org>
    Commit-Queue: Xiaohan Wang <xhwang@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#556946}
    ea55047f
media_interface_proxy.h 5.59 KB