news 2026/9/15 14:23:27

如何使用 go2rtc 的 GoPro 源接入 USB 或 Wi-Fi 连接的 GoPro 运动相机?

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
如何使用 go2rtc 的 GoPro 源接入 USB 或 Wi-Fi 连接的 GoPro 运动相机?

如何使用 go2rtc 的 GoPro 源接入 USB 或 Wi-Fi 连接的 GoPro 运动相机?

【免费下载链接】go2rtcUltimate camera streaming application项目地址: https://gitcode.com/GitHub_Trending/go/go2rtc

本文解决的任务是:把通过 USB 或 Wi-Fi 连接到 go2rtc 主机的 GoPro 相机,作为一路流接入 go2rtc,并把它转发为 WebUI 播放、RTSP 输出等常规格式。前提条件是 go2rtc 版本不低于 v1.8.3(GoPro 源是在 v1.8.3 新增的,见 internal/gopro/README.md),运行系统为 Linux、Mac、Windows 或 HassOS。

支持的机型与系统

根据 internal/gopro/README.md 的说明:

  • 支持机型:HERO9、HERO10、HERO11、HERO12;
  • 支持系统:Linux、Mac、Windows、HassOS;
  • 其他相机型号的 API 不同,目前不在支持范围内。

超出这个范围的机型,文档明确说明"Other camera models have different APIs",没有给出可用的配置方式,不要尝试用gopro://源强接。

准备:安装并启动 go2rtc

按 README.md 的三种方式任选其一安装 go2rtc,然后打开 Web 界面http://localhost:1984/

  • 二进制:从最新 release 下载对应平台的文件(如 Linux 64-bit 用go2rtc_linux_amd64,Windows 10+ 64-bit 用go2rtc_win64.zip),Linux 和 Mac 上先执行chmod +x go2rtc_xxx_xxx
  • Docker:使用alexxit/go2rtc镜像,支持386amd64arm/v6arm/v7arm64架构;
  • Home Assistant add-on:Settings > Add-ons > Plus > Repositories 中添加https://github.com/AlexxIT/hassio-addons仓库,再在 go2rtc 上 Install > Start。

启动后默认端口:API/Web 界面在 1984(TCP),RTSP 服务器在 8554(TCP),WebRTC 在 8555(TCP/UDP)。配置文件默认为当前工作目录下的go2rtc.yaml,也可以在 WebUI 中直接编辑。

连接相机:USB 与 Wi-Fi 的差别

两种方式在主机侧的准备不同:

USB 连接

  • USB 连接的相机会在系统中创建一个新的网络接口(文档原话:USB-connected cameras create a new network interface in the system),相机地址固定落在172.2X.1YZ.51这个网段内;
  • Linux 用户不需要安装任何东西;
  • Windows 用户需要先安装 GoPro 官方的网络驱动(GoPro Webcam 驱动,文档指向 GoPro 社区页面的说明)。驱动没装好时,系统里不会出现相机对应的网络接口,后面的发现步骤自然也列不出相机。

Wi-Fi 连接

相机通过 Wi-Fi 接入 go2rtc 主机所在网络后,拿到相机在局域网中的 IP 地址,直接用于配置即可,不需要等待接口发现。

两种方式最终都以gopro://<相机地址>的形式写进配置,差别只在地址的来源。

第一步:发现相机地址

打开 WebUI,进入Add页面,点击GoPro按钮。该按钮会调用api/gopro接口(页面实现见 www/add.html,接口注册见 internal/gopro/gopro.go),把发现的相机以表格形式列出来,每条对应一个gopro://<地址>的流源。

发现机制来自 pkg/gopro/discovery.go:扫描本机所有网络接口,匹配172.2X.1YZ.51形式的地址,并向http://<地址>:8080/gopro/webcam/status发请求,请求可达的即被列出来。也就是说,这个列表主要覆盖 USB 连接产生的新接口;Wi-Fi 连接的相机如果不在该网段内,需要自己用相机实际 IP 填配置。

第二步:把流加进配置

文档给出的配置写法(来自 internal/gopro/README.md):

streams: hero12: gopro://172.20.100.51

