FFMPEG 最终输出中没有音频

mun*_*ikh 1 android ffmpeg video-editing video-encoding

我有以下 FFMPEG 命令正在运行。

ffmpeg -y -i slide.mp4 -f lavfi -i "color=c=black:s=1920x1080:r=25:d=1" -filter_complex "[0:v] setpts=PTS-STARTPTS [main]; \
 [1:v] trim=end=3,setpts=PTS-STARTPTS [pre]; \
 [1:v] trim=end=3,setpts=PTS-STARTPTS [post]; \
 [pre][main][post] concat=n=3:v=1:a=0 [out]" -map "[out]" output.mp4
Run Code Online (Sandbox Code Playgroud)

它在视频的开头和结尾附加黑帧。但是,输出文件不包含输入文件中的音频。

任何针对该问题的指示都将受到高度赞赏。

Cha*_*ath 5

如果您需要带有输出文件的原始音频,以下内容将适合您。使用选项将输入音频通道映射到输出map

-map 0:a -c:a copy
Run Code Online (Sandbox Code Playgroud)

您可以通过将无声音频剪辑附加到视频的开头和结尾,使其持续时间与黑屏持续时间相同,从而使其更加准确。同样的方式将以下内容包含在filter_complex.

aevalsrc=0:d=1[s];
[s][0:a][s]concat=n=3:v=0:a=1[outa];
Run Code Online (Sandbox Code Playgroud)

这里我假设黑屏的持续时间为1秒。然后映射它。

-map [outa] -c:a libfdk_aac
Run Code Online (Sandbox Code Playgroud)

希望对你有帮助!