gpt4 book ai didi

video - 将多个 ffmpeg 命令合二为一

转载 作者:行者123 更新时间:2023-12-04 23:12:08 24 4
gpt4 key购买 nike

我正在尝试自动化工作中的一些步骤。我的任务是在我们的讲座视频开头添加免责声明,在开始和结束时将讲座视频修剪几秒钟(淡入和淡出),并在我们的讲座视频顶部添加一个 Logo 。我可以做到这一点,但不幸的是只能在单独的步骤中。我想要实现的是用一个命令完成所有步骤。
我能够将一些命令组合起来,但不能将一个命令与以下命令组合起来。
我不知道我是否对 FFmpeg 期望过高。
在此先感谢您的任何建议。
这是我的代码:
创建带有淡入和淡出的免责声明

ffmpeg -i media/disclaimer.jpg -filter_complex "[0:v]fps=fps=30,loop=loop=450:size=30:start=0[v0];[v0]fade=t=in:st=0:d=1,fade=t=out:st=14:d=1" disclaimer.mp4
在免责声明中添加空音轨
ffmpeg -i disclaimer.mp4 -f lavfi -i aevalsrc=0 -shortest -y disclaimer_final.mp4 
为讲座视频添加 Logo
ffmpeg -i lecture.mp4 -i logo.png -filter_complex "overlay=0:0" lecture_logo.mp4
修剪讲座视频
ffmpeg -ss 00:00:05 -i lecture_logo.mp4 -to 00:45:32 -async 1 lecture_out.mp4
为讲座视频添加淡入淡出
ffmpeg -i lecture_out.mp4 -filter_complex "[0:v]fade=t=in:st=0:d=2,fade=t=out:st=2730:d=2;[0:a]afade=t=in:st=0:d=2,afade=t=out:st=2730:d=2" lecture_final.mp4
最后连接免责声明和讲座视频
ffmpeg -i disclaimer_final.mp4 -i lecture_final.mp4 -filter_complex "[0:v][0:a][1:v][1:a] concat=n=2:v=1:a=1 [outv] [outa]" -map "[outv]" -map "[outa]" final.mp4

最佳答案

我已经解决了,但不得不做出妥协。如前两个步骤所示,我将使用它的 mp4 输出,而不是生成免责声明并添加虚拟音轨。其余四个步骤已合并到以下命令中:

ffmpeg -i lecture.mp4 -i logo.png -i disclaimer.mp4 -filter_complex \
"[0:v]trim=start=5:end=2732,setpts=PTS-STARTPTS[v0]; \
[0:a]atrim=start=5:end=2732,asetpts=PTS-STARTPTS[a0]; \
[v0][1:v]overlay=0:0[vv0]; \
[vv0]fade=t=in:st=0:d=2,fade=t=out:st=2725:d=2[vvv0]; \
[a0]afade=t=in:st=0:d=2,afade=t=out:st=2725:d=2[aa0]; \
[2:v][2:a][vvv0][aa0]concat=n=2:v=1:a=1[vv][aa]" \
-map [vv] -map [aa] output.mp4

关于video - 将多个 ffmpeg 命令合二为一,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64252787/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com