Created RTMP对H265和OPUS的支持 (markdown)

夏楚
2020-07-30 10:02:25 +08:00
parent 142619f336
commit 715e1420c1

@@ -0,0 +1,14 @@
## 背景
rtmp/flv是直播行业事实上的标准这两者在国内直播领域应用非常广泛。在浏览器上要实现无插件的低延时直播播放基本绕不开rtmp/flv.
由于rtmp/flv是Adobe设计的私有协议原生是不支持H265(视频监控应用广泛)和opus(RTC应用广泛)的而目前视频监控、RTC相关行业都有使用直播基础设施的需求所以对rtmp进行修改使其添加对H265和opus的支持比较重要。
## 实现方式
rtmp通过codec id来判断编码格式同时通过message type来区分数据类型(包括音频包、视频包)所以音视频的codec_id是可以相同的(相同类型不冲突即可)
例如H264的codec id为7G711A的codec id也为7。
目前国内默认定义H265的codec id为**12**(由金山云首先[实现并公布](https://github.com/ksvc/FFmpeg/wiki)).
而对opus的rtmp扩展目前还未有广泛共识作者在与学而思的刘连响讨论后定义其codec id为**13**目前已经实现了对FFmpeg(基于最新版本)的修改,添加了对[h264/opus的rtmp扩展](https://gitee.com/xia-chu/FFmpeg).
## 服务器相关支持
ZLMediaKit已经实现了rtsp/rtmp/mp4对h265/opus的支持, 预计很快就能发布,届时欢迎各位测试使用。