海康摄像头WEB无插件SDK开发记录

姓名:许立;学号:21011210048;学院:通信工程学院

【嵌牛导读】对接海康威视的摄像头,在官网下载了sdk开发包,心里还想这个应该不会太难,毕竟海康也算大公司,各种对接方式应该都是成熟的,打开sdk包里面还是挺齐全的MFC、java、c#都有,依次调试里一下,都能对接成功,不过不是我想要web方式对接,都是C/S架构的,我想要的是B/S方式对接。

【嵌牛鼻子】海康威视视频控件

【嵌牛提问】看完本文你有没有动手试试呢

【嵌牛正文】

运行环境与设备支持:

海康控件开发包链接:

32位浏览器:

https://pan.baidu.com/s/160ia40-hlFd1MynbxSBI2Q  密码:d3pf

64位浏览器:

https://pan.baidu.com/s/1TbNHqfZSw9PPS4Z-xYvcoQ  密码:38qq

Web控件V3.0基于ActiveX和NPAPI开发,接口封装于JavaScript脚本,以JavaScript接口形式提供用户集成,支持网页上实现预览、回放、云台控制等功能。该控件仅支持B/S开发,不适用C/S开发。

Web控件V3.0支持多种我司设备,包括DVR、NVR、DVS、网络摄像机、网络球机等,设备需要支持PSIA或ISAPI协议。

该控件所需运行环境:

操作系统:WindowsXP、Windows7、Windows8、Windows8.1(实际上目前Windows10也可以用)

浏览器:

IE8~IE11、Chrome31+、Firefox35+,32位浏览器

IE8~IE11、Chrome31~Chrome44、Firefox35~Firefox51,64位浏览器

(ps:这里其实有很大的坑,浏览器一旦版本位数没有和插件对上,页面显示就会有问题,很多人没看清这点盲目上手就踩在了这一点上)

HTTPS播放需要开启Websockets

 首先要开启https,并且要启用Websockets(否则会因为wss连接不成功而提示预览失败,这个卡了我很久最终领导试的时候才发现的,这玩意不放在一起真是坑死我了。),然后可以通过https来访问摄像头正常播放了:

WEB无插件SDK开发时发现wss播放异常

 WEB无插件SDK本质就是在中间多加一个nginx进行转发,nginx通过请求中的Cookie找到摄像头的IP地址进行转发(海康通过这种cookie值来跳转还是蛮新奇的,我还第一次见这种操作):


开发时,我使用的是21年9月份的版本(WEB无插件开发包_20210918_20210922140917),http/ws播放正常,而https/wss播放是有问题的,经过修改了部分SDK的代码(经过压缩过的代码改起来是蛮麻烦的),终于连上去了。但经修改后的wss直接连接的是摄像头的地址而不是nginx地址导致了证书问题,会提示failed: Error in connection establishment:net::ERR_CERT_AUTHORITY_INVALID(这里我使用的chrome只会提示failed:,用Edge才有完整的错误提示,这个也坑了我好久,之前我一直瞎尝试,用了Edge才发现真正的问题。 ),搜了一下是自签名证书会存在的问题,需要先让浏览器https访问摄像头让浏览器允许这个证书才能正常wss连接。(测试期间,发现我的电脑能播放,其它人的电脑不能播放,定位了大半天才发现原来是这个问题)

虽然我改了SDK源代码来实现播放,但还是没达到真正的效果,真正的效果应该是wss连接nginx,而不是直连摄像头,这才能避开自签名证书不能播放问题以及网段不同时不能直连摄像头的问题。

 海康威视开发下载包,最新的版本是10月份的,仍然是无法播放HTTPS的,估计还没开发完。(而且这个版引入了新BUG,设置窗口大小无法传入百分比。)

 过完年后,试试看能不能绕过,本来我是想着海康的BUG让海康自己去修,我等待官方更新就好了,但就是现在想要搞出来,不要拖,所以只能继续尝试。经过再次尝试,将原本wss直连摄像头的那部分代码改成指向nginx,一开始连不上,经过对比Cookie发现是里面的值错了,再次修改便成功了。nginx的配置如下:

server {

listen 443 ssl;

server_name www.test.com;

ssl_certificate 6749255_www.test.com.pem;

ssl_certificate_key 6749255_www.test.com.key;

ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;

ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

ssl_prefer_server_ciphers on;

      location / {

  root  "D:\test";

          index  index.html index.htm;

}

      location ~ /ISAPI|SDK/ {

          proxy_set_header 'sec-ch-ua' "";

          proxy_set_header 'sec-ch-ua-mobile' "";

          proxy_set_header 'sec-ch-ua-platform:' "";

          proxy_set_header 'Sec-Fetch-Dest' "";

          proxy_set_header 'Sec-Fetch-Mode' "";

          proxy_set_header 'Sec-Fetch-Site' "";

          if ($http_cookie ~ "webVideoCtrlProxy=(.+)") {

              proxy_pass https://$cookie_webVideoCtrlProxy;

              break;

          }


      }

      location ^~ /webSocketVideoCtrlProxy {

          #web socket

          proxy_http_version 1.1;

          proxy_set_header Upgrade $http_upgrade;

          proxy_set_header Connection "upgrade";

          proxy_set_header Host $host;

          if ($http_cookie ~ "webVideoCtrlProxyWss=(.+)") {

              proxy_pass https://$cookie_webVideoCtrlProxyWss/$cookie_webVideoCtrlProxyWsChannel?$args;

              break;

          }

      }

}

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,752评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,100评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,244评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,099评论 1 286
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,210评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,307评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,346评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,133评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,546评论 1 306
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,849评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,019评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,702评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,331评论 3 319
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,030评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,260评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,871评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,898评论 2 351

推荐阅读更多精彩内容