[FFmpeg-cvslog] streamid does not work with newaudio, newvideo, newsubtitle

Mike Scheutzow git
Sun Jan 23 21:01:55 CET 2011

ffmpeg | branch: master | Mike Scheutzow <mjs973 at optonline.net> | Sat Jan 15 16:11:55 2011 +0000| [ba0dd9e8ffed02a89ce5f0c5110cede6f07896ba] | committer: Michael Niedermayer

streamid does not work with newaudio, newvideo, newsubtitle

fixes issue2465.

The problem is that the ffmpeg (the app) -streamid option did not work
with -newaudio/-newvideo/-newsubtitle.

The cause was a conflict between the feature where streamid values were
reset to default for each output filename, and the implementation of
-new*, which requires that the -new* option be specified after the
target filename.

My patch changes the ffmpeg behavior so that user-specified streamid
values apply to all the following output files on the command line
(rather than just the next output filename.)

Signed-off-by: Janne Grunau <janne-ffmpeg at jannau.net>
(cherry picked from commit 20ac9de3df9b129a4a312d626fed0e2bbb760200)

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=ba0dd9e8ffed02a89ce5f0c5110cede6f07896ba

 doc/ffmpeg.texi |    6 ++++--
 ffmpeg.c        |    1 -
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/doc/ffmpeg.texi b/doc/ffmpeg.texi
index c2fff7c..1732c9b 100644
--- a/doc/ffmpeg.texi
+++ b/doc/ffmpeg.texi
@@ -712,8 +712,10 @@ Set the maximum demux-decode delay.
 @item -muxpreload @var{seconds}
 Set the initial demux-decode delay.
 @item -streamid @var{output-stream-index}:@var{new-value}
-Assign a new value to a stream's stream-id field in the next output file.
-All stream-id fields are reset to default for each output file.
+Assign a new stream-id value to an output stream. This option should be
+specified prior to the output filename to which it applies.
+For the situation where multiple output files exist, a streamid
+may be reassigned to a different value.
 For example, to set the stream 0 PID to 33 and the stream 1 PID to 36 for
 an output mpegts file:
diff --git a/ffmpeg.c b/ffmpeg.c
index 7cce343..0b2bab2 100644
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -3816,7 +3816,6 @@ static void opt_output_file(const char *filename)
     set_context_opts(oc, avformat_opts, AV_OPT_FLAG_ENCODING_PARAM, NULL);
-    nb_streamid_map = 0;

More information about the ffmpeg-cvslog mailing list