资讯详情

快速上手 go2rtc:一键把多协议摄像头变成零延迟流媒体

📅 2026/9/12 12:05:54 | 华诺云谱 👁 阅读
快速上手 go2rtc:一键把多协议摄像头变成零延迟流媒体
快速上手 go2rtc一键把多协议摄像头变成零延迟流媒体【免费下载链接】go2rtcUltimate camera streaming application项目地址: https://gitcode.com/GitHub_Trending/go/go2rtc家里五个摄像头海康、小米、TP-Link 混着用有的只说 RTSP有的只给 MJPEG各说各话。go2rtc 是一个零依赖、低延迟的流媒体转换工具把它们统统收编成同一套流。 项目定位速览go2rtc 是一个用 Go 写的流媒体应用本质上是一台「摄像头流媒体转换工具」。你把任意协议的源塞给它它负责转换成浏览器和各种设备能直接播的格式不需要装 FFmpeg也不用写转码脚本。它解决的是多设备、多协议互不兼容的麻烦RTSP、RTMP、WebRTC、HLS、MJPEG 在同一个进程里互转输出侧几乎零延迟。你不用为每个品牌单独搭一套服务。适合两类人想统一管理家庭安防摄像头的爱好者以及需要自建一个轻量流媒体转换服务的开发者。 5 分钟跑起来最省事的路径是 Docker一条命令就能起来它已内置好依赖挂载一个目录保存配置即可docker run -d \ --name go2rtc \ --network host \ --restart unless-stopped \ -v ~/go2rtc:/config \ alexxit/go2rtc如果你不想用 Docker直接下载对应平台的二进制文件执行也行效果一样。跑起来之后打开浏览器访问http://localhost:1984看到 Web 界面即成功。想改源码的话从 main.go 入手看启动流程最顺。 一份配置文件看懂核心玩法go2rtc 怎么配置说白了就是改一个go2rtc.yaml。下面是精简版覆盖监听端口和几个摄像头流api: listen: :1984 # Web 界面与 API rtsp: listen: :8554 # RTSP 输出 webrtc: listen: :8555 # WebRTC 输出 streams: living_room: rtsp://admin:pass192.168.1.100:554/stream1 doorbell: rtsp://admin:pass192.168.1.200:554/stream1 garage: http://192.168.1.102/mjpeg操作很简单改完文件重启容器或直接重启进程再刷新浏览器就生效了。不需要逐项研究所有配置这几段已经够你接上第一批摄像头。 三个值得尝试的进阶玩法把一路 RTSP 拆成三格式输出在streams里定义一条源后它会自动同时通过 RTSP:8554、WebRTC:8555、HLS:1984对外提供这就是典型的 RTSP 转 WebRTC 场景。浏览器会自动挑零延迟的 WebRTCiPhone 则回落到 HLS不用你额外写配置。streams: cam1: rtsp://192.168.1.100:554/stream1让门铃摄像头开口说话双向音频靠一个查询参数打开给源加上backchannel1浏览器就能把声音推回摄像头对讲和门铃场景直接可用。注意浏览器要求走 HTTPS 才允许麦克风权限。streams: doorbell: rtsp://192.168.1.200:554/stream1?backchannel1开启硬件加速压低 CPU加上ffmpeg:前缀会触发转码go2rtc 会自动探测本地 GPUvaapi、cuda、Videotoolbox 等并启用硬件加速CPU 占用明显下降适合多路流同时跑。streams: cam1: ffmpeg:rtsp://192.168.1.100:554/stream1#videoh264 和这些工具搭配更强大搭配项目典型场景配置要点一句话Home Assistant把摄像头变成智能家居实体手机一点就看HA 里写go2rtc段camera加platform: go2rtcFrigateAI 移动 / 物体检测低延迟喂流输入指向rtsp://127.0.0.1:8554/流名自建直播推流本地摄像头推到 RTMP 平台在streams里加一路rtmp://源再推流go2rtc Home Assistant 集成是最常见的组合几乎零成本Frigate 则把检测算法交给它go2rtc 只管稳定喂流。 踩坑实录4 个高频问题视频延迟过高多半是走了 HLS 这类切片协议或者源本身缓冲太大。优先改用 WebRTC 输出必要时在流上加#videoh264让它走低延迟转码。某些设备无法播放或黑屏通常是浏览器或设备不支持该编码比如老设备只认 H264不给 HEVC。给这路流显式指定#videoh264转成通用编码即可。双向音频不工作要么源本身不支持上行通道要么页面不是 HTTPS 导致麦克风被禁。先确认协议带backchannel1再把页面放到 HTTPS 下访问。跨网段访问失败go2rtc 用--network host时绑定在宿主机 IP换个网段要用对应 IP 或域名访问别再用 localhost。检查监听端口是否对目标网段开放。下一步先按 Docker 命令把服务跑起来接一个最顺手的摄像头再用 WebRTC 输出在浏览器里看到画面。想深入配置细节可以翻一下 README.md从里到外都讲得挺全。【免费下载链接】go2rtcUltimate camera streaming application项目地址: https://gitcode.com/GitHub_Trending/go/go2rtc创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
📝

华诺云谱内容团队

资深建站顾问 · 行业研究员

10年+企业数字化服务经验,专注智能建站、SEO优化与品牌营销,持续输出建站技巧、行业洞察与营销干货,已帮助5000+企业实现数字化增长。

你可能需要的服务

订阅华诺云谱资讯周报

每周一封,精选建站技巧、SEO与营销干货,直达邮箱。已有 8,000+ 企业主订阅,助你少走弯路。