-
Notifications
You must be signed in to change notification settings - Fork 0
Latest Releases
wiki-sync-bot edited this page Jul 26, 2026
·
1 revision
Auto-generated from CHANGELOG.md — updated on every docs/ push.
-
CSP fix — remove hls.js from RecordingPlayer —
hls.jsusesnew Function()which triggers CSPscript-srcblock in Chrome (Chrome strict, Safari lenient). RecordingPlayer now uses native<video>progressive MP4 only. -
HEVC→H.264 transcode in recording engine — ffprobe auto-detects codec; HEVC streams transcoded with
libx264 ultrafast crf20 pix_fmt yuv420p -
H.264 bitstream filter — normalizes
yuvj420p color_range=pc→yuv420p tvvia-bsf:v h264_metadata=video_full_range_flag=0 -
HTTP Range handling fix — returns
200 OKfor full-file requests,206 Partial Contentonly for partial ranges (fixes Chrome rejection of full-range 206 responses) -
RecordingPlayer cleanup — removed complex spinner/playBlocked overlay, restored working
controls={controls}, fixedvideo.playbackRateuseEffect for speed controls -
Recordings.tsx — added
key={activePlaybackId}to force clean remount on recording switch - AGENTS.md — comprehensive Recording Playback troubleshooting section added (CSP, codec, Range, browser differences)
- AI FPS 2→0.5 — YOLO inference rate reduced (CPU: 166%→74%)
- ONNX threads 2→1 — reduced thread contention
- MOG2 sensitivity medium→low on all 11 cameras — fewer frames reach YOLO
- Sub-stream bitrate 2000k→1000k — lighter FFmpeg encode
- AI engine Docker CPU limit 4→2 — cgroup enforcement
-
cam3 AI disabled —
recording_mode=nevercamera no longer runs YOLO
-
Fixed FFmpeg
-stimeout→-timeout— FFmpeg 5.1.9 doesn't support-stimeout, causing startup crashes every few seconds -
Removed
-reconnectflags — not supported for RTSP in FFmpeg 5.1.9 -
Monitor loop:
returncode=0clean exits bypass circuit breaker, 5 quick reconnect attempts -
Monitor loop:
returncode≠0errors get 3 attempts with transport fallback -
HLS.js
maxBufferHole: 0.5— tighter gap tolerance
- Low-latency HLS — 10-15s → 1-3s glass-to-glass (hlsVariant: lowLatency)
-
Audio enabled in stream-manager FFmpeg relay (was
-an) - Audio controls in live view (mute/unmute)
- Digital zoom — 2D CSS zoom+pan on any stream
- ONVIF PTZ in modal (ExpandedView)
-
Download recordings (
?download=truequery param) - Playback speed controls — 0.125x, 0.25x, 0.5x, 0.75x, 1x, 1.5x, 2x, 4x, 8x
- Recording thumbnails — auto-generated sidecar JPEG per segment via ffmpeg
-
Thumbnail resilience —
-ss 2fallback to-ss 0for short segments - Bulk delete — by ID list, all per camera, or before date
- Timeline click-to-play — click time bar to jump to segment
- Motion-only recording — FFmpeg starts on motion, stops after 30s idle
- AI zone editor — draw polygon zones on camera snapshot, apply to detections
- Position-aware dedup — static object: 1 event/5min, moved: immediate
-
Recording engine — per-camera FFmpeg supervisors,
-c:v copy, 300s segments - Circular retention — disk ≥85% or <2GB free → delete oldest first
-
Segment Catalog — 60s scan registers closed segments in
recordingstable - Disk Analytics — hourly GB/day per camera, capacity projection
- AI engine — YOLOv8n ONNX, MOG2 motion gate, correct post-processing
- Idle stream reaper — 10min zero-readers → stop FFmpeg relay