RTSP、RTMP和HTTP协议的区别
RTSP和RTMP是2個不同的網絡傳輸協議,RTSP(Real Time Streaming Protocol),RFC2326,實時流傳輸協議,而RTMP是Real Time Messaging Protocol(實時消息傳輸協議),網絡攝像機的廠家,可根據自身的需求,采用不同協議來處理。目前多數網絡攝像機支持RTSP、ONVIF等通用的協議,而支持RTMP比較少。
RTMP是Real Time Messaging Protocol(實時消息傳輸協議)的首字母縮寫。該協議基于TCP,是一個協議族,包括RTMP基本協議及RTMPT/RTMPS/RTMPE等多種變種。RTMP是一種設計用來進行實時數據通信的網絡協議,主要用來在Flash/AIR平臺和支持RTMP協議的流媒體/交互服務器之間進行音視頻和數據通信。支持該協議的軟件包括Adobe Media Server/Ultrant Media Server/red5等。
RTSP(Real Time Streaming Protocol),RFC2326,實時流傳輸協議,是TCP/IP協議體系中的一個應用層協議,由哥倫比亞大學、網景和RealNetworks公司提交的IETF RFC標準。該協議定義了一對多應用程序如何有效地通過IP網絡傳送多媒體數據。RTSP在體系結構上位于RTP和RTCP之上,它使用TCP或UDP完成數據傳輸。HTTP與RTSP相比,HTTP請求由客戶機發出,服務器作出響應;使用RTSP時,客戶機和服務器都可以發出請求,即RTSP可以是雙向的。RTSP是用來控制聲音或影像的多媒體串流協議,并允許同時多個串流需求控制,傳輸時所用的網絡通訊協定并不在其定義的范圍內,服務器端可以自行選擇使用TCP或UDP來傳送串流內容,它的語法和運作跟HTTP 1.1類似,但并不特別強調時間同步,所以比較能容忍網絡延遲。而前面提到的允許同時多個串流需求控制(Multicast),除了可以降低服務器端的網絡用量,更進而支持多方視訊會議(Video Conference)。因為與HTTP1.1的運作方式相似,所以代理服務器〈Proxy〉的快取功能〈Cache〉也同樣適用于RTSP,并因RTSP具有重新導向功能,可視實際負載情況來轉換提供服務的服務器,以避免過大的負載集中于同一服務器而造成延遲。
RTSP RTMPHTTP都是可以做視頻直播或者點播,但一般做直播用RTSP RTMP,做點播用HTTP。做視頻會議的時候原來用SIP協議,現在基本上被RTMP協議取代了,下面我們就來看看他們的作用到底有何不同。
共同點:
1:RTSP RTMP HTTP都是在應用應用層。
2: 理論上RTSP RTMPHTTP都可以做直播和點播,但一般做直播用RTSP RTMP,做點播用HTTP。做視頻會議的時候原來用SIP協議,現在基本上被RTMP協議取代了。
?
區別:
1:HTTP: 即超文本傳送協議(ftp即文件傳輸協議)。
? ? ? HTTP:(Real Time Streaming Protocol),實時流傳輸協議。
? ? ? HTTP全稱Routing Table Maintenance Protocol(路由選擇表維護協議)。
?
2:HTTP將所有的數據作為文件做處理。http協議不是流媒體協議。
? ? ? RTMP和RTSP協議是流媒體協議。
?
3:RTMP協議是Adobe的私有協議,未完全公開,RTSP協議和HTTP協議是共有協議,并有專門機構做維護。
?
4:RTMP協議一般傳輸的是flv,f4v格式流,RTSP協議一般傳輸的是ts,mp4格式的流。HTTP沒有特定的流。
?
5:RTSP傳輸一般需要2-3個通道,命令和數據通道分離,HTTP和RTMP一般在TCP一個通道上傳輸命令和數據。
RTSP實時流協議?作為一個應用層協議,RTSP提供了一個可供擴展的框架,它的意義在于使得實時流媒體數據的受控和點播變得可能。總的說來,RTSP是一個流媒體表示 協議,主要用來控制具有實時特性的數據發送,但它本身并不傳輸數據,而是必須依賴于下層傳輸協議所提供的某些服務。RTSP可以對流媒體提供諸如播放、暫 停、快進等操作,它負責定義具體的控制消息、操作方法、狀態碼等,此外還描述了與RTP間的交互操作(RFC2326)。
總結
以上是生活随笔為你收集整理的RTSP、RTMP和HTTP协议的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: GPS两点的距离
- 下一篇: 多媒体文件格式之TS