ffmpeg / ffprobe không tìm thấy
ffmpeg / ffprobe không tìm thấy
Bootstrap dừng với message
ffmpeg not found in PATH.Nguyên nhân: chưa cài ffmpeg, hoặc đã cài nhưng PATH không cập nhật.Xử lý:- macOS:
brew install ffmpeg→ đóng terminal mở lại. - Windows:
winget install Gyan.FFmpeg→ đóng PowerShell mở lại. Hoặc addC:\ProgramData\chocolatey\bin\vào PATH thủ công. - Linux:
sudo apt install ffmpeg(Ubuntu/Debian) hoặcsudo dnf install ffmpeg(Fedora).
ffmpeg -version và ffprobe -version.Watcher không chạy (state.json pid rỗng)
Watcher không chạy (state.json pid rỗng)
cat .asset_index/state.json thấy pid: null hoặc thiếu hẳn.Nguyên nhân: service install thất bại, hoặc service đã bị OS dừng.Xử lý:- macOS:
launchctl list | grep com.video-agent— nếu không có, chạy lại.venv/bin/python -m tools.asset_index.service install. - Windows:
schtasks /query /tn VideoAgentAssetIndex— nếu không có hoặc Status = Disabled, chạy lạiservice install. - Linux:
systemctl --user status video-agent-asset-index— nếu inactive,systemctl --user start video-agent-asset-index.
apsw / sqlite-vec lỗi load extension
apsw / sqlite-vec lỗi load extension
Khi chạy Nguyên nhân: build Hoặc dùng wheel có sẵn:Xem thêm Cross-platform notes.
tools.asset_index.watcher hoặc search thấy:apsw từ source bị disable extension loading.Xử lý: force reinstall với extension enabled:Tiếng Việt vỡ font trên Windows console
Tiếng Việt vỡ font trên Windows console
Trong PowerShell hoặc cmd, chữ Việt hiển thị Tất cả
????? hoặc Ä á?.Nguyên nhân: console codepage default cp1252.Xử lý:.bat đã có chcp 65001 ở đầu — nếu vẫn vỡ, kiểm tra Windows Terminal settings → Profile → Use UTF-8 encoding.API key invalid (401 Unauthorized)
API key invalid (401 Unauthorized)
DB hỏng / corrupt
DB hỏng / corrupt
Lỗi:Nguyên nhân: máy crash giữa lúc ghi DB, hoặc xoá
index.db khi watcher đang chạy.Xử lý:-
Stop watcher:
service stop. -
Backup DB cũ (phòng có data quý):
-
Xoá DB:
-
Start watcher với scan-on-start để rebuild:
Re-index file lỗi (status: failed)
Re-index file lỗi (status: failed)
cat .asset_index/state.json thấy last_error non-null, hoặc query DB:- File bị corrupt (download dở, copy lỗi). Xoá + drop lại.
- File quá lớn (Gemini limit ~2GB cho video). Cut nhỏ trước hoặc skip.
- Format unsupported. Xem Mở rộng để add format.
- Network flap. Watcher có retry, nhưng nếu kéo dài, restart service.
Watcher không thấy file mới (sandbox / network drive)
Watcher không thấy file mới (sandbox / network drive)
Drop file vào Nếu chạy qua service: edit launchd plist / Task Scheduler entry để thêm
raw_assets/ nhưng processed_count không tăng.Nguyên nhân: filesystem không hỗ trợ inotify/FSEvents:- Ổ mạng (NFS, sshfs, AFP, SMB).
- Sandbox container (Docker volume mount).
- WSL ↔ Windows filesystem (
/mnt/c/...).
--polling vào ExecStart, sau đó re-install service.Trade-off: polling tốn CPU hơn FSEvents/inotify nhưng work everywhere.Cần thêm trợ giúp?
Mở Issue trên GitHub
Cung cấp OS, Python version, log, state.json.
Đọc CONTRIBUTING
Cách báo bug đầy đủ context.