
如何使用 go2rtc 的 Wyze 源通过原生 P2P 协议接入 Wyze 摄像头【免费下载链接】go2rtcUltimate camera streaming application项目地址: https://gitcode.com/GitHub_Trending/go/go2rtc本文解决的问题是Wyze 摄像头没有原生 RTSP 输出想脱离 Wyze App 和 SDK直接通过摄像头厂商的 P2P 协议把视频取回 go2rtc再经 WebUI、WebRTC、RTSP 等现有链路播放。go2rtc 的wyze源v1.9.14 起提供实现了这一能力加载摄像头列表时需要访问 Wyze 云端之后所有拉流都走局域网内摄像头 IP 的直连 P2P不再经过云端中转。前提条件开始之前确认以下条件在 Wyze 源说明文档 中均有明确要求有一个 Wyze 账号并已从 Wyze Developer Portal 申请到 API Key文档给出的获取渠道是 Wyze 官方的 Developer Portal 页面摄像头固件支持 DTLS。只支持 DTLS 固件的摄像头非 DTLS 的旧固件会被拒绝连接go2rtc 已按 主 README 安装二进制、Docker 或 Home Assistant 插件均可能在http://localhost:1984/打开 WebUI摄像头与运行 go2rtc 的机器在同一局域网因为拉流是直连摄像头本地 IP 的 P2P摄像头处于文档兼容列表覆盖的范围内。Gwell 系协议部分早期型号如 Wyze Cam Pan v4、Wyze Cam OG 等目前不受支持列表中标?的型号为文档尚未验证的机型。通过 WebUI 接入账号这是文档给出的主路径一次登录即可自动加载全部摄像头打开 go2rtc WebUIhttp://localhost:1984/进入Add页选择Wyze填写 API ID、API Key、账号邮箱和密码从返回的列表中勾选要添加的摄像头流地址会自动生成。完成登录后账号凭证被写入配置文件的wyze段由 WebUI 的 POST 逻辑 自动 patch 到go2rtc.yaml同时生成对应的streams条目。最终配置形如文档中的示例your-api-id、your-api-key、yourpassword等为文档中的占位符需替换成真实值wyze: useremail.com: api_id: your-api-id api_key: your-api-key password: yourpassword # or MD5 triple-hash with md5: prefix streams: wyze_cam: wyze://192.168.1.123?uidWYZEUID1234567890ABenrxxxmacAABBCCDDEEFFmodelHL_CAM4dtlstrue几点说明streams中wyze://后的地址不需要手拼第 4 步自动生成如果你要手动写配置参数含义见下节password字段支持md5:前缀用于直接填写 MD5 三重哈希值而不写明文密码文档配置示例中的注释。理解自动生成的流地址流地址格式为wyze://[IP]?uid[P2P_ID]enr[ENR]mac[MAC]model[MODEL]subtype[hd|sd]dtlstrue各参数含义以 文档参数表 为准参数说明IP摄像头的局域网 IP 地址uidP2P 标识20 字符enrDTLS 加密密钥mac设备 MAC 地址model摄像头型号如HL_CAM4dtls启用 DTLS 加密默认truesubtype分辨率hd或sd默认hddtls参数不是可选项客户端实现 在dtls ! true时直接返回wyze: only DTLS cameras are supported错误并断开这与仅支持 DTLS 固件的前提一致。验证接入是否成功在 WebUI 的摄像头列表中确认所选摄像头已出现流名如wyze_cam已加入streams在 WebUI 中打开该流播放页面确认出图。出图即说明 DTLS 握手、P2P 登录和媒体探测均已完成检查网络行为是否符合预期只有加载摄像头列表那一步访问 Wyze 云端之后的拉流全部是本机到摄像头 IP 的本地连接文档明确的网络模型。如果第 1 步加载摄像头失败常见于凭证或账号问题POST 时缺少任一字段会直接报email, password, api_key and api_id required账号开启了 MFA 时登录逻辑 会返回MFA required错误而不是静默失败。可选配置分辨率切换。用subtype参数为同一摄像头建立 HD/SD 两条流文档给出的配置streams: wyze_hd: wyze://...subtypehd wyze_sd: wyze://...subtypesd双向语音对讲。不需要额外配置只要消费者向该流发送音频就会转发到摄像头扬声器Two-Way Audio 一节说明其为自动行为。go2rtc 的双向音频能力列表已包含wyze源。支持的编解码。该源支持 H.264/H.265 视频AAC、G.711、PCM、Opus 音频具体机型以兼容表为准。限制与注意事项仅支持 DTLS 固件的摄像头Gwell 系协议Wyze Cam Pan v4、Wyze Cam OG 等文档明确标注not yet supported且无局域网 IP 的 Gwell 协议设备在列表加载时会被跳过见 GetCameraList 实现。拉流是本地直连摄像头 IP 变化后wyze://地址中的 IP 需要同步更新。兼容表中多个电池类、太阳能类门铃/摄像头型号标记为?表示文档未确认支持接入前可先查表。该源独立于旧方案主 README 中提到的 docker-wyze-bridge WebRTC 方式 属于 legacy 路径二者选其一即可原生 P2P 方案无需额外部署 bridge 容器。进一步细节协议层 K-auth 交互、分辨率帧型选择等可参考 pkg/wyze 客户端实现 与 流生产者。【免费下载链接】go2rtcUltimate camera streaming application项目地址: https://gitcode.com/GitHub_Trending/go/go2rtc创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考