Opened 9 years ago
Closed 9 years ago
#5047 closed defect (fixed)
Regression in mp3 audio stream handling
Reported by: | fritsch | Owned by: | |
---|---|---|---|
Priority: | important | Component: | avformat |
Version: | git-master | Keywords: | mov mp3 regression |
Cc: | eml+ffmpeg@tupil.com | Blocked By: | |
Blocking: | Reproduced by developer: | yes | |
Analyzed by developer: | no |
Description
Summary of the bug:
ffplay produces a whole lot of
[mp3 @ 0x7f024000a7a0] Header missingB vq= 6678KB sq= 0B f=0/0 Last message repeated 47 times
[mp3 @ 0x7f024000a7a0] Header missingB vq= 6714KB sq= 0B f=0/0 Last message repeated 2 times
[mp3 @ 0x7f024000a7a0] Header missingB vq= 6709KB sq= 0B f=0/0 Last message repeated 43 times
[mp3 @ 0x7f024000a7a0] Header missingB vq= 6717KB sq= 0B f=0/0 Last message repeated 26 times
and audio is stuttering and frequently dropped / skipped.
This worked fine with ffmpeg 2.7.3.
You can download the sample here: http://fritsch.fruehberger.net/ffmpeg/denis-mp3-broken.mp4
Attachments (1)
Change History (11)
by , 9 years ago
Attachment: | denis-mp3-broken_cut.mp4 added |
---|
comment:1 by , 9 years ago
comment:2 by , 9 years ago
Component: | undetermined → avformat |
---|---|
Keywords: | mov regression added; header missing removed |
Priority: | normal → important |
Reproduced by developer: | set |
Status: | new → open |
Version: | 2.8.1 → git-master |
comment:3 by , 9 years ago
Cc: | added |
---|
follow-up: 5 comment:4 by , 9 years ago
fritsch@t440s:~/Desktop/FFmpeg$ git bisect bad
6ec688e1bc76dd93151cbca1c340162ae4b10d77 is the first bad commit
commit 6ec688e1bc76dd93151cbca1c340162ae4b10d77
Author: nu774 <honeycomb77@gmail.com>
Date: Fri May 9 23:05:42 2014 +0900
mp3: enable packed main_data decoding in MP4
14496-3 suggests packing main_data of MP3 that is usually scattered
into multiple frames due to bit reservoir.
However, after packing main_data into a access unit, bitrate index
in the MPEG audio frame header doesn't match with actual frame size.
In order to accept this, this patch removes unnecessary frame size
checking on mp3 decoder.
Also, mov demuxer was changed to use MP3 parser only on special cases
(QT MOV with specific sample description) to avoid re-packetizing.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
:040000 040000 857f53268fa5c5a994fe27c3b3beb91cae3e5320 43810c8e18abbccb618dd9057837de4d7a8e1fe3 M libavcodec
:040000 040000 2f6dfb3868f684ca94a575da5ef89176d1fd20e8 37eefdc905b277f7efd727a4529d8276840b970d M libavformat
:040000 040000 eac8ef6d85c3818ebec2d8c573a99eaa9c234ce4 f9f33d9633a9d44873f7842b2a1eadd84d1714e4 M tests
comment:5 by , 9 years ago
Replying to fritsch:
fritsch@t440s:~/Desktop/FFmpeg$ git bisect bad
6ec688e1bc76dd93151cbca1c340162ae4b10d77 is the first bad commit
See comment:1 for this information
comment:6 by , 9 years ago
I read comment:1 and will do this for future tickets.
Did you also mean for "future replies to this ticket"?
follow-up: 8 comment:7 by , 9 years ago
Okay - got it. Sorry for the noise. Btw. for the future - if you could write a bit more clearly on what the next step could be - then people like me with the ability to bisect and understand code could help you in a better way without doubling your work.
Reverting the named commit and fixing the hunks makes the mp3 work on latest master.
Do you want me to send a patch? Or do you already have one in the queue? Please also consider 2.8 branch - as we will ship kodi v16 2.8.x based.
comment:8 by , 9 years ago
Replying to fritsch:
Okay - got it. Sorry for the noise. Btw. for the future - if you could write a bit more clearly on what the next step could be - then people like me with the ability to bisect and understand code could help you in a better way without doubling your work.
Sorry, I don't understand: I asked for things that you should do when reporting future tickets, I added all information that I considered useful for this ticket, ie both the relevant version hashes for the regression and a link to a related ticket and the missing console output. Additionally I set the status of this ticket to "open - reproduced" meaning that no further information is required. I did not ask for a next step because there was no obvious next step. Note that all discussion related to fixing issues are meant to happen on the FFmpeg development mailing list, not on this bug tracker.
Reverting the named commit and fixing the hunks makes the mp3 work on latest master.
Thank you for confirming that my regression tests were correct.
Do you want me to send a patch?
If you can improve the existing heuristic please send a patch.
Or do you already have one in the queue?
A patch was discussed but it breaks other files:
http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/204316
comment:9 by , 9 years ago
Thanks for the link. Your colleagues on IRC showed me that sample, too.
To be honest: I did not find a single player in linux world that could play this dropbox linked sample (mplayer, totem, mpg123, ffplay 2.7.3, vlc) nothing but ffplay-master :-)
But all of them (minus ffplay-master) played the sample reported in this issue here.
comment:10 by , 9 years ago
Resolution: | → fixed |
---|---|
Status: | open → closed |
For future tickets: Please always provide your failing command line together with the complete, uncut console output, only test with ffplay if an issue is not reproducible with ffmpeg.
Regression since ae215e2b / 6ec688e1 - related to ticket #4938.