【发布时间】:2020-12-18 11:27:10
【问题描述】:
目前我正在使用三个不同的命令来创建三个 mp4,只是为了使用此代码删除两个“临时”视频。
@ECHO OFF
ffmpeg -f lavfi -i color=size=1280x720:duration=5:rate=25:color=Black -vf "drawtext=fontfile='GothamRnd-Book.otf':line_spacing=15:fontsize=15:fontcolor=white:x=(w-text_w)/2:y=(h-text_h)/2:text=Stack Exchange" "out1.mp4"
ffmpeg -i "out1.mp4" -i logo.png -filter_complex "overlay=x=10:y=10" "out2.mp4"
ffmpeg -f lavfi -i anullsrc=channel_layout=stereo:sample_rate=48000 -i "out2.mp4" -c:v copy -c:a aac -shortest "out3.mp4"
del "out1.mp4"
del "out2.mp4"
pause
我最近的方法是将anullsrc=channel_layout 移动到-filter_complex 中,但这会导致编码很长,我真的不明白这是怎么回事,因为如果我ctrl-c 取消批处理仍然会创建out3.mp4正确。
ffmpeg -f lavfi -i color=size=1280x720:duration=5:rate=25:color=Black -vf "drawtext=fontfile='GothamRnd-Book.otf':line_spacing=15:fontsize=15:fontcolor=white:x=(w-text_w)/2:y=(h-text_h)/2:text=Stack Exchange" "out1.mp4"
ffmpeg -f lavfi -i anullsrc=channel_layout=stereo:sample_rate=48000 -i "out1.mp4" -i logo.png -filter_complex "overlay=x=10:y=10" "out3.mp4"
这似乎可以简化为不创建临时文件。 但也许这是唯一的方法。感谢您的帮助,如果答案很明显,我们深表歉意。
罗里
【问题讨论】:
标签: windows batch-file ffmpeg drawtext