Guide · Open source
How to use go2rtc: install, configure streams and view cameras
Updated · written with AI from the project's own documentation and checked against our catalogue data
go2rtc is a free, open-source camera streaming application that takes video from IP cameras and other sources such as RTSP, RTMP and WebRTC, then republishes it in formats that browsers, apps and smart home systems can play. This guide is for home users and developers who want to view camera feeds in a browser or connect cameras to Home Assistant. After reading it, you will know how to get the program running, add streams, and open the web interface.
Quick start
- 1Download the binary. Get the build for your operating system from the project's latest release page.
- 2Make it executable. On Linux or Mac, run chmod +x on the downloaded file.
- 3Start go2rtc. Run the binary so the program starts on your machine.
- 4Open the web interface. Go to http://localhost:1984/ in your browser.
- 5Add your camera streams. Add each stream to the configuration file, using RTSP, RTMP or WebRTC sources.
- 6Test playback. Check each stream in the web interface and adjust compatibility settings if a camera does not play.
Install go2rtc as a standalone binary
go2rtc is a single small program with no listed prerequisites. Download the binary for your operating system from the project's latest release page. Builds are provided for Windows, macOS, Linux and FreeBSD, including ARM and 32-bit options for devices such as a Raspberry Pi.
- Windows 10+ 64-bit and 32-bit builds are published as zip files.
- macOS 12+ has Intel and ARM 64-bit builds.
- Linux builds include amd64, arm64, arm and armv6 for older Raspberry Pi boards.
chmod +x go2rtc_xxx_xxxRun go2rtc with Docker or as a Home Assistant add-on
If you prefer containers, the project publishes Docker images as alexxit/go2rtc and ghcr.io/alexxit/go2rtc. The images support 386, amd64, arm/v6, arm/v7 and arm64. The README also lists a Home Assistant add-on and a Home Assistant integration as alternative ways to install.
Open the web interface and add your first stream
After starting go2rtc, open the web interface in your browser at http://localhost:1984/. Setup is done through a config file and this web interface, so you add each camera as a stream in the configuration and then view it from the interface.
The README points to a Configuration section and to the streaming input section for the supported source types, including RTSP, RTMP and WebRTC.
- Open http://localhost:1984/ once the program is running.
- Add your camera streams to the configuration file.
- Use the web interface to check that each stream plays.
Use two-way audio and stream audio to cameras
go2rtc supports two-way audio for many formats, so audio can be sent to cameras that support it. It can also stream audio to all cameras with two-way audio support. Compatibility depends on the camera and protocol, so test each model.
Connect go2rtc to Home Assistant or your own project
For smart home use, go2rtc can feed low-latency camera streams to Home Assistant. Developers can integrate its HTTP API into their own smart home platform or video project. Transcoding happens only when needed, through FFmpeg.
- Use the HTTP API documentation in the project's internal/api folder.
- Choose the Home Assistant add-on or integration if you already run Home Assistant.
Know what go2rtc does not do
go2rtc is a streaming tool, not a recorder. The README describes streaming rather than recording, so it is not a full NVR with storage and motion search. If you need recording, look at a comparable project such as Frigate or Moonfire NVR.
- Not a recording or NVR system.
- Not a graphical no-configuration app.
- Camera compatibility is not guaranteed for every brand.
What people use it for
- View RTSP camera feeds in a web browser on your home network.
- Connect IP cameras to Home Assistant with low delay.
- Run go2rtc on a Raspberry Pi or old router as a small streaming relay.
- Send audio to cameras that support two-way audio.
- Integrate camera streams into a custom smart home project through the HTTP API.
Frequently asked questions
Is go2rtc free?
go2rtc is open source under the MIT licence, which the project lists on its page. You can download the binary from the release page without a listed price.
Does go2rtc need any prerequisites to install?
The source lists no prerequisites. It is a zero-dependency binary, and on Linux or Mac you need to make the downloaded file executable with chmod +x.
How do I open go2rtc in a browser?
After starting the program, open http://localhost:1984/ in your browser. From there you can check your streams in the web interface.
Can go2rtc record video?
No. The README describes go2rtc as a streaming application rather than a recording system, so it does not provide storage or motion search. Use a project such as Frigate or Moonfire NVR for recording.
What are alternatives to go2rtc?
Comparable projects named in the analysis are MediaMTX, Frigate, rtsp-simple-server and Moonfire NVR. Frigate and Moonfire NVR focus on recording, while MediaMTX and rtsp-simple-server are closer to streaming.
Will go2rtc work with my camera?
Compatibility depends on the camera and protocol, so there is no guarantee for every brand. Test your camera's stream after adding it to the configuration.
New agent skills, repos and AI tools — every week
The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.
Our verdict
go2rtc suits home users who want low-latency camera viewing in a browser or Home Assistant, and developers who want a small streaming component with an HTTP API. It is a poor choice if you need recording, storage and motion search, or a graphical app that needs no configuration; in that case pick a recorder such as Frigate or Moonfire NVR.
Install options & downloads