From c19a216af3ffc965752e600ac5fc298807d92857 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20B=C5=93sch?= Date: Mon, 10 Jan 2011 11:36:11 +0000 Subject: [PATCH] Handle ID3v1 tag while decoding mp[123] frames MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit patch by Clément Bœsch (ubitux at gmail) Originally committed as revision 26297 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavcodec/mpegaudiodec.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/libavcodec/mpegaudiodec.c b/libavcodec/mpegaudiodec.c index 769be89913..76fdffbafe 100644 --- a/libavcodec/mpegaudiodec.c +++ b/libavcodec/mpegaudiodec.c @@ -27,6 +27,7 @@ #include "avcodec.h" #include "get_bits.h" #include "dsputil.h" +#include "libavformat/id3v1.h" /* * TODO: @@ -2043,6 +2044,13 @@ static int decode_frame(AVCodecContext * avctx, header = AV_RB32(buf); if(ff_mpa_check_header(header) < 0){ + + if (buf_size == ID3v1_TAG_SIZE + && buf[0] == 'T' && buf[1] == 'A' && buf[2] == 'G') { + *data_size = 0; + return ID3v1_TAG_SIZE; + } + av_log(avctx, AV_LOG_ERROR, "Header missing\n"); return -1; }