本文主要介紹rtmp&hls視頻直播原理,文章最早發表在我們的微信公眾號上,詳見這里,歡迎關注微信公眾號blackerteam,更多詳見www.blackerteam.com
現在視頻直播很火,應用場景很多,比如在線教育、美女秀場、在線醫療、電商活動、游戲直播、體育直播,中國好聲音。
市面上與之相關的app也很多,比如搜狐視頻、樂視體育、虎牙直播、9158,作為it人員我們可能更關心其背后的實現原理, 所以下面我們通過6張圖來進行介紹:
圖一:直播流程,以在線教育為例
說明:GotyeLive是一個雲服務,也即圖三所說的服務端的加強版
圖二:直播協議,一般是rtmp+hls
圖三:直播服務器,可供選擇的開源服務很多
圖四:集群,有專門提供cdn服務的廠商,如藍訊
圖五:發布端,又稱直播端,用來推送視頻流到服務端
圖六:播放端,又稱觀看端,從服務端下載視頻流進行播放
文中圖片由親加雲CTO郝飛提供,他們公司總部在上海,主要給開發者提供即時通訊和視頻相關的雲服務,有興趣的朋友可以去關注。
上面介紹的直播是基於rtmp和tcp來實現的,其實用webrtc也可以實現,兩種方式各有各的優缺點,后面會接着分享,歡迎掃描下方二維碼關注我們的微信公眾號: