Add local dashcam video library

Co-authored-by: Copilot <[email protected]>
This commit is contained in:
Mathieu Moran
2026-08-09 19:04:47 -04:00
co-authored by Copilot
parent c57457b934
commit 3a981f5c6d
14 changed files with 659 additions and 29 deletions
+7 -4
View File
@@ -45,6 +45,9 @@ i have a dream
against a real 28GB/87-file import. The web UI can also browse, sort, and delete individual or
all videos directly from the connected dashcam with confirmed, temporary read-write operations,
plus import one file or any checkbox selection instead of always importing the whole card
- ▶️ **Local video library** — browse imported clips with cached thumbnails and upload status,
play H.264 footage inline with seeking, and delete only the local Pi copy. Optional retention
can automatically remove older local copies after their exact content is confirmed uploaded
- ☁️ **Remote upload** — a self-hosted server (Flask + Postgres, `server/`) receives trip/GPS
logs and dashcam footage over the internet (via Cloudflare Tunnel or a plain port-forward).
Dashcam videos upload in resumable 40MB chunks (works around tunnel body-size limits and keeps
@@ -89,7 +92,7 @@ For the remote server (receives trip logs + dashcam uploads), see [server/README
## Project status
This project was revived after a couple of years on the shelf. Phases 1-13 and 15-16 are complete:
This project was revived after a couple of years on the shelf. Phases 1-13 and 15-17 are complete:
real GNSS, hardened OBD support, offline maps/UI, automatic WiFi hotspot switching, local logging,
dashcam import, resumable remote upload, deployment, and the shared UI foundation are implemented.
The pipeline has been exercised on the real Pi and dashcam, including a complete 28GB import and
@@ -101,6 +104,6 @@ partition, and clean shutdown still needs delayed-power or ignition-sense hardwa
The browser-based phone relay was removed after real-world testing confirmed that mobile browsers
cannot reliably use the Pi's WiFi and cellular data simultaneously. A native Android companion is
planned later instead. The next roadmap work is the local imported-video browser/player, followed by trip history, Pi
health, alerts, settings, and a final UI polish pass. Full phase history, verification notes, and
current scope live in [PLAN.md](./PLAN.md).
planned later instead. The next roadmap work is trip history, followed by Pi health, alerts, settings, and a final UI
polish pass. Full phase history, verification notes, and current scope live in
[PLAN.md](./PLAN.md).