ffmpeg 循环过滤器无法正常工作
ffmpeg aloop filter not working correctlly
我正在尝试 运行 FFmpeg 命令如下
-i "v1.mov" -i "0.mp3" -filter_complex "[0:v]trim=0:204,setpts=PTS-STARTPTS[TrimmedVideo];[0:a]atrim=0:204,asetpts=PTS-STARTPTS[TrimmedAudio];[TrimmedVideo]scale=848:360[BackgroundOutput];[1:a]atrim=0:20,asetpts=PTS-STARTPTS,volume=0.37,aloop=1:size=1*48000,adelay=0|0[AudioTrim0];[TrimmedAudio][AudioTrim0]amix=inputs=2:duration=first:dropout_transition=2,volume=2[AudioMixOut];[BackgroundOutput][AudioMixOut]concat=n=1:v=1:a=1[OutputVideo][OutputAudio]" -map [OutputVideo] -map [OutputAudio] -c:v libx264 -c:a aac -b:a 256k -preset ultrafast "ouput.mp4"
在此,我使用aloop循环播放音频以填充视频,但该音频不重复,播放一次然后停止
所以我发现问题出在必须乘以修剪音频的持续时间的大小参数但我使用 1x4800 而不是 20x48000 并且它解决了问题
最后的命令变成
-i "v1.mov" -i "0.mp3" -filter_complex "[0:v]trim=0:204,setpts=PTS-STARTPTS[TrimmedVideo];[0:a]atrim=0:204,asetpts=PTS-STARTPTS[TrimmedAudio];[TrimmedVideo]scale=848:360[BackgroundOutput];[1:a]atrim=0:20,asetpts=PTS-STARTPTS,volume=0.37,aloop=1:size=20*48000,adelay=0|0[AudioTrim0];[TrimmedAudio][AudioTrim0]amix=inputs=2:duration=first:dropout_transition=2,volume=2[AudioMixOut];[BackgroundOutput][AudioMixOut]concat=n=1:v=1:a=1[OutputVideo][OutputAudio]" -map [OutputVideo] -map [OutputAudio] -c:v libx264 -c:a aac -b:a 256k -preset ultrafast "ouput.mp4"
我正在尝试 运行 FFmpeg 命令如下
-i "v1.mov" -i "0.mp3" -filter_complex "[0:v]trim=0:204,setpts=PTS-STARTPTS[TrimmedVideo];[0:a]atrim=0:204,asetpts=PTS-STARTPTS[TrimmedAudio];[TrimmedVideo]scale=848:360[BackgroundOutput];[1:a]atrim=0:20,asetpts=PTS-STARTPTS,volume=0.37,aloop=1:size=1*48000,adelay=0|0[AudioTrim0];[TrimmedAudio][AudioTrim0]amix=inputs=2:duration=first:dropout_transition=2,volume=2[AudioMixOut];[BackgroundOutput][AudioMixOut]concat=n=1:v=1:a=1[OutputVideo][OutputAudio]" -map [OutputVideo] -map [OutputAudio] -c:v libx264 -c:a aac -b:a 256k -preset ultrafast "ouput.mp4"
在此,我使用aloop循环播放音频以填充视频,但该音频不重复,播放一次然后停止
所以我发现问题出在必须乘以修剪音频的持续时间的大小参数但我使用 1x4800 而不是 20x48000 并且它解决了问题 最后的命令变成
-i "v1.mov" -i "0.mp3" -filter_complex "[0:v]trim=0:204,setpts=PTS-STARTPTS[TrimmedVideo];[0:a]atrim=0:204,asetpts=PTS-STARTPTS[TrimmedAudio];[TrimmedVideo]scale=848:360[BackgroundOutput];[1:a]atrim=0:20,asetpts=PTS-STARTPTS,volume=0.37,aloop=1:size=20*48000,adelay=0|0[AudioTrim0];[TrimmedAudio][AudioTrim0]amix=inputs=2:duration=first:dropout_transition=2,volume=2[AudioMixOut];[BackgroundOutput][AudioMixOut]concat=n=1:v=1:a=1[OutputVideo][OutputAudio]" -map [OutputVideo] -map [OutputAudio] -c:v libx264 -c:a aac -b:a 256k -preset ultrafast "ouput.mp4"