Closed Bug 1292047 Opened 8 years ago Closed 8 years ago

MDSM should enter dormant state when its reader is suspended

Categories

(Core :: Audio/Video: Playback, defect, P1)

defect

Tracking

()

RESOLVED WONTFIX

People

(Reporter: jwwang, Unassigned)

References

Details

The feature is added by bug 1278574. It is more user-friendly to show the buffering icon when MDSM doesn't have the resource to continue decoding. Here are some implementation details: 1. MediaFormatReader::RequestVideoData() rejects the promise with WAITING_FOR_DATA when it is suspended. 2. MDSM calls MediaDecoderReader::WaitForData() and enters buffering state. 3. MediaFormatReader resolves the waiting promise when it is resumed. We will be able to remove the new code path added to MDSM by bug 1278574. MDSM will run the code path (the same one as data gap encountered in MSE) that is well-tested.
Depends on: 1278574
Priority: -- → P1
Depends on: 1289016
Depends on: 1292055
Depends on: 1292453
Blocks: 1293202
No longer blocks: 1293202
Depends on: 1293202
Depends on: 1293572
It seems easier to enter/exit dormant when the reader is suspended/resumed. It also makes sense to employ dormant mechanism to handle reader suspend/resume because ReleaseMediaResources() is called when suspending a reader. We need to call ReadMetadata() to recover the reader which is exactly what the dormant mechanism does. https://hg.mozilla.org/mozilla-central/file/331c4166a3a2df2d3a037107addef5d85cdc31b5/dom/media/MediaDecoderReader.cpp#l164
Summary: MDSM should enter buffering state when its reader is suspended → MDSM should enter dormant state when its reader is suspended
No longer depends on: 1292453
Oops! We already have bug 1292453.
Status: NEW → RESOLVED
Closed: 8 years ago
No longer depends on: 1293202, 1293572
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.