• Dale Curtis's avatar
    Move encrypted decoder setup outside of DecoderSelector. · f0451434
    Dale Curtis authored
    This removes the hardcoded setup of the decrypting audio
    and video decoders out of the DecoderSelector and into the
    standard decoder list.
    
    This functions similarly to the old behavior, but instead of
    knowing except for the following differences:
    - All decoders are checked for encrypted support first now.
    - If no decoder succeeds in initialization with an encrypted
    configuration, we'll try creating a DecryptingDemuxerStream,
    if this succeeds we'll check the decoder list again, if it
    fails, we'll abort as before.
    
    Mainly this implies that falling back to decrypt-only will
    take slightly longer than before. This also adds back support
    for EME to use GpuMemoryBuffers.
    
    BUG=801245
    TEST=updated lots of unittests...
    
    Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
    Change-Id: I578809aeebaa59d81f65a5be2f2f1f76713d0f68
    Reviewed-on: https://chromium-review.googlesource.com/952207Reviewed-by: default avatarXiaohan Wang <xhwang@chromium.org>
    Commit-Queue: Dale Curtis <dalecurtis@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#542323}
    f0451434
default_renderer_factory.cc 7.8 KB