Install
openclaw skills install video-note-maker提取视频音频,分段转写生成详细笔记和整理版,自动发送邮件通知,实现视频到笔记的完整工作流程。
openclaw skills install video-note-maker功能:完整的视频转笔记工作流程 - 提取音频 → 分割 → 转写 → 整理笔记 → 发送邮件通知
触发场景:
python video_note_maker.py <视频路径>
输出预览:
============================================================
🎬 视频转笔记完整流程
============================================================
功能:提取音频 → 分割 → 转写 → 整理笔记 → 发送邮件通知
============================================================
✅ 找到 1 个视频文件
============================================================
📁 文件结构预览(以第一个视频为例)
============================================================
原视频目录/
├── 7 - OSPF 外部路由.mp4
├── tmp/ # 临时文件(包含中间文件)
│ └── 7 - OSPF 外部路由/
│ ├── audio.m4a # 提取的音频
│ ├── segment_000.m4a # 分割后的音频段 (15 分钟/段)
│ ├── segment_001.m4a
│ └── ...
└── done/ # 最终笔记目录
└── 7 - OSPF 外部路由.md # 详细笔记
└── 7 - OSPF 外部路由_学习笔记_整理版.md # 整理版笔记
============================================================
是否开始处理?(y/n): _
用户确认:
y/yes/是 → 开始处理 ✅[1/5] 提取音频:/home/fangjinan/视频/HCIP/7 - OSPF 外部路由.mp4
✅ 音频已提取:/home/fangjinan/视频/HCIP/tmp/7 - OSPF 外部路由/audio.m4a
💡 使用 AAC 编码,文件大小约为 PCM_WAV 的 1/10
[2/5] 分割音频:audio.m4a
✅ 音频已分割为 6 段(每段 15 分钟)
分割策略:
--segment-duration).m4a)[3/5] 逐段转写...
转写第 1/6 段...
转写第 2/6 段...
...
✅ 所有段落转写完成
📝 转录文本已保存:transcript_000.txt, transcript_001.txt, ...
转写配置:
small (~70MB)zh).txt[4/5] 生成详细笔记...
✅ 笔记已保存:done/7 - OSPF 外部路由.md
总字数:XXXX 字
[5/5] 整理笔记并发送邮件通知...
============================================================
📝 视频笔记整理工具
============================================================
📁 读取转录文件:/home/fangjinan/视频/HCIP/tmp/7 - OSPF 外部路由
✅ 找到 6 个转录文件
🎬 视频时长:1 小时 30 分钟
🔧 整理内容中...
📄 生成 Markdown 文件...
✅ 整理版笔记已保存:/home/fangjinan/视频/HCIP/done/7 - OSPF 外部路由_学习笔记_整理版.md
📧 发送完成通知到你的 QQ 邮箱...
✅ 邮件已发送
============================================================
🎉 整理完成!
============================================================
视频({视频名})笔记整理完成 - 虾妹
示例:
视频(7 - OSPF 外部路由)笔记整理完成 - 虾妹视频(6 - 域间防环机制、虚链路)笔记整理完成 - 虾妹视频笔记整理任务已完成!
---
📋 任务详情
视频:{视频完整路径}
整理时间:2026 年 04 月 10 日 12:30
笔记文件:{output_path}
文件大小:{file_size} 字节
---
✅ 使用的技能
- video-note-organizer
✅ 使用的工具
- ffmpeg (音频提取/分割)
- Whisper (语音转文字)
- qwen3.5-plus (AI 整理归纳)
---
📁 文件路径
转录文件:tmp/{视频名}/transcript_*.txt
最终笔记:{output_path}
---
整理完成!虾妹可以继续处理下一个任务~ 🦐
| 项目 | 值 |
|---|---|
| 收件人 | 用户配置的邮箱 |
| 发件服务器 | smtp.qq.com:465 |
| 收件服务器 | imap.qq.com:993 |
| 环境变量 | QQMAIL_USER, QQMAIL_AUTH_CODE |
python video_note_maker.py "/path/to/video.mp4"
流程:
y 开始处理python video_note_maker.py "/path/to/video.mp4" --auto
特点:
python video_note_maker.py "/path/to/video.mp4" --auto --duration "1 小时 30 分钟"
用途:
python video_note_maker.py "/path/to/video.mp4" --auto --segment-duration 600
配置:
CONFIG = {
"whisper_model": "small", # Whisper 模型
"language": "zh", # 转写语言
"segment_duration": 900, # 分割时长(秒)
"audio_quality": {
"sample_rate": 44100, # 采样率
"channels": 2, # 声道数
"codec": "aac", # 音频编码
"bitrate": "128k", # 比特率
},
"temp_dir": "tmp", # 临时目录
"output_dir": "done", # 输出目录
"feishu_webhook": os.environ.get("FEISHU_WEBHOOK", ""), # 飞书 webhook
"detailed_mode": True, # 详细笔记模式
"max_retries": 3, # 最大重试次数
"retry_delay": 5, # 重试延迟(秒)
}
/home/fangjinan/视频/HCIP/
└── 7 - OSPF 外部路由.mp4 # 原始视频文件
/home/fangjinan/视频/HCIP/
├── tmp/
│ └── 7 - OSPF 外部路由/
│ ├── audio.m4a # 提取的音频
│ ├── segment_000.m4a # 分割音频段
│ ├── segment_001.m4a
│ ├── transcript_000.txt # 转写文本
│ ├── transcript_001.txt
│ └── ...
└── done/
├── 7 - OSPF 外部路由.md # 详细笔记
└── 7 - OSPF 外部路由_学习笔记_整理版.md # 整理版笔记
QQMAIL_USER和QQMAIL_AUTH_CODE环境变量已设置FEISHU_WEBHOOK 可实现实时进度推送tmp 目录| 视频时长 | 音频段数 | 预计时间 |
|---|---|---|
| 30 分钟 | 2 段 | ~15 分钟 |
| 1 小时 | 4 段 | ~30 分钟 |
| 2 小时 | 8 段 | ~60 分钟 |
| 3 小时 | 12 段 | ~90 分钟 |
时间构成:
12:46:完全整合 video-note-organizer,删除该技能目录
organize_note.py 的整理逻辑内嵌到 video_note_maker.pyread_transcripts(), organize_content(), generate_markdown(), send_email_notification(), organize_and_email()video-note-organizer 技能目录12:46:修复文件路径问题
7 - OSPF 外部路由.mp4/ 和 7 - OSPF 外部路由.mp4)tmp/xxx/ 转录目录的直接调用支持12:42:合并 video-note-organizer,实现完整流程自动化
12:40:添加文件结构预览和用户确认功能
tmp/ 和 done/ 目录结构12:30:集成 QQ Mail 邮件通知功能
511877988@qq.com视频({视频名})笔记整理完成 - 虾妹最后更新:2026 年 04 月 10 日 12:46