rusty_esp_video — An ESP32 Camera That Does Not Phone Home
rusty_esp_video remakes esp_video, esp_h264, and CameraWebServer: MJPEG and H.264 on the chip, RTP and MJPEG-over-HTTP, no vendor camera cloud.

🪩 The Disco Party is MATA's distributed cloud.
rusty_esp_video is CameraWebServer remade. The repo is rusty_esp_video. Espressif's esp_video / esp_h264 stack and the ESP32-CAM sketch every tutorial copies are C bitstream parsers sitting on an HTTP server. A hallway that still dumps JPEG to a vendor cloud is not a Home Companion. It is a viewing booth with a product name.
This crate is MJPEG and H.264 encode through rusty_h264 embedded, RTP and MJPEG-over-HTTP packetizers, and a wrap around the ESP32-P4 hardware encoder. The core is no_std. Janus names the stream as the media ALPN. esp32 iroh is how that stream leaves the board without AWS IoT.
Why An ESP32 Camera Cannot Keep A C HTTP Server
CameraWebServer exists to sell modules. It also exists as a CVE farm: multipart JPEG, RTP headers, H.264 NAL parsing, all in C, all on a part with 512 KB of SRAM if you are lucky. The NIST Secure Software Development Framework wants memory-safe languages for parsers that face a network. rusty_esp_video is that want as a doorbell.
Trust is mID on the chip — only a granted peer sees the stream. Security is sealed frames on esp32 iroh, not an open /stream URL the whole LAN can refresh. Incentive is a home that can store clips as files and get paid for spare disk, instead of a camera SKU that invoices you to watch your own porch. The Electronic Frontier Foundation has the consumer-camera file. This crate takes that file seriously.
Sibling stills are rusty_esp_image: esp32-camera and esp_jpeg remade, DMA frame pools, JPEG/PNG through rusty_jpeg and rusty_png.
How rusty_esp_video Encodes Without A Vendor Cloud
Borrowed frames. Caller-owned memory. rusty_esp_core forbids Vec<Vec<u8>> storms on the tick. Sources write into caller buffers; the encoder reads views. RGB565 and YUYV are in the pixel vocabulary because doorbells speak those, not only I420.
MJPEG And H.264 On The Same Memory-Safe Path
MJPEG-over-HTTP is how a browser preview works on the LAN. H.264 in RTP is how a Home Computer records without melting the radio. rusty_esp_video packetizes both. The P4 wrap is for the part that already has a hardware encoder — you do not pretend a C6 is a P4.
The Stream Is A Grant, Not A Port
CameraWebServer listens. rusty_esp_video answers a capability. Capability tokens are how the distributed cloud authorizes a fetch. A default password on a sticker is not a grant. The NIST Zero Trust Architecture includes the camera.
Remade Primitives, Disco Party, Digital Freedom
rusty_esp_video, rusty_esp_image, rusty_h264, and esp32 iroh are Remade-With-Rust primitives. They become a disco party when a camera is a peer on the mesh, not a SKU in a vendor archive. They become Digital Freedom when Trust, Security, and Incentive — identity, encryption, payouts — sit on the sensor. Start at the Disco Party and Remade with Rust. Flash a camera that does not phone home.
The mesh under that camera is esp32 iroh. The still path is on the same catalog card wall as rusty_esp_image. Audio on the same board is rusty_esp_audio. The household product is Era 4: Home Companion.

