运动视频编辑

SKILL前端设计
前端设计 未标注权限 许可证不明确
安装这个技能

运动视频编辑技能。把跑步/晨跑/徒步/骑行/马拉松等运动素材(多段视频 + 照片)剪成单条成片,或为剪辑需求做方案咨询。覆盖素材体检与废镜头剔除(抖动/黑场/冻结/手指挡镜/模板特效头)、按内容定时间叙事顺序、竖屏与横屏成片、淡入淡出转场、统一调色、分段响度平衡与 BGM 铺底、照片快闪穿插、抽帧验收。触发词:剪辑视频素材为单条成片、视频剪辑与编辑需求咨询、运动视频剪辑、跑步视频成片、晨跑成片、素材拼接、去掉抖动镜头、统一调色、加背景音乐、图片快闪穿插。

一句话选型结论

按资料字段整理

运动视频编辑是前端设计类的 Agent Skill,安装方式未标注,权限级别未标注,许可证不明确,有可直接复制的安装命令。技能本质是给模型读的说明书,效果取决于模型与客户端;装完先用一个小任务验证,再放进正式流程。

分类前端设计 安装方式未标注 权限级别未标注权限 许可证许可证不明确
累计安装 未标注 本周 未标注
GitHub 星标 未标注 仓库 未标注
下载量 未标注 技能市场下载数
权限级别 未标注权限 安装前请确认风险范围
许可证 许可证不明确 未说明

安装

未标注
在支持 Skills 的客户端里执行,装完问一句「你有哪些技能」验证
skillhub install user_f8b6fc4c/sports-video-editing
  1. 1
    确认客户端支持

    确认你的客户端支持 Skills(Claude、Codex、Cursor 等),并升级到较新的版本。

  2. 2
    拿到技能文件

    执行上面的命令安装;也可以把仓库里的 SKILL.md 手动放进客户端的 skills 目录。

  3. 3
    刷新技能列表

    重新打开客户端,或刷新技能列表,让新放进来的技能被加载。

  4. 4
    验证是否生效

    问一句「你有哪些技能」,确认列表里出现它,再拿一个小任务试跑。

技能档案

前端设计
字段来自技能仓库与公开索引,中文说明由本站标注
作者 / 维护方user_f8b6fc4c仓库 未标注 · 版本 未标注
宿主客户端未标注技能可被这些客户端加载
安装方式未标注安装包 community
权限级别未标注权限安装前请确认风险范围
许可证未说明许可证不明确,商用前请自行确认条款
仓库可用性available技能仓库当前是否可访问
最近核验未标注上游最后核验时间 · 数据更新 1791681724
正文体量25.8 KBSKILL.md 原文大小,越大说明说明书写得越细

典型使用场景

3 类
按分类整理的常见用法,具体以 SKILL.md 为准
出页面与组件

按描述生成页面结构和组件草稿。

调整样式与布局

改间距、配色与响应式布局。

生成设计说明

把设计稿整理成开发能接的说明。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有标注权限级别,实际能做什么要装好后确认。
  • 许可证不明确,商用或二次分发前先到仓库确认条款。
  • 没有做站内核验,内容以作者仓库为准。
  • 技能只是说明书,实际效果取决于模型与客户端,装完先用小任务试一遍。

更适合

  • 需要在前端设计场景里给模型补一套做法的人。
  • 愿意先读一遍 SKILL.md、确认它会让模型做什么的人。

不太适合

  • 对许可证要求很严、必须明确可商用的人。
  • 只想装完就自动变强、不打算看说明书的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
技能权限级别安装方式累计安装宿主客户端安装命令
运动视频编辑当前 未标注权限 未标注 未标注 未标注 有
前端设计 只读 GitHub 仓库 882.3 万 Codex、Claude、Cursor 有
Vercel 组合模式 联网访问 GitHub 仓库 385.9 万 Codex、Claude、Cursor 有
Vercel React native skills 前端 只读 GitHub 仓库 246.9 万 Codex、Claude、Cursor 有
adapt 搜索 浏览器控制 GitHub 仓库 202.7 万 Codex、Claude、Cursor 有
使用我的浏览器 浏览器控制 GitHub 仓库 184.8 万 Codex、Claude、Cursor 有

SKILL.md 全文

25.8 KB
模型实际读到的说明书原文,来自技能仓库

运动视频编辑技能

把一堆运动素材(多段视频 + 照片)变成一条能直接发布的成片,或先给用户一份可执行的剪辑方案。本技能由「需求咨询」与「剪成单条成片」两条链路合并而成:咨询决定参数,执行按同一套标准落地。

两种使用模式

咨询模式 —— 用户只问「该怎么剪」「用什么参数」、不要求出片时:给判断 + 参数表 + 可执行命令,不动素材、不渲染。回答必须落到具体数值(分辨率、转场时长、LUFS、BGM 音量),不给模糊建议。

执行模式 —— 用户给了素材路径并要求成片时:走完下面「标准工作流」6 步,交付 mp4 + 说明(叙事顺序依据、剔除理由、音频实测值)。

环境前提

必装二进制:ffmpeg / ffprobe ≥ 6.0,需 full build(含 libx264、xfade、zoompan、loudnorm、afftdn、alphamerge)。脚本优先走 PATH,找不到会再自动扫 winget 安装目录(%LOCALAPPDATA%\Microsoft\WinGet\Packages)。
- Windows winget install --id Gyan.FFmpeg -e|macOS brew install ffmpeg|Linux apt install ffmpeg。

Python 依赖:同目录有 requirements.txt,装法 pip install -r requirements.txt。
- 硬依赖:numpy(体检、参考实现、特效)、Pillow(照片快闪、分屏、智能铺满);
- 强推荐:opencv-python-headless<5(人脸检测、人物居中、智能取景;别装 5.x,5.0 移除了 CascadeClassifier/HOGDescriptor)。未装时相关能力自动退化为居中裁切,不报错;
- 可选:rembg(仅 apply_fx cutout 抠像用)。

中文字体:脚本自动探测系统字体(Windows 微软雅黑/黑体 → macOS PingFang → Linux Noto Sans CJK)。也可用环境变量 WB_CJK_FONT 指定 .ttf/.ttc,或把字体放进 scripts/assets/font/。

编码:只用 CPU 软编 libx264 —— 老显卡(如 MX250 + 441.12 驱动)NVENC 会初始化失败并产出 0 字节文件。

目录约定:素材目录视为只读;中间产物写 <工作目录>/work/<日期>/,成片写 <工作目录>/out/。

装完先自检:cd scripts && python selftest.py —— 检查依赖、造测试素材、跑一遍最小出片流水线并校验产物。换机器/换环境务必先跑(--quick 只查依赖,秒级)。

依赖谁来装(AI 必读)

技能安装只是复制文件,平台不会跑任何安装脚本。所以脚本自带、依赖要装,分三类处理:

