[FFmpeg-devel] [PATCH] Document stream specifier syntax change from 46cbe4ab5c

Anton Khirnov anton at khirnov.net
Sat Oct 26 12:51:14 EEST 2024


Fixes #11248.
---
 Changelog                    | 9 +++++++++
 doc/ffmpeg.texi              | 2 +-
 doc/fftools-common-opts.texi | 3 ++-
 3 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/Changelog b/Changelog
index 7963e093dd..2d758c14a2 100644
--- a/Changelog
+++ b/Changelog
@@ -30,6 +30,15 @@ version 7.1:
 - LCEVC enhancement data exporting in H.26x and MP4/ISOBMFF
 - LCEVC filter
 - MV-HEVC decoding
+- minor stream specifier syntax changes:
+    - when matching by metadata (:m:<key>:<val>), the colon character
+      in keys or values now has to be backslash-escaped
+    - in optional maps (-map ....?) with a metadata-matching stream specifier,
+      the value has to be separated from the question mark by a colon, i.e.
+      -map ....:m:<key>:<val>:? (otherwise it would be ambiguous whether the
+      question mark is a part of <val> or not)
+    - multiple stream types in a single specifier (e.g. :s:s:0) now cause an
+      error, as such a specifier makes no sense
 
 
 version 7.0:
diff --git a/doc/ffmpeg.texi b/doc/ffmpeg.texi
index e4aa03a734..a63e55bd66 100644
--- a/doc/ffmpeg.texi
+++ b/doc/ffmpeg.texi
@@ -2129,7 +2129,7 @@ Set the size of the canvas used to render subtitles.
 @section Advanced options
 
 @table @option
- at item -map [-]@var{input_file_id}[:@var{stream_specifier}][:@var{view_specifier}][?] | @var{[linklabel]} (@emph{output})
+ at item -map [-]@var{input_file_id}[:@var{stream_specifier}][:@var{view_specifier}][:?] | @var{[linklabel]} (@emph{output})
 
 Create one or more streams in the output file. This option has two forms for
 specifying the data source(s): the first selects one or more streams from some
diff --git a/doc/fftools-common-opts.texi b/doc/fftools-common-opts.texi
index 4e48789def..8b0931a86d 100644
--- a/doc/fftools-common-opts.texi
+++ b/doc/fftools-common-opts.texi
@@ -78,7 +78,8 @@ Match the stream by stream id (e.g. PID in MPEG-TS container).
 @item m:@var{key}[:@var{value}]
 Matches streams with the metadata tag @var{key} having the specified value. If
 @var{value} is not given, matches streams that contain the given tag with any
-value.
+value. The colon character ':' in @var{key} or @var{value} needs to be
+backslash-escaped.
 @item disp:@var{dispositions}[:@var{additional_stream_specifier}]
 Matches streams with the given disposition(s). @var{dispositions} is a list of
 one or more dispositions (as printed by the @option{-dispositions} option)
-- 
2.43.0



More information about the ffmpeg-devel mailing list