On 27-08-2020 05:26 pm, scrutinizer wrote:
The example reads as follows: ffmpeg -i multichannel.mxf -map 0:v:0 -map 0:a:0 -map 0:a:0 -c:a:0 ac3 -b:a:0 640k -ac:a:1 2 -c:a:1 aac -b:2 128k out.mp4 In the above example, a multichannel audio stream is mapped twice for output. The first instance is encoded with codec ac3 and bitrate 640k. The second instance is downmixed to 2 channels and encoded with codec aac. A bitrate of 128k is specified for it using absolute index of the output stream. We see the second audio stream appearing as in “-ac:a:1" and “-c:a:1” and the set of options is capped with the absolute index for the stream number 2 written as “-b:2”. However the second manual mapping option is “-map 0:a:0” in the example. Shouldn’t it have been “-map 0:a:1”? Prior to the example we don’t know anything about how many streams are in the output and input files. If there’re more than 1 then it’s logical to assume that audio-stream number 1 is encoded with ac3, while the other one is set to be made as a 2-channel encoded with aac. Does all above mean that the correct command line should’ve been “ffmpeg -i multichannel.mxf -map 0:v:0 -map 0:a:0 -map 0:a:1 -c:a:0 ac3 -b:a:0 640k -ac:a:1 2 -c:a:1 aac -b:2 128k out.mp4”?
The stream specifier in `-map` refers to the input indices, whereas the specifiers for -codec or other output options refer to the output indices. The example shows the same input audio stream being mapped twice, thus creating two output streams. Then different output options are set for each of those output streams.
Gyan _______________________________________________ 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".