When in-band changes are detected in video streams, playback will never attempt to switch back to hardware-acceleratedplayback.
Categories
(Core :: Audio/Video: Playback, defect)
Tracking
()
Tracking | Status | |
---|---|---|
firefox101 | --- | fixed |
People
(Reporter: Zaggy1024, Assigned: Zaggy1024)
References
(Regressed 1 open bug)
Details
Attachments
(2 files)
Due to the fact that MediaChangeMonitor caches the PDM that the PDMFactory created for it, as well as whatever PDM it detects later on is usable, if agnostic decoders do not fail to decode, it will never switch to hardware accelerated playback again.
For example, in a video where initially, hardware acceleration is supported, but then the codec configuration changes to an unsupported config for hardware, MediaChangeMonitor will set the PDM to the agnostic one. After that, if playback encounters another codec configuration that supports hardware playback, it will request a new decoder, but then reuse the same PDM.
Because hardware decoders reside in the GPU process, whereas agnostic ones reside in RDD, the cached PDM means that it will never change from the RDD RemoteDecoderModule, and will continue software decoding.
Unsure if this occurs on operating systems other than Windows, though it presumably does.
Fixes an issue where in-band changes in VP9 and AV1 would not switch to the hardware decoder if it supports the new config, since agnostic decoders would always support the decoded format.
Depends on D143559
Updated•2 years ago
|
Pushed by zaggy1024@gmail.com: https://hg.mozilla.org/integration/autoland/rev/c88e50b24ba5 Remove PDM caching from MediaChangeMonitor to allow config changes to switch between GPU and RDD process. r=alwu
Comment 3•2 years ago
|
||
Backed out for causing mochitest failures on test_eme_waitingforkey.html
Failure line(s): TEST-UNEXPECTED-FAIL | dom/media/test/test_eme_waitingforkey.html | Test timed out!
Allows encrypted video to initialize a decoder upon receiving a sample if it cannot be instantiated during initial decoder creation.
Depends on D143560
Fix is in Part 2 patch, clearing NI.
Pushed by zaggy1024@gmail.com: https://hg.mozilla.org/integration/autoland/rev/48393abd1116 Remove PDM caching from MediaChangeMonitor to allow config changes to switch between GPU and RDD process. r=alwu https://hg.mozilla.org/integration/autoland/rev/4ef2a297e3df Part 2 - Pass PDMFactory instance to MediaChangeMonitor to keep configuration set before the decoder is created. r=alwu
Comment 7•2 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/48393abd1116
https://hg.mozilla.org/mozilla-central/rev/4ef2a297e3df
Description
•