3分钟上手go2rtc:零门槛流媒体服务器搭建
引言:告别复杂配置,3分钟实现多协议流媒体转发
你是否还在为不同品牌摄像头的协议兼容性头疼?是否因高延迟的流媒体传输影响监控体验?本文将带你零门槛搭建支持RTSP、WebRTC、HomeKit等20+协议的流媒体服务器,全程仅需3步,即使是非技术人员也能轻松完成。
读完本文你将获得:
- 3种快速部署方案(二进制/Docker/Home Assistant)
- 5分钟内完成摄像头接入与流转发
- 全平台客户端访问指南(浏览器/VLC/手机APP)
- 常见故障排查流程图
什么是go2rtc?
go2rtc是一款开源流媒体服务器,专为摄像头视频流转发设计,支持RTSP、WebRTC、HomeKit、FFmpeg等多种协议,实现了超低延迟(<100ms)的音视频传输。其核心优势在于:
- 零依赖部署:单文件可执行程序,无需复杂环境配置
- 自动协议转换:如RTSP转WebRTC,解决浏览器无插件播放问题
- 多源混合流:将不同协议的音视频轨道混合为单一流输出
- 硬件加速:支持Intel/AMD/NVIDIA/Rockchip等硬件编解码
快速部署(3种方案任选)
方案1:二进制直接运行(推荐Windows/macOS/Linux)
-
下载对应版本
从发布页面下载适合系统的二进制包:- Windows:
go2rtc_win64.zip - macOS:
go2rtc_mac_amd64.zip - Linux:
go2rtc_linux_amd64
- Windows:
-
启动服务
解压后双击可执行文件,或终端运行:# Linux/macOS需添加执行权限 chmod +x go2rtc_linux_amd64 ./go2rtc_linux_amd64 -
验证启动
打开浏览器访问http://localhost:1984,看到管理界面即成功
方案2:Docker容器部署(推荐服务器环境)
# 基础版(支持主流协议)
docker run -d \
--name go2rtc \
--network host \
--restart unless-stopped \
-v ~/go2rtc:/config \
alexxit/go2rtc
# GPU加速版(需NVIDIA显卡)
docker run -d \
--name go2rtc \
--network host \
--gpus all \
--restart unless-stopped \
-v ~/go2rtc:/config \
alexxit/go2rtc:latest-hardware
⚠️ 注意:Docker必须使用
--network host模式以确保WebRTC和UDP协议正常工作
方案3:Home Assistant插件(智能家居用户)
- 在HA中添加仓库:
https://github.com/AlexxIT/hassio-addons - 安装
go2rtc插件并启动 - 通过侧边栏「go2rtc」图标访问管理界面
核心功能实战:5分钟接入摄像头
1. Web界面快速配置(零代码)
- 访问管理界面
http://设备IP:1984 - 点击「Add stream」按钮
- 选择摄像头类型并填写连接信息:
2. 配置文件高级设置(进阶用户)
编辑配置文件 go2rtc.yaml(Docker路径:~/go2rtc/go2rtc.yaml):
streams:
# 基础RTSP摄像头
front_door: rtsp://admin:123456@192.168.1.108:554/av_stream/ch0
# 带认证的WebRTC流
living_room:
- webrtc://user:pass@192.168.1.110
- ffmpeg:living_room#audio=opus # 音频转码为WebRTC兼容格式
# 本地USB摄像头
webcam: ffmpeg:device?video=0&video_size=1280x720#video=h264
重启服务使配置生效:
# 二进制版
./go2rtc --config go2rtc.yaml
# Docker版
docker restart go2rtc
3. 多协议访问测试
| 协议类型 | 访问地址 | 适用场景 |
|---|---|---|
| WebRTC | http://ip:1984/stream.html?src=front_door | 浏览器实时监控 |
| RTSP | rtsp://ip:8554/front_door | VLC播放器/录像系统 |
| HLS | http://ip:1984/hls/front_door.m3u8 | 手机APP远程访问 |
| HomeKit | 在HomeAPP中添加配件 | 苹果生态集成 |
常见问题速查
无法访问Web界面?
- 检查服务是否运行:
ps aux | grep go2rtc - 验证端口占用:
netstat -tulpn | grep 1984 - 防火墙放行端口:1984(Web)、8554(RTSP)、8555(WebRTC)
画面卡顿或延迟高?
HomeKit配对失败?
- 确保设备未被其他生态系统配对
- 重启摄像头和go2rtc服务
- 检查mDNS网络发现是否正常
结语与进阶路线
通过本文3分钟快速入门,你已掌握go2rtc的基础部署与使用。如需进一步优化可参考:
- 性能调优:启用硬件加速(详见硬件加速指南)
- 安全加固:配置HTTPS和访问认证
- 系统集成:对接Home Assistant实现智能联动
收藏本文,下次搭建流媒体服务器直接照做!如有疑问欢迎在评论区留言,作者将定期回复热门问题。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



