[media] Maintain DecoderSelector state throughout decoder selection.
This CL changes DecoderStream to maintain an instance of DecoderSelector continually. This enabled DecoderSelector to maintain DecryptingDemuxerStream state and the blacklist internally. An immediate consequence is that DecoderSelector can now always try the full list of potential decoders each time that selection is triggered. This fixes the GPU->GPU changeType() transition, and provides a foundation to build GPU fallforward on top of. Another consequence is that fallback can occur more than once for a stream. It is no longer possible to loop forever doing fallbacks, so this is a robustness improvement in addition to being a requirement for changeType(). Bug: 877673 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: I76d1bed1c914e1ec58a6653d7200fbb67f70971a Reviewed-on: https://chromium-review.googlesource.com/1188978 Commit-Queue: Dan Sanders <sandersd@chromium.org> Reviewed-by:Dale Curtis <dalecurtis@chromium.org> Cr-Commit-Position: refs/heads/master@{#587908}
Showing
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Please register or sign in to comment