一、直播概述
关于直播,大概的过程是:推流端——>源站——>客户端拉流,用媒介播放
客户端所谓的拉流就是一个播放的地址url,会有多种类型的流:
视频直播服务目前支持三种直播协议,分别是RTMP、HLS、FLV :
(1)RTMP: 实时消息传输协议,
但是需要 flash 插件的支持,则是,手机浏览器是无法支持的。跟其他因素无关,这种类型的流就是无法在手机浏览器播放。
(2)HLS 协议:基于HTTP协议的流直播(wikipedia)
。它可以基于h5的video标签播放,所以只要支持h5就能支持hls这种推流,就是说它在大部分手机浏览器的支持度是很好的,但是有个致命的痛点就是延迟很大,会是10S以上,所以要实现在直播的过程中实现互动就很尴尬,所以适合仅仅看直播的业务。(文件是m3u8格式)
(3)HTTP-FLV :协议由 Adobe 公司主推,格式极其简单,只是在大块的视频帧和音视频头部加入一些标记头信息,由于这种极致的简洁,在延迟表现和大规模并发方面都很成熟。唯一的不足就是在手机浏览器上的支持非常有限,但是用作手机端 APP 直播协议却异常合适。
综上: 你可以用rtmp协议的流实现在pc端的直播,用hls协议实现在手机端浏览器的直播<