From db68ef898a3802e51b6f41fd600d0d46d058e3f8 Mon Sep 17 00:00:00 2001 From: Andrew Stone Date: Tue, 12 Aug 2014 17:03:55 -0400 Subject: ogg: update event_flags with STREAM_/METADATA_UPDATED whenever metadata changes. Originally, AVFormatContext and a metadata dict were provided to ff_vorbis_comment(), but this presented issues if an AVStream was being updated or the metadata on AVFormatContext wasn't actually being updated. To remedy this, ff_vorbis_stream_comment() explicitly updates a stream's metadata and sets any necessary flags. ff_vorbis_comment() does not modify any flags, and any calls to it that update AVFormatContext's metadata (just a single call) must also update AVFormatContext.event_flags after detecting any metadata changes to the provided dictionary, as signaled by a positive return value. Signed-off-by: Anton Khirnov --- libavformat/oggparseopus.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'libavformat/oggparseopus.c') diff --git a/libavformat/oggparseopus.c b/libavformat/oggparseopus.c index cfdf35d2b8..5931ab543b 100644 --- a/libavformat/oggparseopus.c +++ b/libavformat/oggparseopus.c @@ -74,7 +74,7 @@ static int opus_header(AVFormatContext *avf, int idx) if (priv->need_comments) { if (os->psize < 8 || memcmp(packet, "OpusTags", 8)) return AVERROR_INVALIDDATA; - ff_vorbis_comment(avf, &st->metadata, packet + 8, os->psize - 8, 1); + ff_vorbis_stream_comment(avf, st, packet + 8, os->psize - 8); priv->need_comments--; return 1; } -- cgit v1.2.3