經過多年的項目實戰和研發經驗的積累,TSINGSEE青犀視頻團隊總結了一下對於Web可視化在視頻播放上如何做到無插件H5展示的方法,尤其是契合安防行業的方案。
前提
除了HTTP、WebSocket類的傳輸協議,其他是無法傳輸到瀏覽器的,所以,如果要做一款通用的H5視頻播放器,基本上就是一款HTTP/WebSocket協議的視頻播放器,如果是類似於RTMP、RTSP類型協議的視頻源,是不可避免,需要經過服務器轉換的。
方案一:協議轉換
采用類似於EasyCVR的全協議接入,再轉成標准協議輸出的方式。
- 后端兼容
- H.265播放器
方案二:WebSocket透傳
通過WebSocket通道轉發各種不同協議的視頻流,WebSocket類似於一個管道,只做原樣的數據轉發,具體的協議交互過程還是按照原協議進行,RTSP、SIP類的文本協議按照文本協議的方式,RTMP類的字節流協議按照字節流協議的方式。
- 前端兼容
- H.265播放器
H.265網頁播放方案
大家可以看到以上的兩種解決方案都會具有一個H.265網頁播放的難點,這里的主要原因是目前的瀏覽器基本都不能支持H.265的底層解碼,或者說硬解碼,H.265需要結合原生播放器的開發技術和Web播放器的開發技術,也就是wasm技術,將C/C封裝成wasm,被js調用,這樣js就能像C/C原生播放器一樣,充分利用C/C++的計算能力和擴展能力,來實現視頻的解碼過程。
wasm播放的主要優勢契合安防的實際需求,雖然目前各大廠商開始流行WebRTC直播,但目前由於安防的特殊性,H.265已經占據主導,解決H.265的前端展示才能完整地解決整個安防可視化的需求,這個是RTC播放無法解決的。