You've already forked FFmpeg
mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-08-10 06:10:52 +02:00
mp3dec: fix reading the Xing tag
The quality scale field is only supposed to be present if the fourth bit is set. In practice, lame always sets it, but other tools might not. CC:libav-stable@libav.org
This commit is contained in:
@@ -36,6 +36,7 @@
|
|||||||
#define XING_FLAG_FRAMES 0x01
|
#define XING_FLAG_FRAMES 0x01
|
||||||
#define XING_FLAG_SIZE 0x02
|
#define XING_FLAG_SIZE 0x02
|
||||||
#define XING_FLAG_TOC 0x04
|
#define XING_FLAG_TOC 0x04
|
||||||
|
#define XING_FLAC_QSCALE 0x08
|
||||||
|
|
||||||
#define XING_TOC_COUNT 100
|
#define XING_TOC_COUNT 100
|
||||||
|
|
||||||
@@ -165,7 +166,8 @@ static void mp3_parse_info_tag(AVFormatContext *s, AVStream *st,
|
|||||||
st->time_base));
|
st->time_base));
|
||||||
|
|
||||||
/* VBR quality */
|
/* VBR quality */
|
||||||
avio_rb32(s->pb);
|
if (v & XING_FLAC_QSCALE)
|
||||||
|
avio_rb32(s->pb);
|
||||||
|
|
||||||
/* Encoder short version string */
|
/* Encoder short version string */
|
||||||
memset(version, 0, sizeof(version));
|
memset(version, 0, sizeof(version));
|
||||||
|
Reference in New Issue
Block a user