用 FFmpeg 给视频添加淡入淡出效果
一条命令让视频从黑场淡入、结尾淡出到黑场,画面和声音同步过渡,剪辑衔接更专业。
执行 ffmpeg -i input.mp4 -vf "fade=t=in:st=0:d=1,fade=t=out:st=8:d=2" -af "afade=t=in:st=0:d=1,afade=t=out:st=8:d=2" output.mp4,即开头淡入 1 秒、第 8 秒起淡出 2 秒。
01命令
命令
$ ffmpeg -i input.mp4 -vf "fade=t=in:st=0:d=1,fade=t=out:st=8:d=2" -af "afade=t=in:st=0:d=1,afade=t=out:st=8:d=2" output.mp402作用说明
fade 滤镜控制画面:t=in 表示从 st 时刻起用 d 秒从黑场淡入,t=out 则逐渐变暗至黑场。必须搭配音频版的 afade 一起使用,否则会出现画面淡出而声音仍是满音量的突兀效果。淡出的 st 应设为视频总时长减去淡出时长——例如 10 秒的视频做 2 秒淡出就填 st=8——多个滤镜用逗号串联在同一条 -vf/-af 参数里即可。
03风险
!注意: st 从视频开头以秒计算;如果淡出起点超过了视频实际时长,淡出效果不会出现——建议先用 ffprobe 查看时长再填参数。
04撤销
✓无需撤销——该命令不会改变持久状态。
05来源
- FFmpeg Filters Documentation (fade, afade)依据: The fade filter accepts type in/out, start time st and duration d for video; afade applies the same to audio.
- ffmpeg(1) — Linux manual page依据: Documents combining multiple filters with commas in -vf and -af chains.
最后验证: 2026-09-18 · 分类: 媒体