流媒體直播協(xié)議詳解
2024-4-30 22:06:46
用HTTP方式:
先通過服務器將FLV下載到本地緩存,,然后再通過NetConnection的本地連接來播放這個FLV,,這種方法是播放本地的視頻,并不是播放服務器的視頻,。因此在本地緩存里可以找到這個FLV,。其優(yōu)點就是服務器下載完這個FLV,,服務器就沒有消耗了,,節(jié)省服務器消耗,。其缺點就是FLV會緩存在客戶端,對FLV的保密性不好,。是一種將直播流模擬成FLV文件,通過HTTP協(xié)議進行下載的模式來實現(xiàn)流媒體傳輸?shù)膮f(xié)議,,端口號80,。一般建議使用HTTP FLV,實時性和RTMP相等,。
優(yōu)點:HTTP相比于RTMP省去了一些協(xié)議交互時間,,首屏時間更短。HTTP可拓展的功能更多,。
用RTMP方式:
通過NetConnection連接到FMS(Flash Media Server)或Red5服務器,,并實時播放服務器的FLV文件,這種方式可以任意選擇視頻播放點,,并不象HTTP方式需要緩存完整個FLV文件到本地才可以任意選擇播放點,,其優(yōu)點就是在本地緩存里是找不到這個FLV文件的。其優(yōu)點就是FLV不會緩存在客戶端,,F(xiàn)LV的保密性好,,其缺點就是消耗服務器資源,連接始終是實時的,。
由以上分析可知,,Http方式是本地播放,,而RTMP方式是服務器實時播放。Adobe公司的流媒體傳輸協(xié)議,,端口號1935,。普通網(wǎng)絡用戶均可使用,包括非IOS平臺用戶,,對非80端口(如1935)無限制的網(wǎng)絡環(huán)境用戶,。
優(yōu)點:防HTTP下載,延時短,。
RTSP方式:
RTSP 1.0標準的制訂者沒有充分預測到互聯(lián)網(wǎng)帶寬的快速增長,,以及由于IPv4地址短缺導致的NAT技術的廣泛使用,還有代理服務器的大量存在,,它在傳輸可靠性和易用性上都存在一定的缺陷,。雖然各家廠商都做了一定程度的修補,比如支持RTSP over HTTP,,支持NAT穿透等,,但仍然于事無補。在2005之后網(wǎng)絡視頻大爆炸的幾年中,,RTSP 1.0并沒有得到y(tǒng)outube, hulu, 土豆,,優(yōu)酷等視頻服務提供商的青睞,相反,,Adobe公司開發(fā)的私有流媒體技術RTMP以其優(yōu)秀的易用性和富媒體的一體化集成,,得到了多數(shù)視頻服務提供商的追捧,成為了事實上的標準.
缺點:web端播放rtsp流的話,,需要寫插件,,而且對瀏覽器也很挑剔,flash不支持rtsp,,需要做activeX插件,,目前的CDN都是基于RTMP的。
HLS(Http Living Streaming)方式:
從2010年起,,蘋果開始在iOS設備上支持一種叫做”Live HTTP”的流媒體技術,,并宣布在iOS上不會支持RTSP和Flash技術。Live HTTP本質上跟基于HTTP的文件分段下載很接近,。在帶寬充裕的前提下,,live HTTP能夠實現(xiàn)跟RTSP和RTMP同樣的流媒體播放效果,同時得到了更好的易用性,,更簡單的控制,。在最新一代的超文本標識語言HTML5中,視頻文件的點播,,同樣也采用了HTTP作為其承載協(xié)議,。
HLS是IOS平臺下的流媒體傳輸協(xié)議 ,,端口號80。
優(yōu)點:H5瀏覽器支持比較好,,IOS,,安卓原生支持。
缺點:延遲性比較大,。樓上說的切片,,關鍵幀改變后切片時間可以縮短,而且可以自己設定首次產生多少分片,。
RTMP(Real Time Messaging Protocol)是基于TCP的,,由Adobe公司為Flash播放器和服務器之間音頻、視頻傳輸開發(fā)的開放協(xié)議,。
HLS(HTTP Live Streaming)是基于HTTP的,,是Apple公司開放的音視頻傳輸協(xié)議。
HTTP FLV則是將RTMP封裝在HTTP協(xié)議之上的,,可以更好的穿透防火墻等,。