← ClaudeAtlas

smart-video-editorlisted

把多段原始素材剪成一条成片——先用视觉模型看懂每段画面拍了什么、哪几秒可用,再决定取舍、顺序、时长、调色和 BGM,最后用 ffmpeg 渲染。适用于"我给你几段视频,帮我剪一条小红书/朋友圈/vlog"这类需求。当用户提供视频文件并希望剪辑、拼接、配乐、调色、转成竖屏时使用。不做 AI 生成视频。
Fagan1024/smart-video-editor · ★ 2 · Code & Development · score 75
Install: claude install-skill Fagan1024/smart-video-editor
# Smart Video Editor 纯剪辑。核心区别在于**先看懂素材再动手**,而不是按文件名顺序机械拼接。 ## 三个阶段 ### 阶段一:看懂素材 ```bash python3 {baseDir}/scripts/probe.py <素材目录或文件列表> ``` 拿到每段的时长、分辨率、朝向、帧率、有无音轨。 然后**对每一段抽帧,逐帧用 `vision_analyze` 看**: ```bash python3 {baseDir}/scripts/extract_frames.py <video> /tmp/sve-frames --interval 1.5 --max 8 ``` 帧文件名形如 `clip1__t3.5.jpg`,`t` 后面就是它在原片中的秒数——视觉判断能直接映射回时间轴。 对每帧问这些(一次问清,不要分多次): > 这一帧里是什么内容(主体、场景、动作)?构图如何?是否存在下列问题:明显模糊/失焦、剧烈抖动、过曝或死黑、镜头遮挡、无内容的空镜、正在转场的中间态?给画面可用性打 1-5 分。 **素材多时用 `session_spawn` 并行分析**,每个子任务负责 1-2 段,让它把结论按 `{时间戳: 内容, 可用性, 问题}` 结构化返回。 ### 阶段二:做剪辑决策 拿到全部画面信息后,自己判断这几件事——这是这个 skill 真正的价值所在,不要跳过: **取舍**:可用性低于 3 分的时间段直接不要。一段 10 秒素材里只有 4 秒有内容,就只取那 4 秒。 **顺序**:按叙事逻辑排,不要按文件名。常用结构: - 空间叙事:全景开场 → 中景 → 细节特写 → 人物/收尾 - 时间叙事:按事件发生顺序 - 情绪叙事:平静起 → 高潮 → 回落收尾 **节奏**:短视频(15-30 秒)单段 1.5-3 秒;慢节奏 vlog 可以 4-6 秒。同类画面连续出现要缩短,避免观感重复。有 BGM 时让切点尽量落在节拍上。 **调性**:根据画面内容选 `look`,不要默认套一个。 **竖屏处理**:横屏素材进竖屏成片时,主体在中间用 `crop`,主体偏移或不能裁的用 `blur_pad`。 把决策写成 EDL(JSON): ```json { "output": "/绝对路径/成片.mp4", "aspect": "9:16", "fps": 30, "look": "film", "fill_mode": "crop", "transition": { "type": "dissolve", "duration": 0.4 }, "keep_original_audio": false, "bgm": { "path": "/绝对路径/bgm.mp3", "volume": 0.85, "start": 0, "fade_in": 1.0, "fade_out": 1.5, "original_volume": 0.25 }, "title": { "ass": "/绝对路径/title.ass", "fonts_dir": "~/.cola/assets/fonts" }, "segments": [ { "src": "/绝对路径/clip1.mov", "in": 2.4, "out": 5.1 }, { "src": "