Closed Bug 1712595 Opened 5 months ago Closed 5 months ago

A/V sync is broken after switching media sink from AudioSink to DecodedStream

Categories

(Core :: Audio/Video: MediaStreamGraph, defect, P2)

defect

Tracking

()

RESOLVED FIXED
90 Branch
Tracking Status
firefox-esr78 --- unaffected
firefox88 --- unaffected
firefox89 --- unaffected
firefox90 --- fixed

People

(Reporter: alwu, Assigned: alwu)

References

(Regression, )

Details

(Keywords: regression)

Attachments

(1 file)

Fork from bug 1517199 comment 55. This bug is used for the issue "we incorrectly discard some audio frames when we swtich to the DecodedStream from AudioSink".

When we switch to the DecodedStream from AudioSink. AudioSink would store some frames in its own media queue before those audio frames get played. After AudioSink got shutdown, it doesn't push those frames back to the original audio queue.

Therefore, when DecodedStream starts, it try to retrieve audio data from the audio queue, but it doesn't know that there is already a gap between "the audio DecodedStream is going to play" and "the audio that AudioSink had played".

Blocks: 1517199
Summary: A/V sync is broken after capturing a stream on media elementF → A/V sync is broken after switching media sink from AudioSink to DecodedStream
Pushed by alwu@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/70c1e268265a
ensure AudioSink won't discard frames that are not played yet. r=padenot
Status: NEW → RESOLVED
Closed: 5 months ago
Resolution: --- → FIXED
Target Milestone: --- → 90 Branch
You need to log in before you can comment on or make changes to this bug.