electron调用摄像头直播

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了electron调用摄像头直播相关的知识,希望对你有一定的参考价值。

参考技术A 使用Electron+VUE2.0+Element-UI+腾讯云的实时音视频开发了一个互动直播的客户端,中间踩了不少坑,这里说一下感受。

如果要做直播客户端,不要求跨平台的话,能用C++、C#开发就不要用Electron去开发。腾讯云虽然提供了一个Electron的sdk,但是这个sdk版本的限制太多。比如:Electron的sdk有个api是打开摄像头并推流,由于业务的特殊性需要把摄像头画面混入到桌面的辅流中,混流的api极其复杂麻烦。我便考虑到新建一个窗口把摄像头的画面显示在屏幕上,让用户随意拖动。我咨询了腾讯云的客服,该sdk并没有提供预览摄像头的功能,只能打开摄像头并推流,这里显然浪费了一个流。用户往往只需要看到桌面,使用Electron创建一个窗口专门显示摄像头就可以了,这样桌面共享上自然就有了摄像头画面还能让主播随意拖动。

另外一个硬伤就是打其他平台的安装包,会出现很多莫名奇妙的问题。比如我在64位的win10上32位的node,打包32位win10的安装包。使用的时候,当打开摄像头、屏幕,电脑喇叭的音量会突然变成60。

通过虚拟机安装一个32位的win10

RTSP安防网络摄像头/海康大华硬盘录像机网页无插件直播流媒体服务器EasyNVR之鉴权接口的调用配置说明

进入移动互联网时代以来,企业微信公众号已成为除官网以外非常重要的宣传渠道,当3.2亿直播用户与9亿微信用户的势能累加,在微信上开启直播已成为越来越多企业的必然选择。

技术图片

EasyNVR核心在于摄像机的音视频流的获取、转换、转码与高性能分发,同时同步完成对实时直播流的录像存储,在客户端(PC浏览器、Android、iOS、微信)进行录像文件的检索、回放和下载。

技术图片

EasyNVR鉴权配置说明

发现问题

在实际对接项目中,很多用户需要根据自身业务层的用户权限,来决定调用视频流具体资源,EasyNVR在设计时已经将此应用考虑进去,根据使用者需求可以在EasyNVR程序目录下找到easynvr.ini ,用户可以自己开发一套鉴权接口供EasyNVR调用,在stream_auth_url=中进行配置即可。

技术图片

鉴权配置流程

; 直播鉴权第三方回调地址, HTTP GET
; 请求参数: 除透传流地址参数外, 固定参数: app, call, name
; 响应: 200 - 鉴权通过, 其它 - 鉴权不通过
; 比如: http://demo.easynvr.com:10800/api/v1/check/stream/auth
stream_auth_url=

技术图片

播放效果
技术图片

以上是关于electron调用摄像头直播的主要内容,如果未能解决你的问题,请参考以下文章

RTSP安防网络摄像头/海康大华硬盘录像机网页无插件直播流媒体服务器EasyNVR之鉴权接口的调用配置说明

Android手机直播摄像机

使用ffmpeg进行网络直播

Mac上Electron打包后无法弹出请求摄像头权限问题

electron学习笔记electron之打包程序file路径的刷新页面处理

海康摄像机如何接入拼多多网店直播