FFMpeg-将所有音频流从MKV转换为MP4

时间:2019-02-12 21:56:15

标签: ffmpeg

我有MKV文件。

我的输入文件:

流#0:0(eng):视频:h264(高)

流#0:1(pol):音频:ac3

流#0:2(eng):音频:dts(DTS)

流#0:3(pol):字幕:subrip

流#0:4(eng):字幕:hdmv_pgs_subtitle

我想错过字幕(-sn选项),复制视频并将音频流编码到AAC。 我尝试了很少的各种命令,并且输出文件始终是相同的(2个音频流,但是两个音频都来自第一个音频流)。 这是我的命令:

ffmpeg -i input.mkv -sn -map 0:a? -map 0:v -c:v复制-c:a? aac output.mp4

ffmpeg -i input.mkv -sn -map 0 -c:v复制-c:a aac output.mp4

ffmpeg -i input.mkv -sn -map 0 :? -c:v复制-c:a aac output.mp4

几乎所有内容都可以使用,但是在输出文件中我有2个音频流,名称分别为(pol)和(eng),但两者都来自(pol)流0:1 我应该使用什么命令来转换音频流,以实现两个音频流,其中音频将是pol和eng声音(两者都不是pol)。有时输入文件只有1个音频流,因此命令行应该是通用的,我猜ffmpeg映射为“?”字符。

1 个答案:

答案 0 :(得分:1)

映射所有视频和音频:

ffmpeg -i input -map 0:v -map 0:a -c copy -c:a aac output.mp4

或使用否定映射来映射除字幕以外的所有内容:

ffmpeg -i input -map 0 -map -0:s -c copy -c:a aac output.mp4

有关更多信息,请参见-map option documentation