我想将音轨尽可能高效且无损地转换为 AC3。
ffmpeg -i my_movie.mkv -map 0:v -map 0:a:0 -map 0:a -map 0:s -c:v copy -c:a copy -c:s copy -c:a:0 ac3 -b:a:0 640k my_movie_ac2.mkv
此命令会忽略视频/字幕轨道吗?是否有 FFmpeg 命令可以转换并重新添加音轨(例如将 DTS 转换为 AC3 并添加到原始媒体文件中)没有需要复制视频/字幕轨道吗?或者非音轨复制不会占用太多时间/资源?
另外,这是什么-c:a:0 ac3 -b:a:0 640k
意思?我是否应该根据原始音轨进行更改?这是转换为 AC3 的最佳方法吗?
答案1
此命令会忽略视频/字幕轨道吗?
不会。-map 0:v
会包含-map 0:s
视频和字幕。-c:v copy
会-c:s copy
流复制(无需重新编码即可重新混合)视频和字幕。
是否有一个 FFmpeg 命令可以转换并重新添加音轨(例如将 DTS 转换为 AC3 并添加到原始媒体文件中)而无需复制视频/字幕轨道?
不可以。ffmpeg
必须创建一个新文件。无法就地编辑。
或者非音轨复制不会耗费太多时间/资源?
与编码相比,重新复用并不需要花费太多的时间/资源。
这是什么
-c:a:0 ac3 -b:a:0 640k
意思?
-c:a:0 ac3
对于音频输出流 #0,使用编码器名称 ac3。计数从 0 开始,因此这是第一个输出音频流。-b:a:0 640k
对于音频输出流#0,应用 640k/s 的比特率。
我是否应该根据原始音轨进行更改?
如果您想使用不同的编码器或比特率,您可以更改它。
这是对 AC3 的最佳转换吗?
可能没问题。听起来不错吧?您可以考虑删除-b:a:0 640k
并允许编码器根据通道布局(立体声、5.1 等)自动选择比特率。
编码器 ac3 有许多附加选项,您可能需要查看。请参阅ffmpeg -h encoder=ac3
。这不是我使用的编码器,因此我无法提供详细的建议。