海康视频插件原理
視頻插件的調(diào)用方式、加載原理
簡介:視頻 WEB 插件(以下簡稱 VideoWebPlugin)用于跨瀏覽器開發(fā) WEB 視頻應(yīng)用,提供了實時視頻播放、歷史視頻回放功能。安裝 VideoWebPlugin.exe 后,
系統(tǒng)會自動運行 WebControl.exe 的程序,并由 jsWebControl-1.0.0.min.js 與之交互完成視頻的各項功能
2. 使用WebControl.JS_StartService方法啟動插件服務(wù)
3.使用WebControl.JS_CreateWnd方法創(chuàng)建視頻播放窗口綁定element元素、使用WebControl.JS_SetWindowControlCallback方法綁定消息回調(diào)
4通過appkey、secret、ip、port端口號等參數(shù)與服務(wù)器進行數(shù)據(jù)校驗,校驗通過即可正常與設(shè)備鏈接取流,初始化參數(shù)在步驟三創(chuàng)建窗口成功回調(diào)后執(zhí)行,其中secret參數(shù)需要通過RSA加密,加密公鑰通過WebControl.JS_RequestInterface獲取
5.通過WebControl 插件實例調(diào)用WebControl.JS_RequestInterface方法操作功能(預(yù)覽,回放,抓圖、錄像等)初始化,創(chuàng)建插件頂層窗口后調(diào)用WebControl.JS_Resize來調(diào)整插件窗口大小與位置
6.離開頁面斷開使用WebControl.JS_HideWnd(先讓窗口隱藏,規(guī)避可能的插件窗口滯后于瀏覽器消失問題)與WebControl.JS_Disconnect(斷開與插件服務(wù)連接)方法與插件服務(wù)連接
?
?
圖中灰色部分為可選步驟。其中申請 RSA 公鑰可選。申請 RSA 公鑰是為了加密初始化中 的一些敏感參數(shù),對安全性要求高的用戶可以考慮對敏感參數(shù)加密。但需要注意的是,使用 RSA 公鑰加密機制必然會導(dǎo)致初始化耗時。一般情況下不需要調(diào) JS_DestroyWnd 來銷毀插件窗口 (JS_Disconnect 中會自行銷毀),但一些特殊的場景如瀏覽器頁面上需隨時啟用和禁用視頻播放時, 需調(diào) JS_DestroyWnd 來禁用視頻播放,需要調(diào) JS_CreateWnd 來啟用視頻播放。JS_DestroyWnd 和 JS_Disconnect 中會反初始化插件,這里無需調(diào) JS_RequestInterface/uninit 反初始化。
3.vue腳手架中集成插件
把官方資源包里的query-1.12.4.min.js、jsencrypt.min.js、jsWebControl-1.0.0.min.js復(fù)制到vue項目public目錄下,在index.html引入js
4.注意事項
1.創(chuàng)建插件實例后除申請 RSA 公鑰功能外,調(diào)其它接口前應(yīng)先初始化。初始化參數(shù)中ip不能帶端口,端口單獨設(shè)置port參數(shù),ip跟端口號從綜合安防管理平臺獲取,要根據(jù)實際值傳參
2.云控功能——插件工具欄已自帶簡陋版,如果需要高度自定義,可自己在頁面其他地方畫布局,寫功能并調(diào)用??堤峁┰瓶亟涌趤韺崿F(xiàn)
3?.注意http跟https環(huán)境下海康提供的接口一些參數(shù)的區(qū)別,http->ws,https->wss
5.插件提示反復(fù)安裝問題
概述
新版的chrome瀏覽器會校驗發(fā)起端的域名和訪問資源的域名直接的關(guān)系,如果客戶端發(fā)起域名比訪問資源所在的域名更public(開放),會導(dǎo)致The request client is not a secure context and the resource is in more-private address …錯誤產(chǎn)生。
原因
- 報錯內(nèi)容
- 錯誤原因
?
?
解決辦法
在瀏覽器地址欄輸入
chrome://flags/#block-insecure-private-network-requests
按照下圖將Block insecure private network requests.項的Default改為Disabled即可。
?
總結(jié)
- 上一篇: web---SSL/TSL
- 下一篇: java构造块_java中的静态代码块、