mochitest dom/media/test/test_playback.html fails to decode spacestorm-1000Hz-100ms.ogg on RDD
Categories
(Core :: Audio/Video: Playback, defect, P2)
Tracking
()
Tracking | Status | |
---|---|---|
firefox68 | --- | fixed |
People
(Reporter: mjf, Assigned: mjf)
References
(Blocks 1 open bug)
Details
Attachments
(2 files)
9.29 KB,
patch
|
Details | Diff | Splinter Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review |
When enabling Vorbis decoding on the RDD process, one file in test_playback.html fails: spacestorm-1000Hz-100ms.ogg. In checkEnded[1], checkMetadata fails with a reported duration of 0.256 and the test is looking for 0.099.
I tried loading spacestorm-1000Hz-100ms.ogg into Audacity on macOS, but Audacity fails to open the file. I trimmed small-shot.ogg down to 0.099 length, and it reports the correct length under RDD, so it seems to be specific to spacestorm-1000Hz-100ms.ogg.
The patch to limit the mochitest to only spacestorm-1000Hz-100ms.ogg and pref-on Vorbis on RDD is included for easier debugging.
[1] https://searchfox.org/mozilla-central/source/dom/media/test/test_playback.html#62
Assignee | ||
Comment 1•6 years ago
|
||
After some debugging w/ rr, in MediaDecoderStateMachine::UpdatePlaybackPositionPeriodically the call to AudioEndTime() here[1] returns different values depending on whether the decoding the file spacestorm-1000Hz-100ms.ogg is happening on the RDD process or the content process.
Under RDD process, AudioEndTime() returns 256000.
Under content process, AudioEndTime() returns 99000, as the test expects.
[1] https://searchfox.org/mozilla-central/source/dom/media/MediaDecoderStateMachine.cpp#3423
Adding a priority to remove from triage queue. Please adjust as appropriate.
Assignee | ||
Comment 3•6 years ago
|
||
More progress - VorbisDataDecoder::ProcessDecode is getting different frame counts here[1].
Under RDD process, vorbis_synthesis_pcmout returns 256 frames on the second call.
Under content process, vorbis_synthesis_pcmout returns 99 frames on the second call.
[1] https://searchfox.org/mozilla-central/source/dom/media/platforms/agnostic/VorbisDecoder.cpp#178
Assignee | ||
Comment 4•6 years ago
|
||
More progress - the difference is because VorbisDataDecoder::ProcessDecode is always sending a false here[1]. I believe we're missing initializing mEOS on MediaRawData.
[1] https://searchfox.org/mozilla-central/source/dom/media/platforms/agnostic/VorbisDecoder.cpp#158
Assignee | ||
Updated•6 years ago
|
Assignee | ||
Comment 5•6 years ago
|
||
Lack of mEOS for decoding Vorbis on RDD was causing a mochitest failure
with file spacestorm-1000Hz-100ms.ogg in dom/media/test/test_playback.html.
The symptom was an incorrect frame count here[1].
Comment 7•6 years ago
|
||
bugherder |
Description
•