我有
我想将视频从5秒剪切到50秒,并将音频文件放在中间,然后从输出的5秒开始播放。因此,前5秒和后5秒的输出视频是无声的。我也不想重新编码视频,因此编译会很快并且质量会保持不变。
我正在尝试以下命令
ffmpeg -y -i DJI_0325.mp4 -ss 00:00:40.5 -i song.mp3 -c:v copy -c:a copy out.mp4
,但是音频开始在中间播放。 我还尝试了以下方法的不同组合,但没有运气:(
-async 1
-map 0:v:0
-c:v copy -c:a copy
-ss
和-to
的不同集合答案 0 :(得分:0)
ffmpeg -y -i DJI_0325.mp4 -stream_loop -1 -shortest -itsoffset 00:00:05 -i song.mp3 -c:v copy -c:a mp3 -af "volume=enable='lte(55,t)':volume=0" out.mp4
-stream_loop -1
启用以下输入的循环。
-shortest
选择要循环到最短输入的持续时间的最短输入(否则它将永远循环)。
-itsoffset HH:MM:SS
将以下输入向前移动以从HH:MM:SS开始。
-af "volume=enable='lte(55,t)':volume=0"
使音频从55秒开始静音。
我找不到设置不适用于输出的输入持续时间的方法,但这会为您提供所需的结果。
我个人建议您在所需的持续时间内创建音频首先,仅使用-itsoffet标志。