Skip to content

Connection protocols ​

When you add a camera manually, each stream URL begins with a protocol. camera.ui reads it from the URL and shows it under the field. The (i) button next to the field opens help for that protocol, with URL formats and examples.

A URL with an unsupported protocol won't save. The (i) help only appears once camera.ui recognizes the protocol, which makes it a quick check for a URL.

RTSP is the universal choice and what most cameras provide. A URL looks like this:

rtsp://username:password@192.168.1.123:554/path

The path after the address is camera-specific; the camera's manual or app has it. Many cameras offer a main (high-resolution) and a sub (low-resolution) stream; you can add each as a separate source.

Other common protocols ​

ProtocolUse it for
ONVIFA standard most cameras support. Connects without knowing the RTSP path, and powers discovery.
HTTP / HTTPSSnapshot (JPEG), MJPEG, HTTP-FLV, or MPEG-TS streams.
RTMPRTMP streams.
FFmpegWrap any source FFmpeg can read.

NVR and DVR systems ​

ProtocolUse it for
ISAPIHikvision two-way audio (add it alongside an RTSP source).
DVRIPDahua and compatible recorders (also known as NetSurveillance / Sofia / XMeye).

Brand and smart-home integrations ​

camera.ui also recognizes brand- and app-specific URLs, such as Tapo, Kasa, Doorbird, GoPro, Home Assistant, HomeKit, Ring, Nest, Wyze, and Tuya. Many of these depend on a vendor cloud.[1] Paste the URL and use the (i) help for the exact setup of each.

Tips ​

  • You can give one source multiple URLs. camera.ui combines them, which helps when streams carry different codecs (for example video on one and backchannel audio on another).
  • If you don't know your camera's URLs, try ONVIF or auto-discovery first.

  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. ↩︎