From 13eadbaca4768a2b49b8403178c818bf8d75e0af Mon Sep 17 00:00:00 2001 From: Carl Eugen Hoyos Date: Fri, 25 Mar 2011 19:46:27 +0100 Subject: id3v1: Seek back to old position after reading. FFmpeg did not seek back to the original position, but to "0", making reading a VBR tag impossible. (issue 2645) Signed-off-by: Ronald S. Bultje --- libavformat/id3v1.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'libavformat/id3v1.c') diff --git a/libavformat/id3v1.c b/libavformat/id3v1.c index e0a2f43205..23cacf78c5 100644 --- a/libavformat/id3v1.c +++ b/libavformat/id3v1.c @@ -227,6 +227,7 @@ void ff_id3v1_read(AVFormatContext *s) { int ret, filesize; uint8_t buf[ID3v1_TAG_SIZE]; + int64_t position = avio_tell(s->pb); if (!url_is_streamed(s->pb)) { /* XXX: change that */ @@ -237,7 +238,7 @@ void ff_id3v1_read(AVFormatContext *s) if (ret == ID3v1_TAG_SIZE) { parse_tag(s, buf); } - avio_seek(s->pb, 0, SEEK_SET); + avio_seek(s->pb, position, SEEK_SET); } } } -- cgit v1.2.3