You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

FFmpeg overlay滤镜between参数异常,无法按指定时间叠加PNG

FFmpeg 叠加PNG时间错误的修复方案

问题根源

你的代码存在两个关键错误:

  • enable 表达式语法错误:原代码写的 between(t,0,0) 结束时间等于开始时间,逻辑上不会显示图片;且字符串未闭合,缺少右括号和单引号,导致FFmpeg解析参数时出现异常,这也是修改后出现0-10秒显示的原因。
  • 参数拼接错误:-filter_complex 的字符串末尾没有空格和分隔逗号,直接和 -codec:a 连在一起,导致FFmpeg误解析参数。

修正后的代码

import subprocess

subprocess.call([
    'ffmpeg',
    '-y',
    '-i', 'out_1.mp4',
    '-i', 'overlay.png',
    '-filter_complex', "[0:v][1:v]overlay=0:0:enable='between(t,0,1)'",
    '-codec:a', 'copy',
    'out_2.mp4'
])

关键修正点

  • 将 enable='between(t,0,0)' 改为 enable='between(t,0,1)',明确指定图片显示的时间范围是0秒到1秒。
  • 补全 filter_complex 字符串的闭合单引号和右括号,同时在字符串末尾添加逗号,保证列表参数格式正确,避免和后续参数混淆。

内容的提问来源于stack exchange,提问作者PiotrK

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 05:50:25