Signed-off-by: Nicolas George <geo...@nsup.org> --- doc/demuxers.texi | 4 ++++ libavformat/concatdec.c | 14 ++++++++++++-- 2 files changed, 16 insertions(+), 2 deletions(-)
diff --git a/doc/demuxers.texi b/doc/demuxers.texi index fd06be3195..87e4d0319a 100644 --- a/doc/demuxers.texi +++ b/doc/demuxers.texi @@ -177,6 +177,10 @@ subfiles will be used. This is especially useful for MPEG-PS (VOB) files, where the order of the streams is not reliable. +@item @code{stream_meta @var{key} @var{value}} +Metadata for the stream. +Can be present multiple times. + @end table @subsection Options diff --git a/libavformat/concatdec.c b/libavformat/concatdec.c index 2981c7c27f..5ebac49b97 100644 --- a/libavformat/concatdec.c +++ b/libavformat/concatdec.c @@ -430,6 +430,7 @@ typedef enum ParseDirective { DIR_OPTION, DIR_STREAM, DIR_EXSID, + DIR_STMETA, } ParseDirective; static const ParseSyntax syntax[] = { @@ -443,6 +444,7 @@ static const ParseSyntax syntax[] = { [DIR_OPTION ] = { "option", "ks", NEEDS_FILE | NEEDS_UNSAFE }, [DIR_STREAM ] = { "stream", "", 0 }, [DIR_EXSID ] = { "exact_stream_id", "i", NEEDS_STREAM }, + [DIR_STMETA ] = { "stream_meta", "ks", NEEDS_STREAM }, }; static int concat_parse_script(AVFormatContext *avf) @@ -452,6 +454,7 @@ static int concat_parse_script(AVFormatContext *avf) AVBPrint bp; uint8_t *cursor, *keyword; ConcatFile *file = NULL; + AVStream *stream = NULL; unsigned line = 0, arg; const ParseSyntax *dir; char *arg_kw[MAX_ARGS]; @@ -569,11 +572,18 @@ static int concat_parse_script(AVFormatContext *avf) arg_str[1] = NULL; break; case DIR_STREAM: - if (!avformat_new_stream(avf, NULL)) + stream = avformat_new_stream(avf, NULL); + if (!stream) FAIL(AVERROR(ENOMEM)); break; case DIR_EXSID: - avf->streams[avf->nb_streams - 1]->id = arg_int[0]; + stream->id = arg_int[0]; + break; + case DIR_STMETA: + ret = av_dict_set(&stream->metadata, arg_kw[0], arg_str[1], AV_DICT_DONT_STRDUP_VAL); + if (ret < 0) + FAIL(ret); + arg_str[1] = NULL; break; default: FAIL(AVERROR_BUG); -- 2.33.0 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".