Open Bug 1842375 Opened 1 year ago Updated 1 year ago

H264 playback audio desync

Categories

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

Firefox 115
Unspecified
All
defect

Tracking

()

REOPENED
Tracking Status
firefox-esr102 --- unaffected
firefox-esr115 --- affected
firefox115 --- wontfix
firefox116 --- wontfix
firefox117 --- wontfix
firefox118 --- affected

People

(Reporter: riku, Assigned: padenot, NeedInfo)

References

(Regression)

Details

(Keywords: nightly-community, regression)

Attachments

(4 files)

Attached video demo.mp4 (deleted) —

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/115.0

Steps to reproduce:

Say I have an mp4 like this:
10 seconds of audio.
8 seconds of video, offset +2 seconds.
Both streams start at the same time.

This didn't happen before version 115 and doesn't seem to happen with other codecs like VP9 for example.

Actual results:

Video and audio both start at the same time, regardless of when they actually start in the file.

Expected results:

The video stream should be delayed until it begins.

Attached video demo.webm (deleted) —

Same demo but as a webm, no problem here.

The Bugbug bot thinks this bug should belong to the 'Core::Audio/Video: Playback' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.

Component: Untriaged → Audio/Video: Playback
Product: Firefox → Core

:padenot, since you are the author of the regressor, bug 1830206, could you take a look? Also, could you set the severity field?

For more information, please visit BugBot documentation.

Flags: needinfo?(padenot)

(In reply to Paul Adenot (:padenot) from comment #5)

Range is https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=a708c20c4e36970e5a9bb9b244a6865ad6bdcc92&tochange=928afb6ad2a5dc2f68d9d0b29181162aaac56866, likely regressor is bug 1817997.

Confirmed. (Sorry, I made a copy/paste mistake.)

Depends on D184225

Pushed by padenot@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/1a7c4231566f Update mp4parse-rust to 12142fda2ba0870. r=media-playback-reviewers,kinetik https://hg.mozilla.org/integration/autoland/rev/5a58ca98f84d mach vendor rust. r=kinetik
Status: NEW → RESOLVED
Closed: 1 year ago
Resolution: --- → FIXED
Target Milestone: --- → 117 Branch

The patch landed in nightly and beta is affected.
:padenot, is this bug important enough to require an uplift?

  • If yes, please nominate the patch for beta approval.
  • If no, please set status-firefox116 to wontfix.

For more information, please visit BugBot documentation.

Flags: needinfo?(padenot)

We'll let this ride the trains normally because we're releasing in 7 days, but we might want it in ESR, because it's a real regression.

Flags: needinfo?(padenot)

Comment on attachment 9345055 [details]
Bug 1842375 - Update mp4parse-rust to 12142fda2ba0870. r?#media-playback-reviewers

ESR Uplift Approval Request

  • If this is not a sec:{high,crit} bug, please state case for ESR consideration: Content breakage, severe audio/video desynchronization with otherwise valid media files
  • User impact if declined: Completely incorrect rendering, it's not possible to work around it, since the video files are already online.
  • Fix Landed on Version: 117
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): This is reverting the code to its previous behavior.
Attachment #9345055 - Flags: approval-mozilla-esr115?
Attachment #9345056 - Flags: approval-mozilla-esr115?
Flags: qe-verify+
QA Whiteboard: [qa-triaged]

This needs more work.

Status: RESOLVED → REOPENED
Resolution: FIXED → ---

https://pernos.co/debug/dMCdlYgSTbxji8hRKCAQkA/index.html#f{m[AXvA,pl8_,t[5Q,OhdZ_,f{e[AXvA,pl8_,s{afzAFYAAA,bAZY,uEbRuvQ,oEc0SJQ___/ shows that we don't have a moof parser (this file isn't fragmented), so we end up using a timescale of 15360 from the mdhd box instead of picking the correct timescale of 1000 from the mvhd box.

Matthew, do you have any pointer in the spec on what scale we should use here, so I can write a proper fix? The old code seemed to have the correct behaviour, so I guess I can just look at it.

Flags: needinfo?(kinetik)
Target Milestone: 117 Branch → ---
Attachment #9345055 - Flags: approval-mozilla-esr115?
Attachment #9345056 - Flags: approval-mozilla-esr115?
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: