Closed Bug 1566066 Opened 7 years ago Closed 7 years ago

HTML5 audio tag with a very specific mp3 audio file doesn't work

Categories

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

68 Branch
defect

Tracking

()

RESOLVED FIXED
mozilla70
Tracking Status
firefox70 --- fixed

People

(Reporter: florian69666, Assigned: alwu)

References

Details

Attachments

(3 files)

Attached audio original failed.mp3

User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101 Firefox/68.0

Steps to reproduce:

<audio preload="auto" src="original failed.mp3" controls=""></audio>
Click on play button

Actual results:

In the console tab : Media resource "original failed.mp3" could not be decoded.

Expected results:

If I encode the file with same configuration, it begings to work fine.
This file works on all others browsers in HTML5 audio tag

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

FWIW, on beta I see:

Media resource https://bugzilla.mozilla.org/attachment.cgi?id=9078152 could not be decoded, error: Error Code: NS_ERROR_DOM_MEDIA_METADATA_ERR (0x806e0006)

in the console.

I can confirm this.

Status: UNCONFIRMED → NEW
Ever confirmed: true

Paul, any thoughts on who should take a look at this?

Flags: needinfo?(padenot)

I can't seem to find a Firefox version that can play it, and ffprobe complains a bit that there is lot of garbage. Alastor, do you have a minute to have a look?

Flags: needinfo?(padenot) → needinfo?(alwu)

As the file size in ID3 header is zero, it made mp3 parser think of that it hasn't parsed the header yet, which causes skipping 10 bytes (header size) again and again and then affects all the following parsing.

Assignee: nobody → alwu
Flags: needinfo?(alwu)
Priority: -- → P3

We found there is a mp3 where the size is empty in its ID3 header, which makes mp3 parser think of that we haven't parsed the header yet, and then skip unnecessary bytes again and again.

We should use Maybe to know whether we finish parsing the size or not.

Pushed by alwu@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/d626079f7a20 part1 : use Maybe to distinguish size 0 and uninitialized value. r=jya https://hg.mozilla.org/integration/autoland/rev/6b69fa403574 part2 : add 'empty_size.mp3' to playback test. r=jya
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla70
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: