音视频小秘
本地音视频智能索引,基于 OpenVINO 双路径架构(实时字幕 + 智能总结),数据全程不出设备。
快速开始
# 查看系统信息和可用设备
python src/main.py info
# 处理音频/视频文件
python src/main.py process-file meeting.mp3 --output meeting_result
# 实时麦克风录制(Ctrl+C 停止)
python src/main.py process-microphone --output my_meeting
# 输出 JSON 格式
python src/main.py process-file interview.wav --json
安装
python3 -m venv venv && source venv/bin/activate
pip install -r requirements.txt
python scripts/download_models.py --all
系统依赖(Ubuntu):sudo apt-get install -y portaudio19-dev python3-pyaudio ffmpeg libsndfile1 build-essential
详细安装指南见 references/installation.md。
配置
编辑 config.yaml:
device:
vad_device: CPU # VAD 始终用 CPU
asr_device: CPU # 有 GPU 时改为 GPU
llm_device: CPU # 有 GPU 时改为 GPU
asr:
model_size: base # tiny/base/small/medium
language: zh # zh/en/auto
compute_type: int8 # CPU 用 int8,GPU 用 float16
llm:
model_path: ./models/qwen2.5-1.5b-instruct-ov
max_new_tokens: 2048
temperature: 0.3
输出
| 格式 | 文件 | 内容 |
|------|------|------|
| JSON | {name}.json | 完整结构化数据 |
| Markdown | {name}_report.md | 摘要 + 关键词 + 时间线 + 待办 |
| 纯文本 | {name}_transcript.txt | 带时间戳的转录稿 |
技术架构
双路径流水线:
- 实时路径(< 2s 延迟):VAD → ASR → 实时字幕
- 后处理路径(< 30s):LLM → 结构化总结
技术选型和模型说明见 references/architecture.md。
项目结构
local-video-indexer/
├── src/
│ ├── core/orchestrator.py # 双路径编排器
│ ├── pipelines/
│ │ ├── realtime_pipeline.py # 实时转录
│ │ └── postprocess_pipeline.py # LLM 总结
│ ├── models/
│ │ ├── vad_engine.py # Silero VAD
│ │ ├── asr_engine.py # faster-whisper
│ │ ├── llm_engine.py # OpenVINO LLM
│ │ └── device_manager.py # 设备检测
│ ├── io/
│ │ ├── audio_capture.py # 麦克风/音频文件
│ │ └── video_capture.py # 摄像头/视频文件
│ ├── utils/helpers.py # 工具函数
│ └── main.py # CLI 入口
├── scripts/download_models.py # 模型下载
├── config.yaml # 配置
├── requirements.txt # 依赖
├── skill.yaml # Skill 元数据
└── references/ # 详细文档
├── architecture.md # 技术架构
└── installation.md # 安装指南
微信扫一扫