好久沒來簡書了平斩,想念你們亚享。
前段時間公司接了一個公安項目,從嫌疑人入?yún)^(qū)绘面、接受審訊到出區(qū)的一整套流程欺税,包括軟件開發(fā),軟硬件對接揭璃,上周基本功能開發(fā)完成晚凿,期間遇到了好多問題,不過最后基本都解決了瘦馍,在簡書記錄一下歼秽,有同樣需求的小伙伴可以看看。
項目剛開始我們選擇的是用vue框架結(jié)合elementui組件開發(fā)情组,當(dāng)時產(chǎn)品那邊需求沒給定燥筷,項目追的緊箩祥,我們是邊看需求邊開發(fā),壓根不知道會有硬件這塊的接入肆氓,也是因為中間考慮的不足袍祖,后期踩了很多坑。硬件包括調(diào)用鹤鲈海康攝像頭盲泛、高拍儀、手環(huán)和身份證的識別以及刻錄機键耕,公司的同事采購硬件寺滚,他當(dāng)時買硬件的時候只想著降低成本,買的硬件全部是兼容ie舊版本的瀏覽器屈雄,vue框架對于ie又不是那么的友好村视,所以兼容性這塊用了挺久的時間,我會在文章把碰到的問題和解決辦法都列出來酒奶,今天著重說下攝像頭這塊蚁孔。
海康確實有給文檔惋嚎,但是只是支持ie11杠氢,如果我們不用vue框架開發(fā),用純HTML開發(fā)至粗腰做好兼容性處理就好了另伍,恰恰因為用vue開發(fā)鼻百,谷歌、火狐都不支持摆尝,沒辦法温艇,智能棄用海康的方法堕汞,自己在百度上真是搜了好多方法勺爱,但都是因為各種各樣的原因總是會報錯,還好最終找到了一個很簡單的方法讯检,也不需要引入其他什么插件琐鲁。方法如下:
<object classid='clsid:9BE31822-FDAD-461B-AD51-BE1D1C159921' width='1000' height='500' events='True'>
? <param name='MRL' value='rtsp://admin:fpga12345@92.206.75.30:554/h264/ch2/main/av_stream'>
? <param name='AutoLoop' value='true'>
? <param name='autoPlay' value='true'>
? <param name='Volume' value='50'>
? <param name='StartTime' value='0'>
? <param name='toolbar' value='false'>
? <param name='allowfullscreen' value = 'true'>
</object>
這只是前端的方法,但是拿到視頻還是需要后端同事的幫助人灼,我這邊只是在前端頁面這塊調(diào)取攝像頭也就是調(diào)接口绣否。將視頻攝像頭和海康威視的硬盤錄像機連接在同一網(wǎng)段挡毅,并設(shè)置好硬盤錄像機的IP地址和端口號。攝像頭要通過通道管理設(shè)置通道號暴构,IP通道地址等跪呈。不同的視頻只是修改信道的數(shù)字就行段磨,上例的value值的ch2就是信道序號,ch2指的就是2信道耗绿,同理苹支,如果是ch3就是3信道,這個方法也只兼容ie11误阻,但是一個優(yōu)點就是可以直接在vue里邊直接調(diào)用债蜜。預(yù)覽圖就不放了,涉及公安的隱私究反,結(jié)果是能實現(xiàn)的寻定。
有需求的小伙伴可以將這段代碼直接復(fù)制到你的項目里,肯定會有這樣那樣的問題精耐,可以私聊我或者評論里狼速,我知道的一定盡囊相受,下一篇會持續(xù)更其他的坑和解決辦法卦停。歡迎大家一起來討論向胡。