网络版配置文件ZbaConfig.json,单机版配置文件WrlConfig.json,在程序包根目录,使用系统默认的记事本打开后,可编辑配置以下参数:
"WS": 83, // HTTP网站中间件WebSocket服务默认侦听端口,如端口已占用,自动+1直到找到可用端口
"WSS": 443, // HTTPS网站中间件WebSocket服务默认侦听端口,必须绑定一个主域名的二级域名使用
"HTTP": 90, // 需要支持同步请求时的HTTP网站侦听端口,默认不开启
播放程序的相关配置文件,一般在中间件程序的子目录下,比如Plugins\VLCWebPlayer\(VLC播放小程序)、Plugins\VideoWebPlayer(多引擎播放小程序)中的其一,文件名称Config.json,使用系统默认的记事本打开后,可编辑配置以下参数:
VLC播放器:"COM":"vlc/axvlc.dll,PHWebControl.dll,X64/PHWebControl.dll, VideoProxyPlayer.exe, X64/VideoProxyPlayer.exe", // 配置播放器需要注册的COM组件,如果是单机版,其中的VideoProxyPlayer.exe, X64/VideoProxyPlayer.exe文件名中多字母S,多引擎播放器在以上注册项目中再添加 ,PHVideoCom.dll,X64/PHVideoCom.dll
"Caching":500, // 配置网络缓存时间,单路要求低延迟播放时,可尽量设置低一些,不过一般建议不低于200,毫秒为单位,如是多路播放,或视频分辨率较高,或网络状况不太好时,尽量设置大一些数值,比如3000,前端可通过接口针对某路单独设置此参数
"RTSPTCP":1, // 配置网络连接方式,1默认是TCP,2默认是UDP(HTTP) 多引擎播放器对应的是参数名称是Link
"ToolBar":1, // 配置默认是否显示播放窗口的工具栏
"FillWnd":1, // 配置启动播放时视频是否充满整个窗口显示
"AutoLoop":1, // 配置播放结束时是否自动循环播放
"SelfGPU":1, // 配置是否使用独立显卡
"PlayList":0, // 配置是否支持播放列表,默认不支持 仅VLC播放器支持
"ClockSync":0, // 配置是否启用音频和视频的时钟同步
"Mute":0, // 配置默认启动播放时是否静音
"ChangeStop":2, // 配置切换播放时是否先停止上一个播放 0不停止 1先停止 2代表Win7及以下系统停止,其它系统不停止
"BlockFlag":7, // 配置过滤通知,配置定义参考接口文档,可过滤所有量大的通知设置15,可提高浏览器响应速度
"PercentTime":300, // 配置播放进度通知间隔时间,毫米为单位
"ErrTryCount":3, // 配置播放错误时,自动再次尝试播放的次数
"ErrTrySecond":6, // 配置播放错误时,自动尝试播放的时间间隔,秒为单位
"DisableDBFull":0,// 是否禁用双击全屏功能,默认不禁用
"PercentTime":300, \\ 配置播放进度通知时间间隔,毫秒为单位
"Avcodec":"none",// 配置禁用硬件加速,可指定的其它值any、dxva2、d3d11va,不设置时默认用any
"SplitColor":"#FFFFFF", // 配置分屏播放时,分屏线条的颜色
"BackColor":"#000000", // 配置播放窗口背景色
"Status":{"Text":"准备播放中,请等待","Err":"播放时出现错误","Color":"#00FF7F","Opacity":255,"Size":16,"Name":"宋体"}, // 配置播放状态显示,如浏览器窗口全屏后再启动播放,建议删除此项配置使用,避免系统任务栏闪烁
"PORT": 930 // 配置播放程序服务端口号,如启动多实例播放,端口会自动+1使用,端口已被占用时同样如此,多引擎播放器默认是920
以下项目仅多引擎播放器支持:
"Stream":1, 0// 配置主码流,1子码流
"Server":8000, // 配置海康服务器端口号
"DHServer":37777, // 配置大华服务器端口号
"TalkVolume":80, // 配置语音对讲音量
"FrameRate":1, // 配置播放速率,1代表正常速度播放
以上配置编辑修改后,重现启动播放器后生效,编辑时切记不要修改文件编码格式,否则可能导致无法解析此配置文件,所有配置失效。
网络版配置文件ZbaConfig.json,单机版配置文件WrlConfig.json,在程序包根目录,使用系统默认的记事本打开后,可编辑配置以下参数:
"WS": 83, // HTTP网站中间件WebSocket服务默认侦听端口,如端口已占用,自动+1直到找到可用端口
"WSS": 443, // HTTPS网站中间件WebSocket服务默认侦听端口,必须绑定一个主域名的二级域名使用
"HTTP": 90, // 需要支持同步请求时的HTTP网站侦听端口,默认不开启
"HTTPS": 450, // 需要支持同步请求时的HTTPS网站侦听端口,默认不开启
"Localhost": 1, // 侦听是否使用localhost,默认1即使用IP是127.0.0.1,选择0时使用本地实际IP侦听,局域网其它电脑可请求本机服务,一般用于操作本机接入的硬件操作
"ListenIP": "", // 实际侦听IP,一般不需要配置,只有在多网卡Localhost为0时使用
"WSErrTime": 30, // WebSocket连接错误超时时间,秒为单位
"ValidHour": 48, // 中间件卸载时的安全校验有效期,以小时为单位
"Monitor": 60, // 中间件服务活动时间监测,秒为单位,超过时自动重启服务
"Delay": 0, // 是否延迟启动状态监控程序,默认0,设置1延迟用于NoService配置为1时
"Mac": 1, // 中间件是否支持前端请求本机及网关MAC地址,默认1,为安全可配置为0
"UrlStart": 1, //前端网页是否支持Url协议方式启动中间件服务,主要用于中间件服务配置NoService 1(默认0)为非服务方式运行时,360等安全卫士及杀毒软件可能报风险
"EnableWechat": 0, // 配置是否启用在微信网页窗口打开时加载高级版的内嵌小程序
"Adjust": 0, // 配置Win7下高级版的内嵌小程序在某些情况下嵌入显示位置的修正
"ElectronExe": "electron.exe", // 配置在Electron中启动高级版内嵌小程序时主程序exe的文件名
"ElectronTitle": "electron",// 配置Electron桌面程序的窗口标题关键词,便于启动时找到Electron程序窗口
"NoService": 0, // 配置中间件程序是否以系统服务方式运行,推荐0(默认)系统服务方式,系统启动时自动运行,配置1时一般用于个别安全要求,比如程序不能系统服务运行情况
"KillWait": 15, // 配置启动的小程序非退出时等待强制杀进程的时间,秒为单位
"HttpServer":0, // 配置是否启用HTTP协议的同步请求服务, 0(默认)时HTTP及HTTPS端口配置无效
"UDisk": 0 // 配置中间件服务是否监控U盘插拔通知
"ServerPort": 888, // 配置授权服务器的服务端口,仅用于网络版
"ServerAddr": www.yuanmaster.com // 配置授权服务器的服务地址,可以是域名或IP地址,仅用于网络版
注意:程序运行时实际使用的是data子目录的同名配置文件,如果已安装启动再修改配置项目,请在编辑根目录的配置文件保存后,再手工复制一份到data子目录覆盖,然后执行根目录的InstallWrl.bat以使配置生效。编辑时切记不要修改文件编码格式,就用系统自带的记事本编辑软件即可,否则可能导致无法解析此配置文件后,所有配置项目失效。
播放程序的相关配置文件,一般在中间件程序的子目录下,比如Plugins\VLCWebPlayer\(VLC播放小程序)、Plugins\VideoWebPlayer(多引擎播放小程序)中的其一,文件名称Config.json,使用系统默认的记事本打开后,可编辑配置以下参数:
VLC播放器:"COM":"vlc/axvlc.dll,PHWebControl.dll,X64/PHWebControl.dll, VideoProxyPlayer.exe, X64/VideoProxyPlayer.exe", // 配置播放器需要注册的COM组件,如果是单机版,其中的VideoProxyPlayer.exe, X64/VideoProxyPlayer.exe文件名中多字母S,多引擎播放器在以上注册项目中再添加 ,PHVideoCom.dll,X64/PHVideoCom.dll
"Caching":500, // 配置网络缓存时间,单路要求低延迟播放时,可尽量设置低一些,不过一般建议不低于200,毫秒为单位,如是多路播放,或视频分辨率较高,或网络状况不太好时,尽量设置大一些数值,比如3000,前端可通过接口针对某路单独设置此参数
"RTSPTCP":1, // 配置网络连接方式,1默认是TCP,2默认是UDP(HTTP) 多引擎播放器对应的是参数名称是Link
"ToolBar":1, // 配置默认是否显示播放窗口的工具栏
"FillWnd":1, // 配置启动播放时视频是否充满整个窗口显示
"AutoLoop":1, // 配置播放结束时是否自动循环播放
"SelfGPU":1, // 配置是否使用独立显卡
"PlayList":0, // 配置是否支持播放列表,默认不支持 仅VLC播放器支持
"ClockSync":0, // 配置是否启用音频和视频的时钟同步
"Mute":0, // 配置默认启动播放时是否静音
"ChangeStop":2, // 配置切换播放时是否先停止上一个播放 0不停止 1先停止 2代表Win7及以下系统停止,其它系统不停止
"BlockFlag":7, // 配置过滤通知,配置定义参考接口文档,可过滤所有量大的通知设置15,可提高浏览器响应速度
"PercentTime":300, // 配置播放进度通知间隔时间,毫米为单位
"ErrTryCount":3, // 配置播放错误时,自动再次尝试播放的次数
"ErrTrySecond":6, // 配置播放错误时,自动尝试播放的时间间隔,秒为单位
"DisableDBFull":0,// 是否禁用双击全屏功能,默认不禁用
"PercentTime":300, \\ 配置播放进度通知时间间隔,毫秒为单位
"Avcodec":"none",// 配置禁用硬件加速,可指定的其它值any、dxva2、d3d11va,不设置时默认用any
"SplitColor":"#FFFFFF", // 配置分屏播放时,分屏线条的颜色
"BackColor":"#000000", // 配置播放窗口背景色
"Status":{"Text":"准备播放中,请等待","Err":"播放时出现错误","Color":"#00FF7F","Opacity":255,"Size":16,"Name":"宋体"}, // 配置播放状态显示,如浏览器窗口全屏后再启动播放,建议删除此项配置使用,避免系统任务栏闪烁
"PORT": 930 // 配置播放程序服务端口号,如启动多实例播放,端口会自动+1使用,端口已被占用时同样如此,多引擎播放器默认是920
以下项目仅多引擎播放器支持:
"Stream":1, 0// 配置主码流,1子码流
"Server":8000, // 配置海康服务器端口号
"DHServer":37777, // 配置大华服务器端口号
"TalkVolume":80, // 配置语音对讲音量
"FrameRate":1, // 配置播放速率,1代表正常速度播放
以上配置编辑修改后,重现启动播放器后生效,编辑时切记不要修改文件编码格式,否则可能导致无法解析此配置文件,所有配置失效。
1、猿大师播放器的程序包,默认不包含VLC桌面播放器程序,在使用时建议先安装VLC桌面播放器,再解压绿色版程序包后右键管理员权限运行InstallWrl.bat完成安装,如重新安装了VLC桌面播放器,需要重新执行程序目录的InstallWrl.bat完成配置;
2、如不想使用安装版的VLC桌面播放器,就需将VLC绿色版程序包一起部署,需要区分32位和64位的VLC程序包分别操作,VLC绿色版请从网站 http://download.videolan.org/pub/videolan/vlc/ 上选择自己的版本下载,绿色版一般是7z的压缩包。程序包所有文件解压默认放到播放小程序的vlc(也就是Config.json配置中COM注册项axvlc.dll文件名前面的名称)子目录,举例:Plugins\VLCWebPlayer\vlc\ 或Plugins\VideoWebPlayer\vlc\下。
多引擎播放小程序子目录默认不带海康及大华私有协议的播放库,请自行从海康官方网站(https://open.hikvision.com/download/5cda567cf47ae80dd41a54b3?type=10)及大华官方网站(https://support.dahuatech.com/tools/sdkExploit)上下载对应的Win32及Win64版设备网络SDK程序包,解压其中的库文件(Bin)子目录所有DLL文件,海康的32位的支持库放到Plugins\VideoWebPlayer,海康的64位播放库放到Plugins\VideoWebPlayer\X64\ 下即可,其中大华的DLL文件需要在以上提到的子目录下单独建立一个子目录DHNetSDK下存放。
当需要稳定播放多路视频流时,需要通过参数配置调优以达到最佳播放效果。建议修改的地方主要有以下几个地方:
1、 播放程序目录的配置文件Config.json中,Caching网络缓存时间,尽可能设置大一些,同时设置播放静音,也就是Config.json中Mute设置1;
2、 视频流的输出分辨率,视频流输出端配置尽可能低一些,分辨率越高,对网络带宽及终端电脑的硬件配置压力越大;
3、 操作系统尽量选择Windows 10及以上系统,WIN XP及WIN 7系统对显卡的GPU硬件加速能力支持较弱,也不支持指定地址的透明网页内容叠加显示;
4、 分屏播放时,可选择1个大窗口播放重要流,其它流用小窗口的方式,重点要看的视频主码流放到大窗口,其它小窗口使用子码流,这样分辨率尽可能低,当需要放大看时可切换到全屏播放模式,在全屏播放模式也可以切换到主码流播放;
5、 播放程序目录的配置文件Config.json中,BlockFlag设置为15,可屏蔽所有量大的通知,提高播放体验;
6、 如终端电脑配置确实较低或没有独立显卡无法获得满意的播放体验,需更换配置高一些的电脑,CPU及内存也尽量高配,同时确保网络通畅,带宽足够;
7、 如终端电脑同时配置了独立显卡和集成显卡的双显卡,可通过配置双显卡加速播放提高播放体验效果(参考第七节);
8、 建立WS连接时,去掉输出日志开关,flag设置为0,如需要排查播放问题时,才设置1输出日志。
当终端电脑分别有独立显卡和集成显卡时,猿大师播放器支持通过配置实现双显卡加速播放。双显卡GPU硬件加速播放开启条件:
1、 使用操作系统Windows 10及以上,并采用前一章节多路播放的优化配置;
2、 需要先后启动2个播放实例,每个实例中可继续实现多路分屏播放;
3、 启动播放实例时,参数Version配置1时使用独立进程播放,配置0时所有分屏视频流都在同一个进程播放,建议播放程序目录的配置文件Config.json中SelfGPU设置0,先启动的播放实例设置Version为1,这样确保第一个实例采用多进程独立显卡加速播放;后启动的播放实例Version设置为0,采用单进程集成显卡播放;
4、 由于集成显卡往往比独立显卡性能差些,所以在启动使用集成显卡的播放实例中,播放的视频分辨率尽可能低一些,分屏数量也尽可能少一些;
5、 在任务管理器中,切换到性能页面,观察GPU 1及GPU 0的利用情况,如果达到90%以上,说明GPU加速能力已经充分利用上了,另外也可以观察CPU及内存的利用率,需要适当留一些资源给其它程序使用,否则可能导致对浏览器的操作响应慢等情况出现。
1、VLC播放器测试
在线测试网页:http://test.yuanmaster.com/vlc
本地测试网页:程序安装目录下的Test子目录vlcWebPlayer.html及vlcwebfull.html,前者实现网页中局部加载播放,后者实现整个网页区加载播放。如果发现有些流无法播放,可把播放地址直接使用VLC桌面程序测试看看。也可以启动播放小程序子目录的测试程序Plugins\VLCWebPlayer\VlcOcxTest.exe测试,需要注意的是,如果VLC安装或打包注册的是64位版本,那么VlcOcxTest.exe也需要用X64子目录的版本,VlcOcxTest测试程序可以排除传入参数编码和中间件接收及处理播放地址的影响。测试界面如下:
2、多引擎播放器测试
在线测试网页:http://test.yuanmaster.com/player/
本地测试网页:程序安装目录下的Test子目录VedioPlayerFrame.html及VedioPlayerfull.html,前者实现网页中局部加载播放,后者实现整个网页区加载播放。如果发现有些流无法播放,可把播放地址直接使用VLC桌面程序测试看看。也可以启动播放小程序子目录的测试程序Plugins\VideoWebPlayer\ VideoPlayerTest.exe测试,需要注意的是,如果VLC安装或打包注册的是64位版本,那么VideoPlayerTest.exe也需要用X64子目录的版本。,VideoPlayerTest测试程序可以排除传入参数编码和中间件接收及处理播放地址的影响测试界面如下,可切换播放引擎: