Ano*_*ous 21 audio ffmpeg streaming
我想替换具有两个音频流的视频文件中的第二个音频流 (0:2),并在可能的情况下给它一个标签。我该怎么办?我发现的所有 ffmpeg 命令都不允许我保留第二个音频流。
llo*_*gan 26
使用该-map选项来选择您的流。默认流选择只会选择每种流类型中的一种,所以这就是-map必须使用的原因。

ffmpeg -i video.mkv -i audio.mp3 -map 0:v -map 0:a:0 -map 1:a \
-metadata:s:a:0 language=eng -metadata:s:a:1 language=sme -codec copy \
-shortest output.mkv
Run Code Online (Sandbox Code Playgroud)
0:v–0指的是第一个输入,即video.mkv。的v意思是“选择视频流类型”。
0:a:0–0指的是第一个输入,即video.mkv。的a意思是“选择的音频流类型”。最后一个0是指来自该输入的第一个音频流。如果仅0:a使用,则将映射所有视频流。
1:a–1指的是第二个输入,即audio.mp3。的a意思是“选择的音频流类型”。
-codec copy将流式复制(重新复用)而不是编码。如果您需要特定的音频编解码器,您应该指定-c:v copy(以保留视频),然后,例如,-c:a libmp3lame将音频流重新编码为 MP3。
-shortest 将在最短输入结束时结束输出。

ffmpeg -i vid.mkv -i aud.mp3 -filter_complex "[0:a][1:a]amerge=inputs=2[a]" \
-map 0:v -map "[a]" -c:v copy -c:a aac -strict experimental -b:a 192k -ac 2 \
-shortest out.mp4
Run Code Online (Sandbox Code Playgroud)
amerge过滤器,所以本例中不能流式复制音频。| 归档时间: |
|
| 查看次数: |
23428 次 |
| 最近记录: |