Scrypted

High-performance smart home and camera platform

Home Automation ★ 6k stars Medium setup Apache-2.0

Scrypted is a high-performance home video integration and automation platform that unifies cameras across ecosystems. It targets users bridging cameras to HomeKit, Google, and Alexa. It is deployed via Docker.

Key features

  • Unifies cameras across ecosystems
  • HomeKit Secure Video support
  • Hardware-accelerated processing
  • Plugin architecture

Pros & cons

Strengths

  • Excellent camera integration
  • Cross-ecosystem
  • Fast

Trade-offs

  • Camera-focused
  • Setup takes effort

Scrypted replaces

Last reviewed Sep 13, 2026 · 859 words

Install Scrypted for one reason: it puts cameras that Apple never blessed into HomeKit, with HomeKit Secure Video recording, doorbell notifications and two-way audio, and it does it with lower latency than any other bridge I have run. Everything else it offers is real but secondary. If HomeKit (or Google Home, or Alexa) is not in your house, most of its value evaporates and Frigate is the camera platform you want instead.

Scrypted is glue, not a detector

The mental model that makes the project click: Scrypted is a plugin host. One plugin talks to your camera brand (Amcrest, Reolink, Hikvision, UniFi Protect, Ring, generic RTSP and ONVIF all have one), another exposes whatever it finds to HomeKit, another rebroadcasts the stream so five consumers do not open five connections to a camera that can handle two. The core is a TypeScript event bus with a web console on port 10443. There is no built-in motion detection worth the name in the free tier; you either use the camera's own motion events, feed it detections from Frigate, or pay for the Scrypted NVR plugin, which adds recording, object detection and a timeline UI on a subscription.

That last point surprises people. Bridging and HomeKit are free and unrestricted; the NVR is the commercial product that funds development. I think that split is fair, but decide before you commit whether you want to pay for recording or run Frigate for it.

HomeKit needs host networking and the same VLAN

The Docker run that works on first try uses host networking, because HomeKit discovery is mDNS and bridged containers cannot answer it:

docker run -d --name scrypted --network host --restart unless-stopped \
  -v ~/.scrypted/volume:/server/volume \
  --device /dev/dri:/dev/dri \
  koush/scrypted

Then two constraints that account for most "HomeKit can't find the bridge" threads. The Home hub (an Apple TV or HomePod) has to see the same mDNS broadcast domain as the Scrypted box; if you put IoT on its own VLAN, you need an mDNS reflector or the bridge on the same segment. And HomeKit will only take H.264. Cameras set to H.265 for the main stream need either a substream in H.264 or Scrypted transcoding it, which is where the /dev/dri line earns its keep: Intel Quick Sync turns a CPU-melting transcode into a few percent.

Network loss also shows up as HomeKit "loading" spinners. Scrypted's Rebroadcast plugin has a per-camera prebuffer setting; 10 seconds is enough to make HKSV clips start cleanly without wasting memory.

Resource use scales with cameras and codecs

The 1 GB RAM floor is honest for 2 or 3 cameras with no transcoding. Every stream you transcode adds a few hundred MB and a fraction of a core with hardware acceleration, or a whole core without it. An Intel N100 mini PC runs 8 cameras with HKSV comfortably; a Raspberry Pi 4 runs 2 or 3 if none need transcoding. The project's own guidance nudges you toward x86 with Quick Sync, and I would follow it rather than fight ARM.

Where it sits next to Home Assistant and Homebridge

Homebridge covers the same "non-HomeKit thing into HomeKit" idea for everything except cameras; its camera plugins work but with several seconds of latency. Scrypted was written specifically to fix that, and the two coexist fine, Homebridge for switches and sensors, Scrypted for video. Home Assistant is the broader automation brain and neither replaces it; Scrypted has a Home Assistant plugin that exposes its cameras and their motion events as HA entities, so automations live in HA and video plumbing lives in Scrypted. The combination that shows up in nearly every mature setup in the home automation category is Frigate for detection, Scrypted for HomeKit, Home Assistant on top.

Setup takes an evening, not an hour

Camera plugins need credentials and often a firmware setting or two (enable RTSP, set a substream, turn on ONVIF events). HomeKit pairing needs the QR code from the plugin page and patience. The UI is powerful and dense, with settings spread across plugin, device and stream levels, and it changes across releases. Read the official docs for your camera brand before buying more cameras; the compatibility notes there are the best on the internet for this niche, and some brands (Reolink at 2K and above, older Ring) have known caveats.

What I'd do

If you have an Apple TV and a couple of RTSP cameras, run Scrypted on a small Intel box with host networking, pass through /dev/dri, and put the cameras' substreams in H.264. Use the camera's own motion events for HKSV triggers and let iCloud store the clips, which is the cheapest reliable NVR most households will ever have. If you want local recording and good object detection, run Frigate beside it and feed Frigate's events into Scrypted rather than paying for the NVR plugin. If nobody in the house uses the Home app, skip Scrypted entirely and go straight to Frigate.

Compare Scrypted

5 head-to-head comparisons.

Similar home automation apps