2024年WEB網(wǎng)頁直接播放海康威視、大華、華為RTSP/RTMP視頻流方案大盤點
在遍地都是攝像頭的今天,往往需要在各種信息化、數(shù)字化、可視化等B/S系統(tǒng)中集成實時視頻流播放等功能,海康、大華、華為等廠家攝像頭或錄像機等設(shè)備一般也都遵循安防行業(yè)標準,支持國際標準的視頻主流傳輸協(xié)議RTSP(實時視頻流)輸出,不幸的是Chrome、Edge、Firefox等新一代瀏覽器從2015年開始不再支持NPAPI插件加載運行,直接導致RTSP視頻流從此無法在高版本瀏覽器網(wǎng)頁中原生播放。對于絕大部分沒有影視頻處理經(jīng)驗的前、后端工程師來說是一個非常棘手的問題,專業(yè)性強,技術(shù)門檻高,而對做B/S系統(tǒng)集成的大多數(shù)公司來說,為了這部分的功能單獨招聘專職音視頻研發(fā)人員來負責的話,成本高昂不說,還未必做的好。
當前主流版本瀏覽器既然已都不支持原生播放RTSP流,為了能夠播放RTSP流,不少公司各顯神通,出了各種商用及開源方案,不過總的說來就是在后端先轉(zhuǎn)碼再轉(zhuǎn)流給前端播放的方案,這也是號稱無插件的技術(shù)方案。對瀏覽器可直接硬件加速播放的H.264編碼視頻流,現(xiàn)在一般是在服務器端將RTSP流轉(zhuǎn)為WebRTC通訊標準的視頻流,前端接收后可通過Vedio標簽播放;對于瀏覽器不能支持加速播放的其它編碼視頻流,要么在后端先轉(zhuǎn)流轉(zhuǎn)碼為H.264編碼后按前述方案播放,要么后端轉(zhuǎn)流到前端,前端再通過對應編碼的WASM程序利用CPU軟解碼播放。轉(zhuǎn)流到前端WASM轉(zhuǎn)碼播放時,即使配置了性能不錯的電腦,受限于WASM的固有缺陷,比如多線程支持差、能使用的內(nèi)存大小始終受限,無法充分利用終端電腦顯卡的硬件加速能力(GPU),這就導致同時播放多路或高清RTSP流時也會比較吃力,而且大量占用終端電腦的CPU和內(nèi)存資源,其它操作基本無法進行,對音視頻格式的兼容能力也很有限。
雖然無插件播放方案能夠播放出畫面,但是往往延遲高,高分辨率視頻流基本上都在數(shù)秒之久,在一些對延遲敏感的場合客戶要求的是毫秒級延遲,顯然無插件技術(shù)方案是無法滿足的;而且首屏畫面顯示慢,這就導致切換播放源時遲遲看不到畫面出來,用戶體驗很差;況且無插件技術(shù)方案,需要在后端或前端持續(xù)運行高負荷運轉(zhuǎn)的視頻轉(zhuǎn)碼轉(zhuǎn)流服務,也有部分采用WebSocket直接從攝像頭拉流播放的方案,不過需要設(shè)備支持才行,適用性不夠。如果攝像頭路數(shù)多、高清甚至是4K視頻或需要在線播放的終端比較多,服務器的壓力就會很大,播放卡頓、花屏、黑屏、斷播等現(xiàn)象就會時常出現(xiàn),很難讓客戶滿意。為了解決這些問題,相關(guān)硬件、軟件的投入和持續(xù)不斷的帶寬占用往往也讓客戶難以接受。現(xiàn)在越來越多的客戶追求高大上的視頻播放效果,采用高清攝像頭的越來越多,播放顯示器1080P已是低配,2K甚至4K大屏正在成為主流之選。這種無插件技術(shù)方案,在中高配的屏幕上如果只能播放出慢如蝸牛的畫面,想不讓客戶吐槽實在是太難。
一個好的RTSP視頻流網(wǎng)頁播放方案,首先是要能做到持續(xù)穩(wěn)定播放多路視頻,還需同時支持H.264、H.265編碼及其它編碼格式、兼容RTSP、RTMP、HLS等流協(xié)議播放,最核心的是要做到低延遲、切換畫面快,最好能支持高清甚至4K視頻流暢播放。另外就是對當前主流版本的瀏覽器兼容能力要強,多路播放時分屏樣式多,還有就是開發(fā)接口豐富并可定制,如果還能做到開源或采用免費的主流播放引擎實現(xiàn),那就最好不過了,畢竟開源在商業(yè)領(lǐng)域的應用越來越多,是大趨勢。從系統(tǒng)集成商的角度來說,盡可能采用成熟開源工程來使用意味著有更多的自主可控機會來降低整個系統(tǒng)的實施風險。
猿大師針對當前行業(yè)痛點,經(jīng)過數(shù)年持續(xù)不斷的技術(shù)攻關(guān),研發(fā)出了核心技術(shù)具有專利保護的猿大師中間件產(chǎn)品,成功突破了瀏覽器收緊其插件技術(shù)的限制,在瀏覽器之上重新搭建了一套外接程序系統(tǒng)并可無縫嵌入瀏覽器網(wǎng)頁運行,可實現(xiàn)2015年之前Chrome、Firefox、IE等瀏覽器支持的ActiveX控件和NPAPI插件播放效果,是原來采用了跨瀏覽器插件框架FireBreath的最佳替代技術(shù)方案。2020年發(fā)布了基于猿大師中間件的VLC網(wǎng)頁播放器,2021年發(fā)布了基于猿大師中間件的海康原生網(wǎng)頁播放器,基本完成網(wǎng)頁中低延遲單路播放或多路流暢播放視頻流的方案拼圖,2022年上半年實現(xiàn)雙顯卡高性能網(wǎng)頁播放器,另外支持FFPlayer播放引擎,2023年初實現(xiàn)視頻畫面疊加透明網(wǎng)頁內(nèi)容的顯示特效,2023年中實現(xiàn)了大華原生網(wǎng)頁播放器,最終形成了猿大師播放器網(wǎng)頁低延遲播放RTSP產(chǎn)品。此播放器在不少客戶現(xiàn)場已成功實施,贏得了客戶的一致好評。猿大師中間件是此領(lǐng)域全球唯一實現(xiàn)商用的成熟中間件,核心技術(shù)實現(xiàn)方案在2019年就申請了中國大陸軟件發(fā)明專利保護,2023年5月正式獲得專利證書,專利號:ZL 2019 1 1323165.1。
1.低延遲播放
從播放性能上說,攝像頭和錄像機的硬件廠家提供的私有協(xié)議播放方式無疑是最快的,單路播放延遲可做到100-300毫秒級,其次是RTSP流播放,大致是200-500毫秒級,再次是無插件方案的轉(zhuǎn)碼流,優(yōu)化比較好的單路播放大致在1-3秒級。猿大師的多引擎網(wǎng)頁播放器,除了支持海康及大華設(shè)備的私有協(xié)議直接播放之外,還內(nèi)置了格式兼容更好的MP4播放庫和兼容能力強大的LibVLC開源播放引擎。另外2020年發(fā)布的VLC網(wǎng)頁播放器,基于VLC的ActiveX控件開發(fā),封裝了控件的大多數(shù)接口給前端調(diào)用,在同等條件下,延遲時間和VLC桌面程序播放保持一致,并可支持多路組合實現(xiàn)多種分屏樣式播放,支持疊加透明網(wǎng)頁的內(nèi)容顯示。
2.兼容性強
- 絕大部分瀏覽器兼容,同時兼容Chrome、Edge、Firefox、IE、Opera、Vivaldi、Brave、Electron、360、QQ、搜狗等瀏覽器的低版本到最新版都可以使用;
- 設(shè)備兼容性強,同時支持海康、大華、華為、宇視等廠家的硬件設(shè)備,只要能輸出RTSP、RTMP、HLS、HTTP、TCP、UDP等流媒體協(xié)議,就可以直接播放;
- 支持多種視頻編碼方式,不管是H.264還是H.265都可以同時支持播放,在一些采用WASM的無插件技術(shù)方案中,往往只支持H.265編碼的視頻流、而且音頻格式兼容差,服務器轉(zhuǎn)碼方案中,編碼兼容能力直接依賴這個轉(zhuǎn)碼服務的實現(xiàn),哪怕都是MP4的視頻也千差萬別,對播放引擎很挑剔,時常會遇到播放黑屏或無聲音等現(xiàn)象;
- 幾乎能播放任何內(nèi)容,依托最主流的開源VLC、FFPlayer、海康及大華原生播放引擎等,支持文件、光盤、攝像頭、設(shè)備及流媒體可直接播放MPEG-2, MPEG-4, H.264, H.265, MKV, WebM, WMV, MP3, MP4等文件,而無插件技術(shù)方案往往能播放的格式有限,比如不支持本地文件播放,不支持4K視頻播放;
- 分辨率支持范圍廣,從480P到1080P,還是更高的2K或4K,都能輕松應對,無插件方案從1080P開始,多路播放效果基本上就差強人意了;
- 最低支持Windows XP系統(tǒng),建議使用Windows 10及以上版本,可充分利用雙顯卡的硬件加速能力(GPU)實現(xiàn)低延遲的流暢多路播放效果。
3.功能豐富
- 最核心的無疑是播放功能,包含單路播放、多路播放、全屏播放、快播、慢播、按偵播放、獨立顯卡播放、雙顯卡播放等等,其中多路播放分屏風格支持多達31種,總有一款適合您,需要的分屏風格沒有時也可以委托定制開發(fā),還有指定視頻名稱或指定時間段回看視頻等;
- 抓圖功能,定時批量抓、支持保存指定本地路徑或圖片數(shù)據(jù)直接返回前端、圖片質(zhì)量可控制等,無插件方案由于無法訪問本地文件系統(tǒng)是無法抓圖直接保存到本地的,也不是基于視頻原有分辨率進行抓取,圖片質(zhì)量是無法保證的;
- 錄像功能,支持直接錄像保存到本地MP4文件,而無插件方案由于無法訪問本地文件系統(tǒng),自然也無法直接完成此功能;
- 視頻畫面中疊加透明網(wǎng)頁內(nèi)容顯示,為視頻處理和交互提供可定制的強大支持,如人像及車輛識別顯示詳細信息等;
- 彈幕及水印功能,播放狀態(tài)實時提示等支持,無插件方案基本只能在服務器端先行添加,無法針對終端區(qū)別對待;
- 性能最好的私有協(xié)議播放、語音對講及云臺控制等,無插件方案都不支持私有協(xié)議播放和語音對講。
4.可定制
猿大師播放器的播放分屏風格、中間件產(chǎn)品名稱及公司信息等,接受付費定制開發(fā)使用,實現(xiàn)個性化的播放效果。
5.開源
猿大師播放器主要基于開源播放引擎LibVLC及FFPlayer開發(fā),視頻播放底層模塊后續(xù)服務有保障,網(wǎng)頁播放器本身也支持客戶付費獲得源碼后自行再定制開發(fā),實現(xiàn)源代碼級別的自主可控。因為基于視頻畫面定制實現(xiàn)一些其它功能也是常有的,比如人臉識別、車牌識別,識別出來同時需要在畫面中加入一些標記元素,也可以設(shè)計觸發(fā)某些條件時自動抓圖并保存。
6.低成本
由于采用終端直接播放的技術(shù)方案,無需服務器提供轉(zhuǎn)碼轉(zhuǎn)流支持,因此可節(jié)省大量軟硬件投入成本和持續(xù)的帶寬占用成本。
7.簡單可靠
延續(xù)原有插件播放技術(shù)路線,可實現(xiàn)平滑升級,前后端改造小,提供VUE集成范例,集成簡單,節(jié)省成本。
借助猿大師中間件獨特的專利技術(shù),相對于無插件播放方案來說,猿大師播放器具有無可替代的技術(shù)優(yōu)勢,具體表現(xiàn)如下:
- 可充分利用終端電腦的硬件加速能力(GPU)解碼和渲染,在同等硬件、網(wǎng)絡(luò)帶寬及流輸出條件下,延遲可做到毫秒級,可播放更多視頻源、支持更高的分辨率、實現(xiàn)更流暢的播放效果。
- 播放程序可直接調(diào)用操作系統(tǒng)及硬件廠家提供的原生播放功能,也可以調(diào)用其它程序模塊,不受瀏覽器的限制,實現(xiàn)豐富的個性化播放功能。這個優(yōu)勢或許有人認為也是缺點,比如有安全隱患,其實對于企業(yè)的各種業(yè)務系統(tǒng)來說,都是需要經(jīng)過充分測試才會上線,而猿大師中間件承諾本身無任何病毒或木馬行為,不會有未授權(quán)的網(wǎng)絡(luò)請求行為,也提供了運行過程中的安全調(diào)用驗證機制,即使未授權(quán)的第三方拿到了播放器的開發(fā)接口,沒有經(jīng)過安全驗證也是無法請求播放的,一定程度上解決了瀏覽器原有插件技術(shù)不安全的缺陷。安全問題關(guān)鍵是具體如何看待,其實B/S等各種系統(tǒng)前端代碼的運行在瀏覽器廠家看來,其實就是裸奔的狀態(tài),只要瀏覽器廠家想要獲取前端代碼中的敏感信息,從技術(shù)角度完全沒有任何問題,相反的是,通過猿大師的技術(shù)方案,瀏覽器可獲得的信息反而受限,除非和操作系統(tǒng)開發(fā)商一起配合來進行才有可能。
猿大師中間件不依賴瀏覽器的插件和擴展技術(shù)支持,瀏覽器的升級不會導致技術(shù)方案失效,通訊技術(shù)采用國際標準的Web Socket技術(shù),數(shù)據(jù)采用主流的JSON打包,通用性強,各種前端框架都可以對接,兼容性好。
猿大師中間件提供了前端可調(diào)用的自動升級中間件或小程序的機制,解決了傳統(tǒng)C/S系統(tǒng)升級終端軟件的大難題,具有了和B/S接近的分發(fā)便利優(yōu)勢。
[免責聲明]
原文標題: 2024年WEB網(wǎng)頁直接播放海康威視、大華、華為RTSP/RTMP視頻流方案大盤點
本文由作者原創(chuàng)發(fā)布于36氪企服點評;未經(jīng)許可,禁止轉(zhuǎn)載。



