diff options
author | Anton Khirnov <anton@khirnov.net> | 2012-06-22 22:48:40 +0400 |
---|---|---|
committer | Anton Khirnov <anton@khirnov.net> | 2012-06-26 21:05:24 +0400 |
commit | ce0a975689068f2fe70f43797ca6e8b4f6b52a4c (patch) | |
tree | 5c59f7c2031b5d7fd4901ea09b9c3fd363b4d4f0 /libavformat/mpc8.c | |
parent | acd9948e74b942b21de465aad18825085d8887e5 (diff) |
mpc8: read APE tags.
Diffstat (limited to 'libavformat/mpc8.c')
-rw-r--r-- | libavformat/mpc8.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/libavformat/mpc8.c b/libavformat/mpc8.c index 890404faf4..93848f4ebf 100644 --- a/libavformat/mpc8.c +++ b/libavformat/mpc8.c @@ -21,6 +21,7 @@ #include "libavcodec/get_bits.h" #include "libavcodec/unary.h" +#include "apetag.h" #include "avformat.h" #include "internal.h" #include "avio_internal.h" @@ -240,6 +241,12 @@ static int mpc8_read_header(AVFormatContext *s) st->duration = c->samples / (1152 << (st->codec->extradata[1]&3)*2); size -= avio_tell(pb) - pos; + if (pb->seekable) { + int64_t pos = avio_tell(s->pb); + ff_ape_parse_tag(s); + avio_seek(s->pb, pos, SEEK_SET); + } + return 0; } |