哪些流媒体协议可以发布视频/音频



我目前正在研究流媒体协议,我对哪些协议实际上可以用来发布音频和视频有点困惑。在这一点上,我相信以下内容是正确的,但我不确定这是否都是正确的,所以如果我错了,请纠正我:

目录适用于发布和播放流。

RTSP适用于发布和播放流。

HLS适合播放流,不适合发布 (http://blog.infrared5.com/2016/01/what-you-need-to-know-about-hls-pros-and-cons/)

HLS 是仅限订阅者的协议。与具有从浏览器发布的规范的WebRTC不同,HTTP Live Streaming仅支持播放流。如果要为设备发布实时视频流,则只需寻找其他技术即可执行此操作。

网络实时通信适用于发布和播放流。

MPEG-DASH不确定这个?

如果协议不能进行广播(例如HLS),通常如何实现广播?

RTSP 是一种"元协议",用于交换控制消息(播放、暂停等),但它本身并不流式传输数据。其他协议(如RTMP)用于实现这一点。

HLS和MPEG-DASH仅用于从服务器流式传输视频;服务器需要以特定方式准备视频数据,客户端可以遵循HLS/MPEG-DASH协议,使用标准HTTP协议使用可变比特率从服务器接收视频数据。它与将视频从客户端上传到服务器无关。

做后者的选项是WebRTC和RTMP。RTMP是老派(部分)专有解决方案,需要一些服务器端组件,要么是Adobe Flash Media Server(或任何营销名称du jour),要么是开源替代实现。它需要客户端的Flash或其他功能强大的浏览器插件。

WebRTC/ORTC是最近浏览器原生的标准化开放协议,无需插件即可工作,并且可以流式传输视频P2P;这意味着您可以直接在两个用户之间流式传输,也可以流式传输到可以录制/转码/重播流的服务器。

如果你愿意安装任何类型的浏览器插件,我不会太担心协议,而是看看支持流媒体视频的产品;如果你想要一个原生的开源解决方案,那就是WebRTC。

最新更新