Skip to content

System requirements ​

What camera.ui needs depends on how you run it and what you ask it to do. Live-viewing a couple of cameras is light; recording many cameras around the clock with AI detection needs real hardware.

At a glance ​

MinimumRecommended
CPU4 modern coresApple Silicon (M1+), Intel N100, or better
RAM8 GB16 GB
Hardware accelerationnone (software)a recent GPU / accelerator, or Apple Silicon
Disk (app)~16 GB SSDSSD
Recordingsa separate, dedicated disk, sized to your cameras and retention

Known-good hardware

A small Intel N100 mini-PC or an Apple Silicon Mac (M1 or newer) comfortably runs a typical setup (several cameras with recording and AI detection) at low power.

What pushes you higher: more cameras, higher resolutions, continuous recording, and especially AI detection, which is far lighter with a supported GPU, accelerator, or Apple Silicon (see below).

Running the server ​

You can run the camera.ui server on Linux, macOS, or Windows:

  • Linux. In Docker, on Proxmox, or bare-metal. Ubuntu 24.04 (or newer) is the tested baseline. A bare-metal install only needs Node.js 24, since camera.ui manages everything else (FFmpeg, go2rtc, a portable Python runtime) itself; the Docker images bundle everything.
  • macOS. Through the desktop app in Server mode. Apple Silicon Macs (M1 and newer) run it at low power with full hardware acceleration, including the Neural Engine.
  • Windows. Through the desktop app in Server mode.

Hardware acceleration ​

Detection and video processing run in software on any CPU, but a GPU, accelerator, or Apple Silicon lowers CPU use significantly.

PlatformAccelerationNotes
Apple SiliconGPU + Neural Engine + VideoToolboxmacOS, via the desktop app
WindowsNative GPU video accelerationdesktop app · x86-64
IntelQuick Sync / VA-API (+ OpenCL)intel Docker flavor · x86-64
NVIDIANVENC / NVDEC + CUDAnvidia Docker flavor · x86-64
AMDMesa VA-API (+ OpenCL)amd Docker flavor · x86-64
CPU onlysoftwarecpu flavor · x86-64 + arm64
Coral Edge TPUdedicated TPUvia the Coral plugin · Linux · x64 + arm64
Hailo-8 / Hailo-8Ldedicated NPUvia the Hailo plugin · Linux · x64 + arm64

On Linux, pick the Docker flavor that matches your GPU. On macOS and Windows, the desktop app uses your GPU for hardware-accelerated video automatically. Your AI detection plugin should match your hardware: CoreML on Apple Silicon, an Intel / NVIDIA backend, or a Coral / Hailo edge accelerator on Linux.

Storage for recordings ​

How much space recordings need depends on your camera count, resolution and bitrate, recording mode, and how long you keep footage.

Use a dedicated local disk for recordings, separate from the system disk and not a network share (NAS). Continuous recording writes constantly, and the recordings folder also holds the databases that index your events, which network shares cannot lock reliably. See Storage & retention.

camera.ui shows each camera's recording rate per day and lets you cap usage with the Quota and Retention settings.

Desktop app ​

The desktop app runs on macOS, Windows, and Linux. On macOS, version 15 or newer is recommended, since the operating system requires it for the app to reach cameras on your local network. In Server mode the desktop app runs the full server, so the requirements above apply; as a viewer it's lightweight.

Mobile apps ​

The mobile apps are viewers with minimal requirements:

  • iOS 17.4 or newer
  • Android 8.0 or newer (API 26)

Cameras ​

Almost any IP camera works: anything that provides an RTSP or ONVIF stream (H.264 or H.265). See Connection protocols for the full list.[1]


  1. Cameras that depend on a vendor cloud (such as Ring or Nest) can be connected, either directly or through a plugin, but they are not recommended and not covered by support. Use local RTSP / ONVIF cameras for a reliable experience. ↩︎