Closed Bug 1505972 Opened 1 year ago Closed 1 year ago

MDSM fails to seamless looping if media sink has been completed before MDSM enable looping

Categories

(Core :: Audio/Video: Playback, enhancement, P3)

enhancement

Tracking

()

RESOLVED FIXED
mozilla65
Tracking Status
firefox65 --- fixed

People

(Reporter: alwu, Assigned: alwu)

References

(Blocks 1 open bug)

Details

Attachments

(1 file, 1 obsolete file)

If media sink has been completed before we enable looping for MSDN, MDSM will fail to seamless looping.

The reason is that the state will be changed to `CompletedState` immediately after entering `LoopingDecodingState` [1], so we need to reopen sink again.

[1] https://searchfox.org/mozilla-central/rev/17f55aee76b7c4610a974cffd3453454e0c8de7b/dom/media/MediaDecoderStateMachine.cpp#2498
When state changes to 'LoopingDecodingState', we need to make sure the media sink is still working.
Therefore, we have to reopen media sink if it has already been completed.
Marking P2 for now due to active work, awaiting priority on bug 1498733.
Rank: 19
Priority: -- → P2
Priority: P2 → P3
When entering 'loopingDecoding' state, we should ensure we would continue to decoding even if
the audio decoding has finished before.
Attachment #9023826 - Attachment is obsolete: true
Pushed by alwu@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/a773a42f4c00
request audio data when entering 'loopingDecoding' state if decoding has ended r=jya
https://hg.mozilla.org/mozilla-central/rev/a773a42f4c00
Status: NEW → RESOLVED
Closed: 1 year ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla65
No longer depends on: seamless-looping
Regressions: 1551050
Regressions: 1532495
You need to log in before you can comment on or make changes to this bug.