docs(zh-CN): update

This commit is contained in:
neo
2026-03-13 17:45:44 +08:00
parent f548ca3e19
commit 4c0107a322
88 changed files with 16872 additions and 280 deletions

View File

@@ -0,0 +1,317 @@
---
name: video-editing
description: AI辅助的视频编辑工作流程用于剪辑、构建和增强实拍素材。涵盖从原始拍摄到FFmpeg、Remotion、ElevenLabs、fal.ai再到Descript或CapCut最终润色的完整流程。适用于用户想要编辑视频、剪辑素材、制作vlog或构建视频内容的情况。
origin: ECC
---
# 视频编辑
针对真实素材的AI辅助编辑。非根据提示生成。快速编辑现有视频。
## 何时激活
* 用户想要编辑、剪辑或构建视频素材
* 将长录制内容转化为短视频内容
* 从原始素材构建vlog、教程或演示视频
* 为现有视频添加叠加层、字幕、音乐或画外音
* 为不同平台YouTube、TikTok、Instagram重新构图视频
* 用户提到“编辑视频”、“剪辑这个素材”、“制作vlog”或“视频工作流”
## 核心理念
当你不再要求AI创建整个视频而是开始使用它来压缩、构建和增强真实素材时AI视频编辑就变得有用了。价值不在于生成。价值在于压缩。
## 处理流程
```
Screen Studio / raw footage
→ Claude / Codex
→ FFmpeg
→ Remotion
→ ElevenLabs / fal.ai
→ Descript or CapCut
```
每个层级都有特定的工作。不要跳过层级。不要试图让一个工具完成所有事情。
## 层级 1采集Screen Studio / 原始素材)
收集源材料:
* **Screen Studio**:用于应用演示、编码会话、浏览器工作流程的精致屏幕录制
* **原始摄像机素材**vlog素材、采访、活动录制
* **通过VideoDB的桌面采集**:具有实时上下文的会话录制(参见 `videodb` 技能)
输出:准备进行组织的原始文件。
## 层级 2组织Claude / Codex
使用Claude Code或Codex进行
* **转录和标记**:生成转录稿,识别主题和要点
* **规划结构**:决定保留内容、剪切内容、确定顺序
* **识别无效片段**:查找停顿、离题、重复拍摄
* **生成编辑决策列表**:用于剪辑的时间戳、保留的片段
* **搭建FFmpeg和Remotion代码**:生成命令和合成
```
Example prompt:
"Here's the transcript of a 4-hour recording. Identify the 8 strongest segments
for a 24-minute vlog. Give me FFmpeg cut commands for each segment."
```
此层级关乎结构,而非最终的创意品味。
## 层级 3确定性剪辑FFmpeg
FFmpeg处理枯燥但关键的工作分割、修剪、连接和预处理。
### 按时间戳提取片段
```bash
ffmpeg -i raw.mp4 -ss 00:12:30 -to 00:15:45 -c copy segment_01.mp4
```
### 根据编辑决策列表批量剪辑
```bash
#!/bin/bash
# cuts.txt: start,end,label
while IFS=, read -r start end label; do
ffmpeg -i raw.mp4 -ss "$start" -to "$end" -c copy "segments/${label}.mp4"
done < cuts.txt
```
### 连接片段
```bash
# Create file list
for f in segments/*.mp4; do echo "file '$f'"; done > concat.txt
ffmpeg -f concat -safe 0 -i concat.txt -c copy assembled.mp4
```
### 创建代理文件以加速编辑
```bash
ffmpeg -i raw.mp4 -vf "scale=960:-2" -c:v libx264 -preset ultrafast -crf 28 proxy.mp4
```
### 提取音频用于转录
```bash
ffmpeg -i raw.mp4 -vn -acodec pcm_s16le -ar 16000 audio.wav
```
### 标准化音频电平
```bash
ffmpeg -i segment.mp4 -af loudnorm=I=-16:TP=-1.5:LRA=11 -c:v copy normalized.mp4
```
## 层级 4可编程合成Remotion
Remotion将编辑问题转化为可组合的代码。用它来处理传统编辑器让工作变得痛苦的事情
### 何时使用Remotion
* 叠加层:文本、图像、品牌标识、下三分之一字幕
* 数据可视化:图表、统计数据、动画数字
* 动态图形:转场、解说动画
* 可组合场景:跨视频可重复使用的模板
* 产品演示带注释的截图、UI高亮
### 基本的Remotion合成
```tsx
import { AbsoluteFill, Sequence, Video, useCurrentFrame } from "remotion";
export const VlogComposition: React.FC = () => {
const frame = useCurrentFrame();
return (
<AbsoluteFill>
{/* Main footage */}
<Sequence from={0} durationInFrames={300}>
<Video src="/segments/intro.mp4" />
</Sequence>
{/* Title overlay */}
<Sequence from={30} durationInFrames={90}>
<AbsoluteFill style={{
justifyContent: "center",
alignItems: "center",
}}>
<h1 style={{
fontSize: 72,
color: "white",
textShadow: "2px 2px 8px rgba(0,0,0,0.8)",
}}>
The AI Editing Stack
</h1>
</AbsoluteFill>
</Sequence>
{/* Next segment */}
<Sequence from={300} durationInFrames={450}>
<Video src="/segments/demo.mp4" />
</Sequence>
</AbsoluteFill>
);
};
```
### 渲染输出
```bash
npx remotion render src/index.ts VlogComposition output.mp4
```
有关详细模式和API参考请参阅[Remotion文档](https://www.remotion.dev/docs)。
## 层级 5生成资产ElevenLabs / fal.ai
仅生成所需内容。不要生成整个视频。
### 使用ElevenLabs进行画外音
```python
import os
import requests
resp = requests.post(
f"https://api.elevenlabs.io/v1/text-to-speech/{voice_id}",
headers={
"xi-api-key": os.environ["ELEVENLABS_API_KEY"],
"Content-Type": "application/json"
},
json={
"text": "Your narration text here",
"model_id": "eleven_turbo_v2_5",
"voice_settings": {"stability": 0.5, "similarity_boost": 0.75}
}
)
with open("voiceover.mp3", "wb") as f:
f.write(resp.content)
```
### 使用fal.ai生成音乐和音效
使用 `fal-ai-media` 技能进行:
* 背景音乐生成
* 音效用于视频转音频的ThinkSound模型
* 转场音效
### 使用fal.ai生成视觉效果
用于不存在的插入镜头、缩略图或B-roll素材
```
generate(app_id: "fal-ai/nano-banana-pro", input_data: {
"prompt": "professional thumbnail for tech vlog, dark background, code on screen",
"image_size": "landscape_16_9"
})
```
### VideoDB生成式音频
如果配置了VideoDB
```python
voiceover = coll.generate_voice(text="Narration here", voice="alloy")
music = coll.generate_music(prompt="lo-fi background for coding vlog", duration=120)
sfx = coll.generate_sound_effect(prompt="subtle whoosh transition")
```
## 层级 6最终润色Descript / CapCut
最后一层由人工完成。使用传统编辑器进行:
* **节奏调整**:调整感觉太快或太慢的剪辑
* **字幕**:自动生成,然后手动清理
* **色彩分级**:基本校正和氛围调整
* **最终音频混音**:平衡人声、音乐和音效的电平
* **导出**:平台特定的格式和质量设置
品味体现在此。AI清理重复性工作。你做出最终决定。
## 社交媒体重新构图
不同平台需要不同的宽高比:
| 平台 | 宽高比 | 分辨率 |
|----------|-------------|------------|
| YouTube | 16:9 | 1920x1080 |
| TikTok / Reels | 9:16 | 1080x1920 |
| Instagram Feed | 1:1 | 1080x1080 |
| X / Twitter | 16:9 或 1:1 | 1280x720 或 720x720 |
### 使用FFmpeg重新构图
```bash
# 16:9 to 9:16 (center crop)
ffmpeg -i input.mp4 -vf "crop=ih*9/16:ih,scale=1080:1920" vertical.mp4
# 16:9 to 1:1 (center crop)
ffmpeg -i input.mp4 -vf "crop=ih:ih,scale=1080:1080" square.mp4
```
### 使用VideoDB重新构图
```python
from videodb import ReframeMode
# Smart reframe (AI-guided subject tracking)
reframed = video.reframe(start=0, end=60, target="vertical", mode=ReframeMode.smart)
```
## 场景检测与自动剪辑
### FFmpeg场景检测
```bash
# Detect scene changes (threshold 0.3 = moderate sensitivity)
ffmpeg -i input.mp4 -vf "select='gt(scene,0.3)',showinfo" -vsync vfr -f null - 2>&1 | grep showinfo
```
### 用于自动剪辑的静音检测
```bash
# Find silent segments (useful for cutting dead air)
ffmpeg -i input.mp4 -af silencedetect=noise=-30dB:d=2 -f null - 2>&1 | grep silence
```
### 精彩片段提取
使用Claude分析转录稿 + 场景时间戳:
```
"Given this transcript with timestamps and these scene change points,
identify the 5 most engaging 30-second clips for social media."
```
## 每个工具最擅长什么
| 工具 | 优势 | 劣势 |
|------|----------|----------|
| Claude / Codex | 组织、规划、代码生成 | 不是创意品味层 |
| FFmpeg | 确定性剪辑、批量处理、格式转换 | 无可视化编辑UI |
| Remotion | 可编程叠加层、可组合场景、可重复使用模板 | 对非开发者有学习曲线 |
| Screen Studio | 即时获得精致的屏幕录制 | 仅限屏幕采集 |
| ElevenLabs | 人声、旁白、音乐、音效 | 不是工作流程的核心 |
| Descript / CapCut | 最终节奏调整、字幕、润色 | 手动操作,不可自动化 |
## 关键原则
1. **编辑,而非生成。** 此工作流程用于剪辑真实素材,而非根据提示创建。
2. **先结构,后风格。** 在接触任何视觉元素之前先在层级2确定好故事结构。
3. **FFmpeg是支柱。** 枯燥但关键。长素材在此变得易于管理。
4. **Remotion用于可重复性。** 如果你会多次执行某项操作就将其制作成Remotion组件。
5. **选择性生成。** 仅对不存在的资产使用AI生成而非所有内容。
6. **品味是最后一层。** AI清理重复性工作。你做出最终的创意决定。
## 相关技能
* `fal-ai-media` — AI图像、视频和音频生成
* `videodb` — 服务器端视频处理、索引和流媒体
* `content-engine` — 平台原生内容分发