mcpField
F
ffmpeg-animation-timing-reference

ffmpeg-animation-timing-reference

github.com/josiahsiegel创意与媒体5996 次安装19 周前更新
代码仓库

关于 ffmpeg-animation-timing-reference

这是一份 FFmpeg 滤镜与 ASS/SSA 字幕的计时参考技能,适用于制作动画、转场、字幕和同步效果,重点区分秒、帧、厘秒与毫秒等单位。

主要功能

  1. 01各类 FFmpeg 滤镜的计时单位
  2. 02ASS/SSA 标签单位区别
  3. 03时长与帧率参考
  4. 04平台与同步参考
  5. 05缓动和动画模式
  6. 06可直接使用的计时片段

适用场景

  1. 01为字幕或转场选择时长
  2. 02将 zoompan 帧数换算为秒
  3. 03避免 ASS 卡拉 OK 与动画标签的计时错误
  4. 04依据帧率或同步容差检查动画时序

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/josiahsiegel/claude-plugin-marketplace --skill ffmpeg-animation-timing-reference

安装后在 Claude Code 中输入/ffmpeg-animation-timing-reference确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
caption-readability.md
copy-paste-patterns.md
easing-and-springs.md
optimal-durations.md
platform-and-sync.md

详细介绍

关键指南

Windows 文件路径要求

强制要求:在 Windows 上始终使用反斜杠表示文件路径

在 Windows 上使用 Edit 或 Write 工具时,必须在文件路径中使用反斜杠(\),而不是正斜杠(/)。

文档指南

除非用户明确要求,否则绝不要创建新的文档文件。


FFmpeg 动画时长参考

对于 FFmpeg 滤镜和 ASS/SSA 字幕,本指南是回答“这个时长值的单位是什么?”和“这个动画应该持续多久?”的权威依据。涉及动画、转场、字幕或同步时长时,请使用本指南。

快速参考卡

上下文单位示例
FFmpeg 滤镜(fade、xfade、drawtext)秒duration=1.5
FFmpeg zoompan 的 d= 参数帧d=150(150 帧)
FFmpeg 时间变量 t秒enable='gte(t,2)'
ASS 卡拉 OK 标签(\k、\kf、\ko)百分之一秒{\k100} = 1 秒
ASS 动画标签(\t、\fad、\move)毫秒\t(0,500,...) = 0.5 秒
ASS 对白时间戳H:MM:SS.CC0:00:05.50

关键:ASS 有两种不同的时间单位!

**这是字幕动画中最常见的混淆来源。**卡拉 OK 标签使用百分之一秒;其他所有标签(动画、淡入淡出、移动)都使用毫秒。混淆两者会导致动画速度快 10 倍或慢 10 倍。

ASS/SSA 时间单位辨别
标签类型单位换算示例
卡拉 OK 标签(\k、\kf、\ko、\K)百分之一秒(1/100 秒)x 100{\k50} = 0.5 秒
动画标签(\t)毫秒(1/1000 秒)x 1000\t(0,200,...) = 0.2 秒
淡入淡出标签(\fad)毫秒x 1000\fad(300,0) = 0.3 秒淡入
移动标签(\move)毫秒x 1000\move(x1,y1,x2,y2,0,500) = 0.5 秒
对白时间戳H:MM:SS.CC百分之一秒0:00:01.50 = 1.5 秒
相同的时长,不同的单位
; Both animations last 0.5 seconds but use DIFFERENT UNITS:

; Karaoke: 50 CENTISECONDS = 0.5 seconds
{\k50}Word

; Animation: 500 MILLISECONDS = 0.5 seconds
{\t(0,500,\fscx120)}Word

完整的卡拉 OK、淡入淡出和移动示例,以及百分之一秒与毫秒的换算表,请参阅 references/copy-paste-patterns.md。


FFmpeg 时间单位(速查表)

大多数 FFmpeg 滤镜接受秒(浮点数)。一个重要的例外是 zoompan d=,其单位是帧。

