GNOME Bugzilla – Bug 647659
mp3parse / mpegaudioparse fails to detect VBRI header in mpeg1 mono and mpeg2 files
Last modified: 2011-04-13 15:13:39 UTC
Created attachment 185872 [details] A (cut) sample mp3 file with VBRI header When parsing a single channel mpeg 1 or mono/stereo mpeg2 mp3 file, mp3parse fails to detect VBRI header. VBRI header should always be at offset 0x20 regardless of mpegversion and channels. The offset currently varies between 0x09, 0x11 and 0x20 depending on mpegversion and channels. This is fine for Xing and Info headers but not for VBRI. Please see http://www.codeproject.com/audio/MPEGAudioInfo.asp which is referenced in gstmpegaudioparse.c. A (cut) sample mp3 file with VBRI header attached. gst_mp3parse_handle_first_frame:<mpegaudioparse0> Xing, LAME or VBRI header not found in first frame At http://www.getid3.org/samples/index.php?dir=/mp3/vbri you can find a mpeg2 VBRI file (VBRI_22S.mp3) that has VBRI at offset 0x20 as well. Detecting the header fails (partly) for the same reason with this one. I believe this applies to mpegaudioparse as well, not just mp3parse.
Moving to -good, since that's where mpegaudioparse lives now (and mp3parse in -ugly is basically only on life support).
commit 4250ff59943f23e2d783df906a2861dcb8130e52 Author: Sebastian Dröge <sebastian.droege@collabora.co.uk> Date: Wed Apr 13 17:11:26 2011 +0200 mpegaudioparse: The VBRI header is always at offset 0x20, independent of MPEG version Also clean up advancing of the data pointer a bit. Fixes bug #647659.