From 2045dd0050f1ef0df348e11bd44657c2475aa7c3 Mon Sep 17 00:00:00 2001 From: Bela Bodecs Date: Sat, 22 Jun 2019 15:55:54 +0200 Subject: [PATCH] avformat/hlsenc: better error log message for var_stream_map content When multiple variant streams are specified by var_stream_map option, %v is expected either in the filename or in the last sub-directory name, but only in one of them. When both of them contains %v string, current error message only states half of the truth. And even %v may appears several times inside the last sub-directory name or in filename pattern. This patch clarifies this in the log message and in the doc also. Signed-off-by: Bela Bodecs --- doc/muxers.texi | 3 ++- libavformat/hlsenc.c | 8 ++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/doc/muxers.texi b/doc/muxers.texi index 4410a5f5bb..6c5b4bb637 100644 --- a/doc/muxers.texi +++ b/doc/muxers.texi @@ -656,7 +656,8 @@ This example will produce the playlists segment file sets: @file{file_1_000.ts}, @file{file_1_001.ts}, @file{file_1_002.ts}, etc. The string "%v" may be present in the filename or in the last directory name -containing the file. If the string is present in the directory name, then +containing the file, but only in one of them. (Additionally, %v may appear multiple times in the last +sub-directory or filename.) If the string %v is present in the directory name, then sub-directories are created after expanding the directory name pattern. This enables creation of segments corresponding to different variant streams in subdirectories. diff --git a/libavformat/hlsenc.c b/libavformat/hlsenc.c index f6330ec2d5..9f5eee5491 100644 --- a/libavformat/hlsenc.c +++ b/libavformat/hlsenc.c @@ -1792,15 +1792,15 @@ static int validate_name(int nb_vs, const char *fn) subdir_name = av_dirname(fn_dup); if (nb_vs > 1 && !av_stristr(filename, "%v") && !av_stristr(subdir_name, "%v")) { - av_log(NULL, AV_LOG_ERROR, "More than 1 variant streams are present, %%v is expected in the filename %s\n", - fn); + av_log(NULL, AV_LOG_ERROR, "More than 1 variant streams are present, %%v is expected " + "either in the filename or in the sub-directory name of file %s\n", fn); ret = AVERROR(EINVAL); goto fail; } if (av_stristr(filename, "%v") && av_stristr(subdir_name, "%v")) { - av_log(NULL, AV_LOG_ERROR, "%%v is expected either in filename or in the sub-directory name of file %s\n", - fn); + av_log(NULL, AV_LOG_ERROR, "%%v is expected either in the filename or " + "in the sub-directory name of file %s, but only in one of them\n", fn); ret = AVERROR(EINVAL); goto fail; }