其中hero12是流名,可以自取;172.20.100.51是文档中的 USB 连接示例地址,替换为第一步发现(或自行确认)的相机地址。可以在go2rtc.yaml里直接添加,也可以通过 WebUI 的配置编辑器修改(编辑器带语法高亮和检查)。

从实现上看(pkg/gopro/producer.go),go2rtc 收到流后会向相机的8080端口依次发送/gopro/webcam/stop/gopro/webcam/start指令,并在本机监听 UDP 端口 8554 接收相机推过来的 MPEG-TS 数据。注意这与 RTSP 服务器同用 8554 端口号,但一个是 UDP、一个是 TCP,两者不冲突。

验证接入结果

接入是否成功,按以下顺序检查:

  1. WebUI 流列表:添加配置并重启(或保存)后,hero12出现在 WebUI 的流列表中,说明gopro://源已被 go2rtc 识别并拉起;
  2. RTSP 输出:go2rtc 的任意流都可以以 RTSP 形式取用,格式为rtsp://<go2rtc主机地址>:8554/<流名>,本例即rtsp://192.168.1.123:8554/hero12(地址换成你的主机);
  3. 低延迟播放核对:README.md 的 Tips 一节给出的低延迟播放命令可以直接用来验证画面:
ffplay -fflags nobuffer -flags low_delay "rtsp://192.168.1.123:8554/camera1"

192.168.1.123换成 go2rtc 主机地址、camera1换成你的流名hero12即可。能持续出画面,说明从相机到 go2rtc 再到输出端整条链路是通的。

排查与限制

  • 相机被检测到,但流起不来:文档给出的明确处理方式是关闭防火墙("if the camera is detected but the stream does not start, you need to disable the firewall")。这与上文一致:相机要能通过 HTTP 访问 go2rtc 主机的 8080 端口路径,并把 UDP 数据送到主机的 8554 端口,防火墙拦截这两条方向时就会表现为"发现得到但不出流"。
  • Windows 上 GoPro 列表为空:先确认 GoPro Webcam 网络驱动是否已安装、系统里是否出现了相机对应的172.2X网段接口;驱动未装时新接口不会出现,发现步骤自然无结果。
  • 机型不在 HERO9–HERO12 范围内:不要配置gopro://源,文档明确其他型号 API 不同。
  • go2rtc 版本低于 v1.8.3:没有gopro这个流源类型,需要先升级到 v1.8.3 或之后的版本再操作。

完成上述步骤后,相机会以一路普通 go2rtc 流存在,可以像其他流一样通过 WebUI、RTSP 等通道消费。

【免费下载链接】go2rtcUltimate camera streaming application项目地址: https://gitcode.com/GitHub_Trending/go/go2rtc

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/15 14:22:04

DPR适配与图片压缩:前端视觉清晰度实战指南

1. 一张图在设计稿里锐利如刀&#xff0c;在手机上却像蒙了层雾——这不是你的错&#xff0c;是像素在说谎你肯定遇到过&#xff1a;UI设计师发来的PNG截图&#xff0c;放大看连按钮边缘的0.5px描边都清晰可辨&#xff0c;你兴冲冲切图、写代码、打包上线&#xff0c;结果一真机…

作者头像 李华
网站建设 2026/9/15 14:21:38

Unity MCP 连接问题排查与性能调优:从连不上到跑得顺

Unity MCP 连接问题排查与性能调优&#xff1a;从连不上到跑得顺 【免费下载链接】unity-mcp Unity MCP acts as a bridge between AI assistants and your Unity Editor. Give your LLM tools to manage assets, control scenes, edit scripts, and automate tasks within Uni…

作者头像 李华
网站建设 2026/9/15 14:20:00

二手车价格预测:Python数据挖掘全流程实战

简介&#xff1a;本资源是一份面向计算机及相关专业学生的数据挖掘实战项目&#xff0c;聚焦二手车价格预测这一典型回归任务&#xff0c;适用于课程设计、期末大作业及毕业设计场景&#xff0c;尤其适合缺乏项目经验但希望独立完成高分作业的学习者。压缩包共26个文件&#xf…

作者头像 李华