From b53cde48bdc807fe5126eee7dc116812c6607974 Mon Sep 17 00:00:00 2001 From: David Conrad Date: Fri, 12 Mar 2010 05:16:44 +0000 Subject: oggdec: Metadata is per-stream; don't merge multiple streams' together Originally committed as revision 22473 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavformat/oggparsevorbis.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'libavformat/oggparsevorbis.c') diff --git a/libavformat/oggparsevorbis.c b/libavformat/oggparsevorbis.c index 6b69b655a7..a2e057edab 100644 --- a/libavformat/oggparsevorbis.c +++ b/libavformat/oggparsevorbis.c @@ -42,7 +42,7 @@ const AVMetadataConv ff_vorbiscomment_metadata_conv[] = { }; int -ff_vorbis_comment(AVFormatContext * as, uint8_t *buf, int size) +ff_vorbis_comment(AVFormatContext * as, AVMetadata **m, uint8_t *buf, int size) { const uint8_t *p = buf; const uint8_t *end = buf + size; @@ -101,7 +101,7 @@ ff_vorbis_comment(AVFormatContext * as, uint8_t *buf, int size) memcpy(ct, v, vl); ct[vl] = 0; - av_metadata_set2(&as->metadata, tt, ct, + av_metadata_set2(m, tt, ct, AV_METADATA_DONT_STRDUP_KEY | AV_METADATA_DONT_STRDUP_VAL); } @@ -220,7 +220,7 @@ vorbis_header (AVFormatContext * s, int idx) st->time_base.den = st->codec->sample_rate; } else if (os->buf[os->pstart] == 3) { if (os->psize > 8) - ff_vorbis_comment (s, os->buf + os->pstart + 7, os->psize - 8); + ff_vorbis_comment (s, &st->metadata, os->buf + os->pstart + 7, os->psize - 8); } else { st->codec->extradata_size = fixup_vorbis_headers(s, priv, &st->codec->extradata); -- cgit v1.2.3