协议总览
Monibuca V6 采用插件化架构,每个协议以独立插件的形式提供。预编译二进制和 Docker 镜像已包含全部协议支持,通过配置文件按需启用。
| 协议 | 推流 | 拉流 | 延迟 | 典型场景 |
|---|---|---|---|---|
| RTMP | ✅ | ✅ | 1-3s | OBS/FFmpeg 推流、直播分发 |
| RTSP | ✅ | ✅ | 0.5-2s | 摄像头接入、安防监控 |
| HTTP-FLV | ❌ | ✅ | 1-3s | Web 播放、低延迟直播 |
| HLS | ❌ | ✅ | 5-30s | 大规模分发、移动端播放、CDN 兼容 |
| WebRTC | ✅ | ✅ | < 500ms | 超低延迟互动、视频会议 |
| SRT | ✅ | ✅ | 120ms+ | 远程连线、弱网传输、广电级采集 |
| GB28181 | ✅ | ✅ | 1-3s | 国标视频监控、平台级联 |
| WebTransport | ✅ | ✅ | < 500ms | 新一代 Web 低延迟传输 |
每个协议插件都可以在配置文件中按需启用或禁用:
# config.yaml — 按需启用协议rtmp: enable: true tcp: listenaddr: ":1935"
rtsp: enable: true tcp: listenaddr: ":8554"
hls: enable: true
webrtc: enable: true portrange: "udp:9000-9100"
# 不需要的协议设为 false 或不填srt: enable: falseMonibuca V6 支持不同协议间的自动音频转码,确保跨协议播放的兼容性。
Opus ↔ AAC 转码
Section titled “Opus ↔ AAC 转码”WebRTC 和 WebTransport 使用 Opus 音频编码,而 RTMP、HTTP-FLV、HLS 等传统协议使用 AAC 音频编码。当流在这些协议之间转发时,引擎会自动进行音频转码:
| 场景 | 转码方向 | 说明 |
|---|---|---|
| WebRTC 推流 → RTMP 拉流 | Opus → AAC | 自动转码 |
| WebRTC 推流 → HLS 拉流 | Opus → AAC | 自动转码 |
| RTMP 推流 → WebRTC 拉流 | AAC → Opus | 自动转码 |
| RTMP 推流 → RTMP 拉流 | 无需转码 | 直接转发 |
| WebRTC 推流 → WebRTC 拉流 | 无需转码 | 直接转发 |
启用音频转码功能需要开启 transcode feature:
[features]transcode = ["codec/transcode"]视频编码兼容性
Section titled “视频编码兼容性”视频编码(H.264/H.265)在所有协议间通用,无需转码。不同协议对视频编码的支持情况:
| 编码格式 | RTMP | RTSP | HTTP-FLV | HLS | WebRTC | SRT | GB28181 | WebTransport |
|---|---|---|---|---|---|---|---|---|
| H.264 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| H.265 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
协议选型建议
Section titled “协议选型建议”- 推流端:推荐使用 RTMP(兼容性最好)或 SRT(弱网环境更稳定)
- Web 播放:推荐使用 HTTP-FLV(低延迟)或 HLS(高兼容性)
- 超低延迟:推荐使用 WebRTC 或 WebTransport
- 安防监控:推荐使用 RTSP 或 GB28181
- 大规模分发:推荐使用 HLS(CDN 友好)
联系我们
微信公众号:不卡科技
腾讯频道:流媒体技术
QQ 频道:p0qq0crz08
QQ 群:751639168