[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: I030c9746c30e0339001ae1734d8c91d2b9bf2de0 Reviewed-on: https://chromium-review.googlesource.com/1200223Reviewed-by:Dale Curtis <dalecurtis@chromium.org> Commit-Queue: Dan Sanders <sandersd@chromium.org> Cr-Commit-Position: refs/heads/master@{#588217}
Showing
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Please register or sign in to comment