我目前正在研究流式协议,我对哪些协议可以用于发布音频和视频感到有点困惑。在这一点上,我相信以下是正确的,但我不确定这一切都是正确的,所以如果我错了,请纠正我:
RTMP适用于流的发布和播放。
RTSP适用于流的发布和播放。
适合播放流的HLS,不适合发布(http://blog.infrared5.com/2016/01/what-you-need-to-know-about-hls-pros-and-cons/)
HLS是一种用户专用协议.与WebRTC不同的是,只支持播放流,后者有从浏览器发布的规范。如果您想为设备发布实时视频流,您只需寻找其他技术就可以做到这一点。
WebRTC适用于流的发布和播放。
MPEG-DASH不确定这个吗?
如果协议不能广播(例如,HLS),那么通常如何实现广播?
发布于 2016-02-29 11:19:05
RTSP是一种“元协议”,用于交换控制消息(播放、暂停等),但它本身并不是流数据。其他协议,如RTMP,是用来实现这一点的。
HLS和MPEG-破折号仅用于从服务器上传输视频;服务器需要以特定的方式准备视频数据,客户端可以遵循HLS/MPEG-破折号协议,使用标准HTTP协议使用可变比特率从服务器接收视频数据。它与从客户端上传视频到服务器无关。
执行后者的选项是WebRTC和RTMP。RTMP是一种旧的(部分)专有解决方案,需要一些服务器端组件,或者(或任何营销名称du jour ),或者一个开源替代实现。它需要Flash或客户端的另一个有能力的浏览器插件。
WebRTC/ORTC是一种标准的开放协议,它可以在没有插件的情况下工作,并且可以对视频P2P进行流处理;这意味着您可以直接在两个用户之间进行流,也可以将流发送到一个服务器上,该服务器可以记录/转码/重播该流。
如果您愿意安装任何类型的浏览器插件,我不会太担心协议,而应该考虑支持流视频的产品;如果您想要一个本地的开源解决方案,WebRTC就是。
https://stackoverflow.com/questions/35697778
复制相似问题