Files
hmo 04db423416 Initial commit: skills library
- 70 skills with code and documentation
- Add .gitignore (ignore __pycache__, output/, temp/, venv/)
- Clean up test intermediates and caches
2026-04-26 19:27:40 +08:00

167 lines
4.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
name: video-analysis
description: 视频内容分析技能,支持视频转录,内容分析,知识提取。当用户提到分析视频、视频转录、提取视频内容时触发。
---
# 视频分析技能
## 概述
| 能力 | 说明 | 脚本 |
|-----|------|------|
| 视频转录 | 使用Whisper等工具转录视频内容 | `scripts/transcribe_video.py` |
| 快速转录 | 备用转录方案,支持多种方法 | `scripts/quick_transcribe.py` |
| 内容分析 | 结构化分析视频内容,提取关键信息 | `scripts/analyze_video_content.py` |
| 简单转录 | 基础转录功能 | `scripts/simple_transcribe.py` |
| 音频转MP3 | 使用edge-tts生成音频 | `scripts/text_to_speech.py` |
## 配置
### 环境要求
1. **FFmpeg**: 用于提取音频
2. **Whisper/faster-whisper**: 用于语音识别
3. **edge-tts**: 用于生成音频(微软TTS
4. **Python依赖**: `openai-whisper`, `faster-whisper`, `edge-tts`, `pydub`, `moviepy`
### 安装依赖
```bash
pip install openai-whisper faster-whisper edge-tts pydub moviepy
```
### 推荐:使用 faster-whisper(更快)
```bash
# 比原版 Whisper 快10倍
pip install faster-whisper
# 使用示例
python -c "from faster_whisper import WhisperModel; model = WhisperModel('tiny', device='cpu', compute_type='int8'); segments, info = model.transcribe('audio.wav', language='zh'); text = ' '.join([s.text for s in segments]); print(text)"
```
### 推荐:使用 edge-tts 生成音频
```bash
pip install edge-tts
# 使用示例
import edge_tts
import asyncio
async def main():
with open('script.txt', 'r', encoding='utf-8') as f:
text = f.read()
communicate = edge_tts.Communicate(text, 'zh-CN-XiaoxiaoNeural')
await communicate.save('output.mp3')
asyncio.run(main())
```
## 执行规范
### 视频文件预处理
1. **文件名处理**: 避免中文特殊字符和引号
2. **编码检查**: 确保文件可正常读取
3. **路径处理**: 使用绝对路径或相对路径
### 转录流程
1. 提取音频(WAV格式,16kHz,单声道)
2. 加载Whisper模型(自动下载tiny/base模型)
3. 执行转录
4. 保存文本结果
### 分析流程
1. 读取转录文本
2. 结构化分析内容
3. 提取关键概念、技术、原理
4. 生成分析报告
## 快速使用
### 基础转录
```bash
python .opencode/skills/video-analysis/scripts/transcribe_video.py "video.mp4"
```
### 快速转录(备用方案)
```bash
python .opencode/skills/video-analysis/scripts/quick_transcribe.py "video.mp4"
```
### 内容分析
```bash
python .opencode/skills/video-analysis/scripts/analyze_video_content.py "视频标题" "transcription.txt"
```
## 故障排除
### 常见问题
1. **Whisper模型下载失败**: 检查网络连接,或手动下载模型
2. **FFmpeg未安装**: 安装FFmpeg并添加到PATH
3. **内存不足**: 使用tiny模型而非base模型
4. **中文识别不准**: 尝试base模型或添加语言参数
### 备用方案
如果本地Whisper太慢或不可用:
1. 使用在线API(需配置API Key
2. 使用其他开源工具(FunASR等)
3. 手动转录关键部分
## 应用场景
### 知识提取
- 教育视频内容分析
- 技术教程转录
- 演讲/讲座内容整理
### 内容分析
- 心理学视频技巧分析
- 商业策略视频解析
- 技能教学视频总结
### 研究用途
- 媒体内容分析
- 语言模式研究
- 信息传播研究
## 输出格式
### 转录文本
- 纯文本格式
- 包含时间戳(可选)
- 分段清晰
### 分析报告
- JSON结构化数据
- 关键概念提取
- 技术要点总结
- 伦理风险评估
## 最佳实践
1. **文件命名**: 使用英文名,避免特殊字符
2. **路径管理**: 保持工作目录整洁
3. **模型选择**: 根据需求选择tiny/base模型(faster-whisper推荐tiny
4. **结果验证**: 人工检查关键部分准确性
5. **知识沉淀**: 转录结果存入知识库系统
6. **音频生成**: 生成MP3前先确保文本是纯文本(无MD格式)
## 常见问题
### Whisper转录太慢
- 使用 faster-whisper 替代,比原版快10倍
- 使用 tiny 模型而非 base 模型
### 生成MP3有杂音
- 确保输入文本是纯文本,无井号等特殊字符
- 使用 edge-tts 的 Xiaoxiao 语音效果较好
## 相关技能
- `knowledge-base-builder`: 知识库建设框架
- `file-reader`: 文档读写编辑
- `log-analyzer`: 日志分析技能
---
*技能版本: v1.1.0*
*创建日期: 2026-02-19*
*更新日期: 2026-02-21*
*新增: faster-whisper, edge-tts*