依赖 处理方式
本技能脚本(scripts/*.py) 零处理 —— 全部随包分发,无需下载任何外部代码
Python 包(numpy / Pillow / opencv) 缺了由 AI 征得用户同意后安装,见下方流程
FFmpeg / FFprobe 二进制 同上;属系统级安装,必须用户明确同意

缺依赖时的标准动作(不要跳过、不要静默安装):

  1. 先跑 python selftest.py --quick 拿到确切缺项(别凭猜测);
  2. 把缺什么、装什么、体积多大一次讲清,给出对应该平台的命令;
  3. 等用户同意再执行;用户不同意就走降级路径(见下);
  4. 用运行脚本的那个解释器安装,即 "{sys.executable}" -m pip install ...,不要用裸 pip —— 用户机器上常有多个 Python(venv / conda / 系统),裸 pip 装完可能 import 不到,表现为"装了还是报错";
  5. 装完重跑 --quick 复核,通过了再开工。

降级路径(用户不想装 / 装不上时也能出片):

  • 缺 opencv → 人脸检测、人物居中、智能取景退化为居中裁切,其余功能不受影响,不必阻塞;
  • 缺 rembg → 只是 apply_fx cutout 抠像不可用;
  • 缺 numpy / Pillow → 硬依赖,没有替代,必须装;
  • 缺 FFmpeg → 完全无法工作,必须装。

标准工作流(0 + 6 步,不要跳步)

第 0 步(强制前置):定画幅 —— 素材横竖混杂,开工前必须先向用户确认这条片子是横屏还是竖屏,不得由 AI 自行假设、不得先斩后奏。

  • 画幅按显示画幅判定(已处理手机竖拍的 rotation / display-matrix 元数据,横存竖显的素材不会误判);方形素材两边都算合规。
  • 用户没明确回答前,不要开始体检排序、不要试渲染。
  • 允许「缩放 + 智能裁剪」混用;禁止「裸旋转 + pad」混用(2026-10-09 用户修正,替代原"只吃同画幅"与"绝不旋转"的表述):
  • ❗禁止裸旋转 90°——竖屏 720x1280 旋转后尺寸虽变 1280x720,但画面内容侧躺(人物横躺、文字横倒),那是内容错乱不是"方向一致";
  • ✅ 正解是不旋转、只缩放+智能裁剪:竖→横 = scale 到 1280x2276 再沿高度裁 720 的窗口;横→竖 = scale 到 2276x1280 再沿宽度裁 720 的窗口,窗口位置由人脸/主体决定(smart_crop_video.py 已实现,等价于 ffmpeg crop+scale);
  • 流程:异画幅素材先 smart_crop_video.py --input x.mp4 --out reframed/ --width W --height H 归一化 → 归一化片段再进 edit_vertical.py 拼接(此时全是同画幅,不再需要 --allow-mixed);
  • 裁切取景遵循用户四原则:人脸锚上 1/3 + 头顶留白 / 无人脸回退(top/center/saliency)/ 人与动物优先于景物 / 不可靠片段写 _需要人工确认.md 等用户处理后重跑。
  1. 体检 — analyze_clips.py --src <素材目录>:拿到每段的 creation_time、抖动(双窗 RMS)、黑帧、冻结、响度、色彩六类指标,同时生成 1fps 全片缩略图条与首尾 3s 的 3fps 边界条。
  2. 定叙事顺序 — 用缩略图接触表看内容排序,不靠文件名或时间戳;据此判定每段可用区间。
  3. 写剪辑单 — 每段的 start:end 与剔除理由落到 CUTLIST(edit_narrative.py 是参考实现),理由必须能对上第 1 步的数据。
  4. 决策成片参数 — 画幅、转场、调色、音频、BGM、是否插照片段,按「推荐参数表」取值并显式传参;用户明确指定则覆盖。
  5. 渲染 — 通用出片用 edit_vertical.py(参数化,一条命令出片);需要逐段精修或多素材类型混排时,以 edit_narrative.py / edit_final.py 为参考实现改写。
  6. 验收 — 抽帧看画面(含转场处)+ 量响度(分段与全片),确认无废镜头、无削波、无断层,再交付。

工具速查

脚本 干什么 关键参数
scripts/analyze_clips.py 素材体检 + 缩略图条 --src(必填)--work
scripts/edit_vertical.py 主力出片:多段→竖屏/横屏成片,一步编码 --input(逗号分隔可自定义顺序)--trim "s:e,..." --transition --transition-duration --grade soft --audio-norm loudnorm --no-source-audio(不保留原声,只留 BGM)--bgm --bgm-volume --loudnorm --probe-only --dry-run --force(允许覆盖旧成片)--allow-mixed(仅异画幅例外时显式使用)
scripts/edit_narrative.py 按 CUTLIST 精剪(横屏参考实现) --src --out --dry-run
scripts/edit_final.py 视频 + 照片混排 + BGM(参考实现) --src --out --bgm --skip-photo-render --dry-run
scripts/make_flash.py 图片→快闪段(白闪 + Ken Burns) --images(逗号分隔,按播放顺序)--dur 0.35~0.4 --flash --zoom --width/--height(默认 1080x1920 竖屏,横屏传 1920x1080)--out
scripts/smart_crop.py 图片智能铺满:放大铺满 + 自动对齐重要元素(人脸锚定上 1/3 黄金构图,头顶留白硬约束绝不裁头;窗口自适应缩小最多 1.6x 换构图自由度) --input(图片/目录/逗号分隔)--width/--height --mode auto/fill/blur --fallback top/center/saliency(无人脸回退,默认 top=水平居中+上对齐)--face-y 0.33(人脸垂直锚点)--headroom 0.6(头顶留白)--zoom-cap 1.6 --focus-mode auto/person/saliency/center/manual --focus "x,y" --preview(必开)--report;无人脸+裁切量大 → 自动写 _需要人工确认.md 清单,提示用户人工裁剪/指定焦点后重跑再进后续剪辑
scripts/smart_crop_video.py 视频智能重构图(reframe):任意画幅视频 → 目标画幅,主体随时间平滑跟随(抽帧检测 → 轨迹平滑+限速 → ffmpeg crop 时间表达式一次编码)。横竖素材混用的正解 --input(视频/目录/逗号分隔)--width/--height --start/--dur --priority auto/person/scene(人/动物优先于景物,默认 auto)--focus-mode --focus "x,y"(manual 兜底)--fallback top/center/saliency --face-y 0.33 --headroom 0.6 --zoom-cap 1.6 --crop-mode auto/track/static(static=置信度最高帧参数用整段;auto=主体装得进一个窗口就 static)--static-slack 0.06 --vmax 200(运镜限速 px/s)--overflow strict/blur + --blur-threshold 2.5(放大超阈值→模糊垫底防马赛克)--detect-animals(仅猫脸)--sample-step 0.6 --crf 18 --preview --report;不可靠片段 → _需要人工确认.md;输出归一化片段喂 edit_vertical.py 拼接
scripts/make_pip.py 多段视频→分屏画中画段(无边框无间隔满幅铺满,关键帧入场) --clips(可少于格子数,自动循环)--starts --dur --layout quad4/main3/cols4/rows4/diamond4/para4/grid9(斜切类 diamond4/para4 仅横屏)--smart-center auto/person/scene/off(人物居中/景物居中)--enter zoom/slide/fade --cell-fill crop/blur --gap 0 --border 0 --allow-mixed(仅异画幅例外时显式使用)--out
scripts/apply_fx.py 单项效果器(24 项技巧库):变速/定格/运镜/抠像/色彩/文字/音频 详见 references/techniques.md;效果名见 --help
scripts/gen_bgm_morning.py stdlib 合成免版权 BGM --out --seconds --bpm
scripts/make_test_assets.py 造混规格测试素材验证管线 --out --force
scripts/selftest.py 自检:依赖 + 造素材 + 跑最小流水线 + 校验产物(新机器先跑这个) --quick(只查依赖)--keep(保留产物)
scripts/_common.py 公共工具(ffmpeg 定位 / 探测 / 字体 / 输出保护),被其他脚本 import 不单独运行(跑一下可打印环境自检)

> 所有出片脚本默认拒绝覆盖已存在的输出文件(防冲掉旧成片),确要覆盖请显式加 --force。

常用命令:

PY="python"   # 换成你本机 Python 解释器的实际路径(需已 pip install -r requirements.txt)
cd <skill>/scripts
# 0) 定画幅(强制第 0 步):先看素材画幅构成,再决定这条片子是横屏还是竖屏
"$PY" edit_vertical.py --input "G:/素材/0621晨跑" --probe-only
#     报告会列出每段画幅(横/竖 + 旋转角)与「主画幅原样用 / 异画幅先归一化」
# 1) 体检
"$PY" analyze_clips.py --src "G:/素材/0621晨跑" --work "G:/素材/0621晨跑/work"
# 2) 出片(--input 顺序即叙事顺序,--trim 与之一一对应)
"$PY" edit_vertical.py \
  --input "A.mp4,B.mp4,flashA.mp4,C.mp4,D.mp4" \
  --trim "0:12,0:6.8,0:,2.2:,1.9:" \
  --out "G:/素材/0621晨跑/out/成片_竖屏1080x1920.mp4" \
  --transition fade --transition-duration 0.8 \
  --grade soft --audio-norm loudnorm --bgm bgm.wav --bgm-volume 0.45
# 2b) 横屏成片(只吃横屏素材)
"$PY" edit_vertical.py --input "L1.mp4,L2.mp4" --width 1920 --height 1080 \
  --out "G:/素材/0621晨跑/out/成片_横屏1920x1080.mp4" --grade soft --transition dissolve
#     混画幅属例外:默认报错退出,由用户明确同意后才可加 --allow-mixed
# 3) 分屏画中画段(无边框无间隔,满幅铺满)-> 作为片头或结尾插进 --input 链
"$PY" make_pip.py \
  --clips "A.mp4,B.mp4,C.mp4,D.mp4" --starts "1.5,0.8,0.6,2.0" \
  --dur 5.0 --layout rows4 --enter zoom --lead 0.12 --stagger 0.22 --out pip.mp4
#    布局可选:quad4 四等分2x2 / main3 一大三小 / rows4 四行(竖屏画布) /
#              cols4 四列(横屏画布) / grid9 九宫格 /
#              diamond4 菱形对角4三角【仅横屏】 / para4 斜向平行四边形【仅横屏】
#    ⚠ 斜切类(diamond4 / para4)只在横屏画布使用;竖屏画布传这两个布局脚本会直接报错。
#      竖屏要满幅等分就用 rows4 / quad4 / main3 / grid9。
#    横屏素材配竖屏画布时 rows4 裁切最轻;quad4/grid9 格子窄,人物居中才适用
#    等分取中原则:默认 --smart-center auto,有人物人物居中、纯景物景物居中
#    素材塞不进格子时用 --cell-fill blur(画面完整 + 自身模糊填充,仍无间隙)
#    纯 BGM 版成片:edit_vertical.py 加 --no-source-audio --audio-norm none --bgm-volume 0.7 --loudnorm
# 4) 单段效果(24 项技巧,全部见 references/techniques.md)
"$PY" apply_fx.py slowmo  -i A.mp4 -o A_slow.mp4 --factor 0.5        # 0.5x 慢放+声音降调
"$PY" apply_fx.py speedup -i A.mp4 -o A_fast.mp4 --factor 1.8 --denoise
"$PY" apply_fx.py freeze  -i A.mp4 -o A_freeze.mp4 --at 2.5 --dur 1.0
"$PY" apply_fx.py zoom    -i A.mp4 -o A_zoom.mp4 --mode in --dur 3 --amount 0.25
"$PY" apply_fx.py text    -i A.mp4 -o A_txt.mp4 --text "周末晨跑" --anim pop --start 1
"$PY" apply_fx.py keying  -i green.mp4 -o overlay.mov --color 0x00FF00   # 抠像->透明素材
#    转场技巧:edit_vertical.py --transition fadewhite 0.2(闪白) / fade 0.4(叠化) /
#              wipeleft(线性蒙版) / circleopen(圆形放大)

推荐参数表(用户未指定就用这套;必须显式传给脚本)

> ⚠️ 本表是推荐值,不是脚本的 argparse 默认值 —— 两者刻意不同。举例:
> --grade 脚本默认 none(不传就不调色)、--bgm-volume 脚本默认 0.5、
> --transition-duration 脚本默认 0.6。AI 按本表决策时要把参数显式写进命令行,
> 否则实际出片会与本节承诺不符。

项 推荐 说明
画幅 必须先问用户(第 0 步);竖屏 1080×1920 @30fps / 横屏 1920×1080 @30fps 抖音/小红书/视频号走竖屏,B站/YouTube/横屏发布走横屏;主画幅素材原样用,异画幅素材走 smart_crop_video.py 裁切取景融入
异画幅素材竖屏化/横屏化 smart_crop_video.py 裁切取景(不旋转,缩放+智能裁剪) 人脸锚上 1/3 + 头顶留白;无人脸按显著性/回退;人与动物优先于景物;关键帧策略=开头/中间/结尾抽帧取最高置信度(static 默认 auto 判定,主体大幅移动才 track);16:9 源裁 9:16 只保留 32% 宽度,1080p 源画质 1.78x 放大(4K 源仅 1.27x),放大 >2.5x 建议加 --overflow blur 模糊垫底防马赛克;照片快闪段例外,用满幅 crop 保冲击力
转场 fade 0.8s(舒缓)/ 0.5s(紧凑) xfade 名:fade / slideleft / wipeleft / circleopen
调色 显式传 --grade soft(脚本默认 none) eq 轻降饱和 0.90 + 微暖 + 柔对比 + 轻锐化,全片烧同一条曲线
每段原声 loudnorm 归一到 -16 LUFS 段间落差压到 2dB 内;用户说「不保留原声」加 --no-source-audio
成片响度 默认不额外归一(实测约 -15~-16 LUFS);平台分发加 --loudnorm 到 -14 LUFS 峰值锁在 -0.5 dBFS 内,不削波
BGM 保留原声时 --bgm-volume 0.45;纯画面混剪 0.68~1.0 有口播 0.4~0.6
照片快闪 0.35~0.4s/张,白闪 0.1s,微缩放 10% 位置:片头做钩子 + 高潮后做呼吸,别整段堆在开头
分屏画中画 --layout quad4/main3/rows4/cols4/grid9(竖屏)|quad4/main3/cols4/diamond4/para4/grid9(横屏),默认无边框无间隔满幅铺满;斜切类 diamond4/para4 只在横屏画布使用;等分取中原则:--smart-center auto 有人物则人物居中、无人物景物居中;入场错峰 0.18~0.22s/格,--enter zoom(推近落位)/ slide / fade 放片头做钩子或结尾做回顾;diamond4/para4 用多边形遮罩(PIL 生成 + alphamerge),竖屏传这两个布局脚本直接报错;横屏素材配竖屏画布优先 rows4,quad4/grid9 裁切重,看素材人物位置;别用 360×640 低清素材进格子
单段效果 变速/定格/运镜/抠像/色彩/文字/音频 24 项 → apply_fx.py,参数与配方见 references/techniques.md 先单段加工再进 edit_vertical 合成;慢放默认声音降调,快进默认降噪
节奏 运动纪实默认舒缓:定场 10~12s,单段 4~9s 单段超 12s 且无信息量就掐

硬规则

  • 智能取中依赖 OpenCV:make_pip.py --smart-center 需要 pip install "opencv-python-headless<5"(别装 5.x,5.0 移除了 CascadeClassifier/HOGDescriptor);没装则自动退化为居中裁切,不报错。
  • 顺序靠看,不靠元数据:文件系统 mtime 拷贝即重置;creation_time 常常只是导出/落盘顺序(同批素材可能只差几秒)。必须用 1fps 接触表看内容定叙事序。接触表编号与文件名的对应关系要先核对画幅(横/竖、分辨率)再判断内容 —— 认反过一次就会把废镜头剪进片子。
  • 抖动判定用短窗:analyze_clips.py 的双窗残差里,0.5s 窗 = 摇镜 + 抖动总量,0.17s 窗(hf)才是纯抖动。能不能用看 hf:hf 持续 > 8px 的时段剔除;拿长窗数据判断会把跟拍摇镜误判成抖动。
  • 音频增益有上限:按峰值约束给静态增益(上限约 +20~22dB)。近无声素材(RMS -46dB)硬抬会炸噪底,正解是加轻 BGM 托底,不是无限抬。
  • 调色不硬拉基准:按「向中位数靠拢 60% + 上限 1.20」温和收敛;直接归一到基准会把白墙红跑道这类画面饱和度推爆。
  • filtergraph 里不写 Windows 绝对路径:盘符冒号是参数分隔符,fontfile=C\:/... 各种转义都会崩(实测 ffmpeg 9 直接报 No option name)。把字体复制进项目 assets/font/,用相对路径 + cwd=scripts/ 跑。
  • drawtext 文本用 textfile= + expansion=none:filtergraph 有两层转义,标题里同时出现 ' 和 : 时无论怎么转义都会拼坏(实测必炸);只出现 % 也会被当成 drawtext 扩展语法而报 Stray %。正解是把文本写进项目内临时文件、用相对路径 textfile= 引用并加 expansion=none(edit_vertical.py / apply_fx.py 已这么做,跑完自动清理临时文件)。
  • 画幅:允许缩放+智能裁剪混用,禁止裸旋转+pad 混用(用户 2026-10-08 定、2026-10-09 修正):开工前先与用户确认画幅(工作流第 0 步)。主画幅素材原样用;异画幅素材用 smart_crop_video.py 归一化(不旋转 90°——旋转让内容侧躺;正解是缩放+智能裁剪);判定用显示画幅(含 rotation 元数据修正);方形素材两边通用。edit_vertical.py / make_pip.py 仍硬拦截异画幅(退出码 1),所以归一化必须发生在拼接之前。
  • 视频跟踪裁切的画质账:16:9 源裁 9:16 只保留 32% 宽度。1080p 源要放大 1.78x(明显损画质,慎用);4K 源仅 1.27x(可接受)。竖屏成片优先用原生竖拍素材,横屏素材裁切是"有就比没有强"的补充。
  • 斜切分屏只在横屏用(用户 2026-10-08 定):diamond4(菱形对角)与 para4(斜向平行四边形)只在横屏画布使用,竖屏成片一律用 rows4 / quad4 / main3 / grid9。竖屏比例下斜切会切掉单格大半可用面积、人物易被斜线切脸;make_pip.py 已对该组合直接 SystemExit 报错,不要绕过。
  • 不擅自删用户素材;不擅自加 BGM(用户说「保留原声」就是不加);成片另存新文件,不覆盖旧版。
  • 渲染前先给方案表(段序、区间、剔除理由、参数)。单条成片渲染约 3~5 分钟;用户要改只重渲一次,别来回试。

参考文档

  • references/workflow.md — 分步操作细则、CUTLIST/TIMELINE 写法、多素材类型混排策略。
  • references/specs-and-qc.md — 成片规格、响度验收表、抽帧验收命令、交付命名规范。
  • references/pitfalls.md — 环境与踩坑清单(ffmpeg 安装、anullsrc 参数名、tile 拼图早 flush、中文路径清理等),卡住先查这里。

技巧选用原则(用户 2026-10-08 定,执行任何效果前先过一遍)

  1. 服务内容优先:特效、运镜只用来强化叙事,不堆砌;画面信息多时少用旋转/大幅移动。
  2. 同片风格统一:控制运镜、转场种类,不同时叠加推镜+旋转+蒙版扫动+闪白。
  3. 关键帧克制:优先慢速小幅动画(推镜 ≤8%、时长 ≥3s)。
  4. 转场宁缺毋滥:纪实/访谈用叠化 dissolve /硬切;快剪短视频才用闪白 fadewhite。
  5. 音画同步:慢放开 --pitch 声音降调;卡点对齐 BPM 网格。
  6. 不同时叠加多个强动态:旋转+推镜+蒙版扫动必乱。
  7. 分屏先主后辅:先出主视频,再单独生成画中画分屏段插进 --input 链。
  8. 抠像顺序:绿幕 keying > 智能 cutout;背景杂乱有毛边需手动修。
  9. 文字动画只用一种:渐显(--title-fade)或逐字弹出(apply_fx text --anim pop),不混用。
  10. 音频收尾三件套:--audio-denoise 降噪 → --audio-norm 平衡 → --audio-fade "in:out" 防爆音。
  11. 视觉稳定:快速旋转/大幅摇晃慎用(apply_fx rotate 建议 ≤5°)。
  12. 先统一调色再加特效:--grade soft 先行,避免色调割裂。
  13. 氛围效果轻微:--vignette 5~8(越大越轻)、blurbg 模糊适中,不遮主体。
  14. 斜切分屏只在横屏用(用户 2026-10-08 定):斜切类布局 diamond4(菱形对角)/ para4(斜向平行四边形)只在横屏画布使用;竖屏成片用满幅等分布局 rows4 / quad4 / main3 / grid9。make_pip.py 对竖屏 + 斜切组合直接报错,别绕过。
  15. 画幅:允许缩放+智能裁剪混用,禁止裸旋转+pad 混用(用户 2026-10-08 定、2026-10-09 修正):开工先问定横屏/竖屏;主画幅素材原样用,异画幅素材走 smart_crop_video.py 缩放+智能裁剪融入(不旋转),人脸锚上 1/3、无人脸回退、人与动物优先于景物、不可靠片段人工兜底;放大 >2.5x 用 --overflow blur 模糊垫底。照片快闪段不受此限(满幅 crop)。

精剪收尾参数(2026-10-08 实战验证)

  • edit_vertical.py:--vignette <n>(全片统一暗角,加在全片链)、--audio-denoise(各段 afftdn 降噪保人声)、--audio-fade "in:out"(全片首尾 afade 防爆音)、--title-fade <s>(标题渐显渐隐)。
  • make_flash.py:--trans dissolve|fade|fadewhite(图片间转场可选,纪实片用 dissolve 去白闪)。
  • apply_fx.py freeze:定格拉长画面时原声自动 apad 补等长静音,音画总长一致。
  • 参考配置(纪实晨跑精剪 48.7s 实测 -13.9 LUFS / 峰值 -0.7dBFS):
    --transition dissolve --transition-duration 0.4 --grade soft --vignette 6 --audio-denoise --audio-fade "1:1.5" --bgm-volume 0.42 --audio-norm loudnorm --loudnorm
  • 注意:crf 20 + 暗角渐变会把码率推到 ~15 Mbps(90MB/48s),在意体积用 crf 23(约减半)。

常见问题

5 问
答案由本站依据条目字段整理
运动视频编辑怎么安装?

在支持 Skills 的客户端里执行:skillhub install user_f8b6fc4c/sports-video-editing。安装方式为未标注。装完刷新技能列表或重开客户端。

运动视频编辑支持哪些客户端?

资料没有标注宿主客户端,但只要客户端支持 Skills(Claude、Codex、Cursor 等),一般都能加载。

运动视频编辑权限高吗,安全吗?

权限级别为未标注权限。安装前先看它会读取或写入哪些内容。

运动视频编辑收费吗?

本站不代收费用,也没有标注具体价格。是否收费取决于技能本身和所用的模型或客户端,正式使用前按作者说明确认。

运动视频编辑用什么许可证?

许可证标注为 未说明(许可证不明确)。商用或二次分发前请到仓库确认条款原文。

热门专题

按场景挑技能
全部专题 →

技能内容以作者仓库为准;分类、权限级别与许可证状态的中文说明为中文整理,最近核验 未标注。