Commit graph

10 commits

Author SHA1 Message Date
f794c57198 fix: retry recording when storage is slow to mount at boot
A power cut makes the recordings drive's fsck slow, so the mount can
appear tens of seconds after nextnvr starts. The recorders then hit the
unmounted, root-owned mountpoint, failed mkdir, and exited permanently —
recording stayed dead until a manual restart.

- recorder: on mkdir failure, log and retry every 15s instead of exiting,
  so recording resumes once storage returns
- storage: add waitForStorage() and call it before the writers start, so
  startup waits (up to 120s) for the recordings dir to be present and
  writable; live view still starts if storage never appears
2026-10-15 07:09:11 +01:00
53e12abbfc fix: use -timeout (RTSP socket I/O) instead of invalid -rw_timeout 2026-09-12 20:30:32 +01:00
fcc760363f fix: add ffmpeg socket I/O timeout to prevent hung recordings
A stalled RTSP stream (TCP connection alive but no data) made the recorder's ffmpeg processes block forever on read(). The -t 300 flag only bounds by input timestamps, not wall-clock, so it never fired and the recorder loop never started the next segment.

Add -rw_timeout (10s socket I/O timeout) so ffmpeg exits on a stalled stream and the existing retry loop reconnects automatically.
2026-09-12 20:27:48 +01:00
d4eada42d8 docs: MIT license, license headers, README with project story and roadmap 2026-08-06 10:48:35 +01:00
cda6ca4785 fix: code review — XSS, credentials 0600, interval leak, path bugs, title, unused imports 2026-08-05 16:13:25 +01:00
3ded3cc1e8 fix: recorder drop audio (-an) — cameras use pcm_mulaw which MP4 doesn't support 2026-08-05 14:10:08 +01:00
69d3a7c47f feat: v0.3.3 — rec_/snap_ prefix, latest.jpg grid, per-minute archival snapshots 2026-08-05 12:37:51 +01:00
c19944bc27 chore: document local time (BST) usage, no UTC conversion 2026-08-05 09:54:39 +01:00
66f35b1eb9 chore: v0.2.1 — flat recording dir, per-segment FFmpeg, .part atomic rename, playback presets 2026-08-05 09:53:21 +01:00
84bf6d892f chore: Milestone 1 & 2 — core setup, recorder, cleaner, web UI, deployment 2026-08-05 09:15:43 +01:00