summaryrefslogtreecommitdiff
path: root/libavformat/mpc.c
diff options
context:
space:
mode:
authorMatti Hamalainen <(mhamalai@students.oamk.fi>2009-08-11 17:18:10 +0000
committerKostya Shishkov <kostya.shishkov@gmail.com>2009-08-11 17:18:10 +0000
commit311f96a8cc2463bc310bf15676b2c8d9b969a6ee (patch)
tree09af4e6dd47890082805d710331d4fa2c5eb7372 /libavformat/mpc.c
parent191e34cd67e46e125782073283346fda459d2146 (diff)
Parse APE metadata tags in Musepack SV7 files
Patch by Matti Hamalainen (to get his mail address remove common endings from "mhamalainen@studentsnen.oamknen.finen") Thread: [PATCH]5/6 Add APE tag metadata reading support in Musepack SV7 demuxer Originally committed as revision 19630 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavformat/mpc.c')
-rw-r--r--libavformat/mpc.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/libavformat/mpc.c b/libavformat/mpc.c
index f2b219a9ef..03aa7f0d57 100644
--- a/libavformat/mpc.c
+++ b/libavformat/mpc.c
@@ -22,6 +22,7 @@
#include "libavcodec/get_bits.h"
#include "avformat.h"
#include "id3v2.h"
+#include "apetag.h"
#define MPC_FRAMESIZE 1152
#define DELAY_FRAMES 32
@@ -111,6 +112,13 @@ static int mpc_read_header(AVFormatContext *s, AVFormatParameters *ap)
s->start_time = 0;
s->duration = (int64_t)c->fcount * MPC_FRAMESIZE * AV_TIME_BASE / st->codec->sample_rate;
+ /* try to read APE tags */
+ if (!url_is_streamed(s->pb)) {
+ int64_t pos = url_ftell(s->pb);
+ ff_ape_parse_tag(s);
+ url_fseek(s->pb, pos, SEEK_SET);
+ }
+
return 0;
}