雲計算

直播平臺開發,直播框架和系統框架分別承擔著哪些責任

直播平臺開發的框架有兩種,一個是直播的框架一個是系統的框架,兩個框架有自己的功能覆蓋和實現功能,我們來細說一下兩者分別承擔的責任。

一、直播框架
直播平臺開發都會選擇用CDN作為網絡分發的中轉站,在已有的CDN上再建立起一個服務器,當用戶請求發送後,服務器會直接採集音視頻通過編碼後用RTMP協議推到CDN,接收到用戶的請求後,服務器發出指令,將音視頻調出傳遞到用戶的播放端,進行播放。
CDN在直播平臺開發中承擔著重要的責任,不論選擇哪個CDN,都需要保證能正常的使用直播平臺的各項功能,保證在功能之外,視頻流的傳遞穩定。

二、系統框架
系統框架承擔著音視頻採集、預處理、編解碼、推拉流、播放的任務。
1.音視頻採集,通過採集插件直接獲取直播的畫面和音頻數據,視頻格式一般採用RGB或YUV等格式,音視頻採集則常為PCM格式。
2.預處理,音視頻採集完成後會進行簡單的預處理,預處理包括對視頻畫面添加美顏效果,添加動態貼紙等功能,在與處理時會造成對GPU的佔用,所以在優化方面也非常重要,減少播放時用戶手機內容的佔用率,減少功耗。
3.音視頻的編解碼,編碼的處理是為了減少預處理完成後音視頻的體積,部分手機系統無法快速讀取這麼大的數據信息,讀取時間過長,用戶等待的時間就會越長。在對音視頻進行編碼處理後,能減少視頻的佔用空間,在保證分辨率、幀數的情況下增加上傳的速度。
解碼的快慢除了會受到用戶網絡環境的影響外,還會受到物理距離的影響,用戶離服務器的距離越遠,等待傳輸的時間就越長,這就是為什麼要用到CDN的原因,CDN節點能拉近與用戶的物理距離,距離節點越近的用戶能越快的接收到視頻信息。
4.音視頻的推拉流,推流是將壓縮處理好的數據上傳到服務器,拉流是將用戶的服務器發送播放請求,獲取數據後播放,推拉流過程中常用的流媒體協議為RTMP協議。

三、直播平臺開發的注意事項
除了需要了解這些基本知識外,對於源碼的選擇也很重要,推薦各位選擇能進行二次開發的源碼,這樣後期更新平臺功能時能做到更好的調整,不同的源碼價格也不一樣,可以進行多家比較後在做決定。
聲明:以上內容為雲豹科技作者本人原創,未經作者本人同意,禁止轉載,否則將追究相關法律責任

Leave a Reply

Your email address will not be published. Required fields are marked *