實時消息協議—RTMP
什么是RTMP?
RTMP(Real-Time Messaging Protocol)是一種支持實時在線視頻流的數據傳輸技術。RTMP 最初設計用于在專用流服務器和 Adob??e Flash Player 之間傳輸音頻和視頻數據。然而,如今,該協議最常用于向社交媒體平臺、流媒體平臺和媒體服務器傳送編碼內容。雖然 RTMP 曾經是專有的,但現在是一個開放規范。
RTMP 流媒體如何工作?
Macromedia(即現在的 Adob??e Systems)開發了 RTMP 規范 ,用于音頻和視頻數據的高性能傳輸。RTMP 在播放器客戶端和服務器之間保持恒定的連接,允許該協議充當管道并將視頻數據快速傳輸到觀看者。
由于 RTMP 位于傳輸控制協議 (TCP) 之上,因此它在傳輸數據時使用三向握手。發起方(客戶端)請求接受方(服務器)啟動連接;接受者回應;然后發起者確認響應并在任一端之間維持會話。因此,RTMP是相當可靠的。
RTMP的三步流程:
- 握手:客戶端通常采用編碼軟件或硬件的形式,通過交換三個數據包來啟動與其希望流式傳輸的服務器的連接。
- 客戶端發送的第一個數據包告訴服務器正在傳輸哪個版本的 RTMP。
- 客戶端立即發送而不等待任何響應的第二個數據包包含時間戳。此時,服務器會使用剛剛收到的兩個數據包的回顯或副本以及收到它們的時間戳進行響應。
- 建立雙向通信后,客戶端發送一個最終數據包,它是時間戳的副本。然后服務器返回它。當服務器返回最后一個(第三個)數據包時,握手完成。
- 連接:然后,客戶端和服務器使用操作消息格式 (AMF) 編碼消息協商連接。RTMP 編碼器使用 AMF 向服務器發送連接請求,并指示連接 URL、音頻編解碼器和視頻編解碼器等詳細信息。一旦服務器響應“允許”,流就可以開始。
- Stream:完成握手和連接步驟后,現在可以傳送流數據。createStream、播放、查找和暫停等用戶命令允許數據傳輸按指示進行。
2023-12-12
- 12-12
- 11-20
- 10-20
-
10-17
? 什么是魯棒性
- 09-18
- 09-18
- 09-14
- 09-14