docs: add real video benchmark results to PROGRESS.md
- 30min 360MB video pipeline: 70s transfer + 39s keyframe + 820s AI = 929s total - FFmpeg fast seek optimization: 180s+ → 33s (6-8x faster) - AI analysis is the bottleneck: avg 68s/frame, 0.9 tokens/s on ARM CPU
This commit is contained in:
26
PROGRESS.md
26
PROGRESS.md
@@ -1,6 +1,6 @@
|
||||
# 项目进度追踪
|
||||
|
||||
> 最后更新: 2026-08-20 01:25
|
||||
> 最后更新: 2026-08-20 02:10
|
||||
|
||||
## 服务运行状态
|
||||
|
||||
@@ -107,14 +107,16 @@
|
||||
| 27 | NAS 安装 Streamlit + pandas + 部署 FAM-UI | ✅ 完成 | 2026-08-20 |
|
||||
| 28 | Ollama 模型常驻内存 (OLLAMA_KEEP_ALIVE=-1) | ✅ 完成 | 2026-08-20 |
|
||||
| 29 | 关键帧提取改为自适应帧数 (随视频时长动态计算) | ✅ 完成 | 2026-08-20 |
|
||||
| 30 | FFmpeg 快速 seek 替代 fps 滤镜 (6-8x 提速) | `7ce8aff` | 2026-08-20 |
|
||||
| 31 | 真实视频性能基准测试 (30min 360MB 视频) | ✅ 完成 | 2026-08-20 |
|
||||
|
||||
### 待完成
|
||||
|
||||
| # | 任务 | 依赖 | 优先级 |
|
||||
|---|------|------|--------|
|
||||
| 30 | 视频端到端集成测试 | FAM-UI ✅ | 高 |
|
||||
| 31 | 单元测试 (JSON parser, circuit breaker, schema) | - | 中 |
|
||||
| 32 | Tailscale 防火墙修复 (NAS↔Oracle) | - | 低 |
|
||||
| 32 | 视频端到端集成测试 | FAM-UI ✅ | 高 |
|
||||
| 33 | 单元测试 (JSON parser, circuit breaker, schema) | - | 中 |
|
||||
| 34 | Tailscale 防火墙修复 (NAS↔Oracle) | - | 低 |
|
||||
|
||||
## 技术决策记录
|
||||
|
||||
@@ -128,6 +130,22 @@
|
||||
8. **Oracle 公网 IP 替代 Tailscale** - Tailscale 两节点在线但端口不通(防火墙),edge_url 和 ollama_url 改用 Oracle 公网 IP 129.146.203.203
|
||||
9. **Ollama 模型常驻内存** - systemd 加 `OLLAMA_KEEP_ALIVE=-1`,模型加载后永不卸载,消除 55s 冷启动延迟,常驻占用 4.3GB 内存(系统 12GB 够用)
|
||||
10. **关键帧自适应帧数** - 原固定 5-8 帧对长视频太稀疏(30分钟仅8帧=每3.75分钟1帧),改为随视频时长自适应:候选帧 `clamp(duration_min×2, 30, 120)`,关键帧上限 `clamp(duration/150s, 8, 30)`。30分钟→12帧,60分钟→24帧,封顶30帧
|
||||
11. **FFmpeg 快速 seek 替代 fps 滤镜** - 原方案 `ffmpeg -vf fps=1/interval` 需全解码视频,30min 360MB 视频在 ARM CPU 上需 180s+(超 120s 超时)。改为逐帧 `ffmpeg -ss <ts> -frames:v 1` 快速 seek,仅 33s(6-8x 提速)
|
||||
|
||||
## 真实视频性能基准测试 (2026-08-20)
|
||||
|
||||
测试视频: `Generic_ONVIF-001-20260819-210403` (30分钟, 360MB, 1080p H.264)
|
||||
|
||||
| 步骤 | 耗时 | 详情 |
|
||||
|------|------|------|
|
||||
| 1. 视频传输 (NAS→Oracle) | 70s | 360MB, 5.1 MB/s (Tailscale) |
|
||||
| 2a. FFmpeg 快速 seek 抽帧 | 33s | 60 张候选帧 (每30s一张) |
|
||||
| 2b. OpenCV 关键帧筛选 | 5s | MSE 帧差 → 12 张关键帧 |
|
||||
| 2c. 压缩 | 0.6s | 12 帧, 总 1.9MB |
|
||||
| 3. Ollama llava-phi3 分析 | 820s | 12 帧, avg 68s/帧, 0.9 tokens/s |
|
||||
| **总计** | **929s (15.5min)** | 30 分钟视频处理 |
|
||||
|
||||
AI 分析瓶颈: 帧5耗时 229s (疑似 ARM CPU 热降频), 其余帧 50-65s
|
||||
|
||||
## FAM-Core API 测试结果 (2026-08-20)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user