直播平臺總體架構緩存
註解:native&h5,原生開發和符合開發模式服務器
視頻直播鏈路網絡
視頻直播鏈路多線程
用戶經過CDN(內容分發網絡),提升接入速度,避免網段訪問。架構
訓練深度學習神經網絡進行分類,自動識別色情內容。框架
支持不一樣協議訪問,知足延時需求。學習
分發網絡-多集羣源站設計線程
分發網絡-多集羣源站設計設計
播放器的基本實現3d
播放器的基本實現
3、常見的視頻直播相關協議:
一、RTMP(Real Time Messaging Protocol,實時消息傳送協議)
RTMP是Adobe Systems公司爲Flash播放器和服務器之間音頻、視頻和數據傳輸開發的開放協議。它有三種變種:
1)、工做在TCP之上的明文協議,使用端口1935;
2)、RTMPT封裝在HTTP請求之中,可穿越防火牆;
3)、RTMPS相似RTMPT,但使用的是HTTPS鏈接;
RTMP協議是被Flash用於對象、視頻、音頻的傳輸。這個協議創建在TCP協議或者輪詢HTTP協議之上。RTMP協議就像一個用來裝數據包的容器,這些數據既能夠是AMF格式的數據,也能夠是FLV中的視音頻數據。一個單一的鏈接能夠經過不一樣的通道傳輸多路網絡流,這些通道中的包都是按照固定大小的包傳輸的。
二、RTSP(Real Time Streaming Protocol,實時流傳輸協議)
RTSP定義了一對多應用程序如何有效地經過IP網絡傳送多媒體數據。RTSP提供了一個可擴展框架,數據源能夠包括實時數據與已有的存儲的數據。該協議目的在於控制多個數據發送鏈接,爲選擇發送通道如UDP、組播UDP與TCP提供途徑,併爲選擇基於RTP上發送機制提供方法。
RTSP語法和運做跟HTTP/1.1相似,但並不特別強調時間同步,因此比較能容忍網絡延遲。代理服務器的緩存功能也一樣適用於RTSP,而且由於RTSP具備從新導向功能,可根據實際負載狀況來切換提供服務的服務器,以免過大的負載集中於同一服務器而形成延遲。
三、RTP(Real-time Transport Protocol,實時傳輸協議)
RTP是針對多媒體數據流的一種傳輸層協議,詳細說明了在互聯網上傳遞音頻和視頻的標準數據包格式。RTP協議經常使用於流媒體系統(配合RTCP協議),視頻會議和一鍵通系統(配合H.323或SIP),使它成爲IP電話產業的技術基礎。
RTP是創建在UDP協議上的,常與RTCP一塊兒使用,其自己並無提供按時發送機制或其它服務質量(QoS)保證,它依賴於低層服務去實現這一過程。
RTP 並不保證傳送或防止無序傳送,也不肯定底層網絡的可靠性,只管發送,無論傳輸是否丟包,也無論接收方是否有收到包。RTP 實行有序傳送,RTP中的序列號容許接收方重組發送方的包序列,同時序列號也能用於決定適當的包位置,如在視頻解碼中,就不須要順序解碼。
四、RTCP(Real-time Transport Control Protocol,實時傳輸控制協議)
RTCP是RTP的配套協議,爲RTP媒體流提供信道外的控制。RTCP和RTP一塊兒協做將多媒體數據打包和發送,按期在多媒體流會話參與者之間傳輸控制數據。
RTCP的主要功能是爲RTP所提供的服務質量(QoS)提供反饋,收集相關媒體鏈接的統計信息,例如傳輸字節數,傳輸分組數,丟失分組數,單向和雙向網絡延遲等等。網絡應用程序能夠利用RTCP所提供的信息來提升服務質量,好比限制流量或改用壓縮比小的編解碼器。
視頻流轉換成不一樣清晰度
不一樣的端,不一樣的網絡環境,須要不一樣碼率,以保流暢
視頻流轉換成不一樣清晰度
SDK在播放器上作層管理
SDK在播放器上作層管理
消息發送流程
消息發送流程
消息投遞先過濾;消息隊列,削峯填谷;多線程處理消息發送;房間分桶,下降下行壓力;不一樣的消息通道,對消息發送方透明。
不一樣消息通道的優劣對比
不一樣消息通道的優劣對比
大促風險控制
平臺化的挑戰
視頻直播的工做原理
視頻直播的工做原理
以上內容,參考了許多不少網友同行的資料,若有侵權,形成損失,提供資料後,請聯繫。