滤镜 / 上下文参数单位
fade / afaded、st秒
xfade / acrossfadeduration、offset秒
drawtextt 变量、enable秒
zoompand帧
zoompanz= 中的 t 变量秒
trimstart、end秒
fpsfps帧/秒
Zoompan 时长:单位是帧,而不是秒
# d= is FRAMES. For a 2-second zoom:
# 30fps: d=60   (60 frames / 30fps)
# 60fps: d=120  (120 frames / 60fps)
# Formula: frames = seconds * fps
ffmpeg -i input.mp4 -vf "zoompan=z='1.2':d=60:s=1080x1920" output.mp4

对于病毒式传播风格的开场效果,始终使用 d=1(逐帧处理),并通过类似 if(lt(t,0.5),...) 的时间条件来限制效果。设置 d=60 会冻结视频的其余部分。完整的开场公式和各平台专用缩放参数请参阅 references/optimal-durations.md。


核心工作流

  1. 确定上下文(FFmpeg 滤镜、ASS 卡拉 OK、ASS 动画或对白时间戳),并查看快速参考卡以确认单位。
  2. 根据感知效果(references/optimal-durations.md)和平台节奏(references/platform-and-sync.md)选择目标时长。
  3. 如果数值较短(<300ms),请使用 references/platform-and-sync.md 中的帧安全表,将其调整到帧边界。
  4. 如果需要让运动更精致,请选择缓动曲线(references/easing-and-springs.md)。
  5. 根据感知阈值和同步容差进行验证,确保动画不会低于闪烁阈值,也不会破坏口型同步。
  6. 从 references/copy-paste-patterns.md 中复制匹配的模式,并调整参数。

激活指南

根据问题加载相应的参考资料:

问题类型加载
“这个字幕 / 转场 / 钩子应该持续多久?”references/optimal-durations.md
“为什么我的字幕感觉太快 / 不符合 WCAG?”references/caption-readability.md
“这适用于 TikTok / Shorts / Reels / 广播吗?”references/platform-and-sync.md
“我的口型同步 / 节拍同步是否在容差范围内?”references/platform-and-sync.md
“这个时长在 30fps / 60fps 下看起来流畅吗?”references/platform-and-sync.md
“我应该使用哪种缓动曲线 / 弹簧效果?”references/easing-and-springs.md
“给我一段可直接粘贴的计时片段。”references/copy-paste-patterns.md

时长速查表

时长用途
50-100ms故障效果、闪光
100-200ms快速 UI 反馈
200-300ms标准动画
300-500ms流畅转场
500-800ms明显的移动
800-1500ms戏剧性效果
1.5-3s字幕显示
3-5s长文本阅读

硬性下限:WCAG 要求字幕时长至少为 1.5s。最低可感知动画时长在 30fps 下约为 67ms,在 60fps 下约为 33ms。口型同步容差为 +/-80ms(目标为 +/-40ms)。


参考资料索引

技能内参考资料(按需加载):

  • references/optimal-durations.md - 人类感知阈值、文本动画、视频转场、钩子效果和卡拉 OK 的建议时长;病毒式视频的 1.3s 注意力阈值,以及特定平台的缩放参数 / 钩子公式。
  • references/caption-readability.md - 阅读速度标准(WPM)、字幕时长公式、Python 实现、WCAG 2.2 无障碍要求。
  • references/platform-and-sync.md - TikTok / YouTube Shorts / Instagram Reels / 广播的计时配置文件、音视频同步容差(口型同步、音乐、卡拉 OK、SFX)、帧率精度和逐帧安全时长表。
  • references/easing-and-springs.md - Material Design 计时、FFmpeg 缓动表达式、完整缓动公式(线性、二次、三次、指数、正弦、圆形、弹性、弹跳、回退)、弹簧物理(质量-弹簧-阻尼器)、振荡 / 波形 / 利萨如公式、伪随机噪声、抖动 / 震动、淡入淡出 / 缩放 / 位置 / 旋转速查指南、生物节律、来源。
  • references/copy-paste-patterns.md - 可直接粘贴的 FFmpeg 和 ASS 计时片段、帧率转换表、zoompan 时长计算。

相关技能

  • ffmpeg-karaoke-animated-text - 卡拉 OK 字幕制作
  • viral-video-animated-captions - CapCut 风格动画
  • ffmpeg-transitions-effects - 视频转场
  • viral-video-hook-templates - 钩子计时模式
  • ffmpeg-captions-subtitles - 字幕基础知识

评论

支持 Markdown