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/oggdec.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'libavformat/oggdec.h') diff --git a/libavformat/oggdec.h b/libavformat/oggdec.h index 893c3306c7..b8f0a8bbd0 100644 --- a/libavformat/oggdec.h +++ b/libavformat/oggdec.h @@ -125,6 +125,9 @@ extern const struct ogg_codec ff_vorbis_codec; int ff_vorbis_comment(AVFormatContext *ms, AVDictionary **m, const uint8_t *buf, int size, int parse_picture); +int ff_vorbis_stream_comment(AVFormatContext *as, AVStream *st, + const uint8_t *buf, int size); + static inline int ogg_find_stream (struct ogg * ogg, int serial) { -- cgit v1.2.3