The Everything App
summary
Open-source ExNVR runs a full NVR stack on Nerves hardware using Phoenix, LiveView, Membrane, SQLite and Nx, deployed on over a thousand devices and streaming RTSP to HLS and optional WebRTC. Edge inference moves from ~0.5 fps on Raspberry Pi CPU to ~22 fps using an AI accelerator (≈11 fps per two cameras), implemented as a Membrane frame picker + object detector to keep latency low; recording uses a key‑frame‑aware ring buffer and zero‑copy big binaries.
AI-written summary · about
chapters (20)
- 0:00Everything app concept
- 1:53Web app architecture evolution
- 4:59Embedded devices need self-sufficiency
- 7:12EXNVR open-source NVR in Elixir
- 9:58EXNVR setup for development
- 12:29Membrane media streaming in Elixir
- 14:35HLS versus WebRTC trade-offs
- 16:42Adding inference to media pipeline
- 19:38Optimizing inference latency
- 21:47Memory efficiency with big binaries
- 23:36FFmpeg via NIFs delegation
- 24:38Raspberry Pi inference with AI
- 26:04Trigger system for event recording
- 29:03Circular buffer for pre-event video
- 31:28Configurable inference styles
- 34:00Dynamic pipeline at runtime
- 35:27Single-node Elixir apps
- 36:57Python vs concurrent embedded systems
- 38:01Elixir vs Python runtime
- 39:25Conclusion and BEAM power
related talks
04mEmbedded Executive LIVE
35mA production-grade Nerves System
15mApp4Cam – Running on innovative camera traps in the field
16mRVEdge-Vision: A Fully Open,Ultra-Efficient On-Device AI Platform for Smart Eyewear
46mFunctional IoT with Elixir and Nerves
28mML on the Edge for Industry 4.0 with Arm Ethos N-78 Neural Processing Unit
46mBuilding an IP Network Camera
07mDemo: Neural Network Acceleration on Metis, Powered by RISC-V
