
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Broadcast Box是一款基于WebRTC技术的广播工具,旨在实现亚秒级延迟的音视频广播。它设计简洁易用且易于修改,展示了广播领域的前沿技术,支持多视角直播、最新视频编解码及P2P传输,让任何人都能轻松开展低延迟广播。
采用WebRTC替代传统RTMP和HLS协议,实现最快的广播体验,延迟可低至亚秒级,满足实时互动需求。
通过WebRTC支持最新视频编解码器(如AV1),在相同视频质量下可减少50%的带宽需求,提升传输效率。
WebRTC允许在同一会话中上传多个视频流,支持多摄像头视角广播或实时互动视频体验,丰富直播内容形式。
广播者可上传不同质量级别的视频流,无需服务器承担高昂转码成本,同时为观众提供适配体验,平衡成本与质量。
支持OBS等专业广播软件或直接通过浏览器开播,无需复杂的比特率和编解码器配置,新手也能一键启动直播,降低使用门槛。
无需公网IP或端口转发即可广播视频,通过WebRTC的NAT穿越技术,用户可在本地运行OBS并分享视频至全球;也支持P2P拉取其他广播者流,实现亚秒级联流。
适用于需要低延迟实时互动的广播场景,包括:
可直接使用公共实例:b.siobud.com,无需本地部署。
使用OBS广播
打开OBS,进入设置 > 流,配置以下参数:
https://b.siobud.com/api/whip;本地部署填写http://<你的IP>:8080/api/whip(可选)优化延迟至亚秒级:
x264,调谐为zerolatency(零延迟)点击开始推流即可启动广播。
使用GStreamer(命令行)
通过示例脚本广播测试源或摄像头/麦克风输入:
shell# 测试源广播 ./examples/gstreamer-broadcast.nu http://localhost:8080/api/whip testStream1 # 摄像头源广播(需连接摄像头) ./examples/gstreamer-broadcast.nu http://localhost:8080/api/whip testStream1 v4l2
依赖:需安装gstreamer-1.0及good,bad,ugly插件和gst-plugins-rs。
广播内容通过以下方式访问:
StreamTest,公共实例播放地址为https://b.siobud.com/StreamTest;本地实例为http://<你的IP>:8080/StreamTest本地环境(macOS/Windows Docker)
因Docker桌面版运行在NAT环境,需启用UDP复用:
shelldocker run -e UDP_MUX_PORT=8080 -e NAT_1_TO_1_IP=127.0.0.1 -p 8080:8080 -p 8080:8080/udp docker.xuanyuan.run/seaduboi/broadcast-box
访问地址:http://localhost:8080
云服务器(AWS等)
需使用--net=host模式以支持随机UDP端口监听:
shelldocker run --net=host -e INCLUDE_PUBLIC_IP_IN_NAT_1_TO_1_IP=yes docker.xuanyuan.run/seaduboi/broadcast-box
提供自动HTTPS(Let's Encrypt)和自动更新(Watchtower),适合VPS/云服务器快速部署:
shellexport URL=my-server.com
shelldocker-compose up -d
后端可通过以下环境变量自定义配置:
| 环境变量 | 说明 |
|---|---|
DISABLE_STATUS | 禁用状态API |
DISABLE_FRONTEND | 禁用前端服务,仅启用REST API和WebRTC |
HTTP_ADDRESS | HTTP服务器地址 |
NETWORK_TEST_ON_START | 设置为"true"时,启动时检查网络连接性 |
ENABLE_HTTP_REDIRECT | 将HTTP流量重定向到HTTPS |
SSL_CERT | SSL证书路径(使用内置HTTP服务器时) |
SSL_KEY | SSL密钥路径(使用内置HTTP服务器时) |
NAT_1_TO_1_IP | 声明非本地IP(如公网IP),多IP用` |
INCLUDE_PUBLIC_IP_IN_NAT_1_TO_1_IP | 自动配置公网IP到NAT_1_TO_1_IP |
INTERFACE_FILTER | 仅使用指定网络接口进行UDP流量 |
NAT_ICE_CANDIDATE_TYPE | NAT ICE候选类型,默认NAT_1_TO_1_IP覆盖,设为srflx则追加IP |
STUN_SERVERS | STUN服务器列表,用` |
INCLUDE_LOOPBACK_CANDIDATE | 启用回环地址WebRTC流量监听(默认禁用) |
UDP_MUX_PORT_WHEP | WHEP流量的UDP复用端口 |
UDP_MUX_PORT_WHIP | WHIP流量的UDP复用端口 |
UDP_MUX_PORT | 所有UDP流量的复用端口(默认随机端口) |
TCP_MUX_ADDRESS | 通过TCP提供WebRTC流量的地址 |
TCP_MUX_FORCE | 仅通过TCP提供WebRTC流量 |
APPEND_CANDIDATE | 追加ICE代理未生成的候选(NAT_1_TO_1_IP的替代方案,效果较差) |
Docker环境下,Broadcast Box默认启动网络测试,验证WebRTC流量是否可正常建立,若配置错误则服务不启动。
测试启用提示:
consoleNETWORK_TEST_ON_START is enabled. If the test fails Broadcast Box will exit. See the README.md for how to debug or disable NETWORK_TEST_ON_START
测试通过:
consoleNetwork Test passed. Have fun using Broadcast Box
测试失败:
consoleNetwork Test failed. Network Test client reported nothing in 30 seconds Please see the README and join Discord for help
禁用测试:设置环境变量NETWORK_TEST_ON_START=false。
后端暴露以下核心端点:
/api/whip:启动WHIP会话(通过WebRTC广播视频)/api/whep:启动WHEP会话(通过WebRTC播放视频)/api/status:查看所有活动WHIP流状态(可通过DISABLE_STATUS禁用)您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务