On Mon, Sep 28, 2020 at 12:31:49 +0000, Stub via ffmpeg-user wrote:
> Let me give a much simplified example of what I hoped to achieve. I have two 
> movie files that each contain a video stream and an audio stream: movie1.mp4 
> and movie2.mp4. I merge both into a single MKV container with ffmpeg:
>
> ffmpeg -i movie1.mp4 -i movie2.mp4 -map 0:v -map 0:a -map 1:v -map 1:a -c 
> copy combined.mkv
>
> At the end of the ffmpeg monitor output I get the following about the 
> contents of the "combined.mkv":
>
> Stream mapping:
>   Stream #0:0 -> #0:0 (copy)
>   Stream #0:1 -> #0:1 (copy)
>   Stream #1:0 -> #0:2 (copy)
>   Stream #1:1 -> #0:3 (copy)

In ffmpeg's stream mapping notation, the digits before the colon count
the separate inputs (files or URIs) and outputs.

> Now, my question is how to achieve the following mapping:
>
> Stream mapping:
>   Stream #0:0 -> #0:0 (copy)
>   Stream #0:1 -> #0:1 (copy)
>   Stream #1:0 -> #1:0 (copy)
>   Stream #1:1 -> #1:1 (copy)

You can only achieve this by creating two output files, not a combined
file.

$ ffmpeg -i movie1.mp4 -i movie2.mp4 -map 0:v -map 0:a -c copy output1.mkv -map 
1:v -map 1:a -c copy output2.mkv

> It seems that the "-map" flag always adds a stream as a "#0:n". I
> would like to have "#1:0" and "#1:1" in the "combined.mkv" container.
> Is that possible?

No. And to reiterate others' questions: What for? A single input file
will always present itself to ffmpeg as "Input #0". If you want an
additional "Input #1", give ffmpeg a second input file/URI.

Again: If you map to a *combined* file, all output streams of the
conversion process *need* to be "#0:N".

Cheers,
Moritz
_______________________________________________
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to