[FFmpeg-devel] [PATCH] libavformat/matroskaenc.c: Write Tags element for WebM

James Almer jamrial at gmail.com
Sat Sep 9 01:33:08 EEST 2017


On 9/8/2017 12:59 PM, Ivan Janatra wrote:
> This is already supported per https://www.webmproject.org/docs/container/#Tags and https://github.com/nbirkbeck/matroska-specification/commit/28a54f991f118fff31fe6bfe256c2dfab46d00e5
> 
> Signed-off-by: Ivan Janatra <janatra at google.com>
> ---
>  libavformat/matroskaenc.c | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c
> index 9cc7be352e..5b70fead87 100644
> --- a/libavformat/matroskaenc.c
> +++ b/libavformat/matroskaenc.c
> @@ -1988,12 +1988,12 @@ static int mkv_write_header(AVFormatContext *s)
>          ret = mkv_write_attachments(s);
>          if (ret < 0)
>              goto fail;
> -
> -        ret = mkv_write_tags(s);
> -        if (ret < 0)
> -            goto fail;
>      }
>  
> +    ret = mkv_write_tags(s);
> +    if (ret < 0)
> +        goto fail;
> +
>      if (!(s->pb->seekable & AVIO_SEEKABLE_NORMAL) && !mkv->is_live)
>          mkv_write_seekhead(pb, mkv);

This is incomplete, as it's allowing attachment and chapter tags to be
written to webm files, when TagChapterUID and TagAttachmentUID elements
are not allowed according to the spec you linked.

See https://ffmpeg.org/pipermail/ffmpeg-devel/2017-June/211863.html
I'll push that soon unless someone has comments.


More information about the ffmpeg-devel mailing list