|
|
|
@ -1,5 +1,6 @@
|
|
|
|
|
<template>
|
|
|
|
|
<div>
|
|
|
|
|
<div id="monitorId1" class="plugin"></div>
|
|
|
|
|
<div id="monitorId2" class="plugin"></div>
|
|
|
|
|
</div>
|
|
|
|
|
</template>
|
|
|
|
@ -13,11 +14,11 @@ export default {
|
|
|
|
|
},
|
|
|
|
|
props:['iChannelID','monitorId'],
|
|
|
|
|
async mounted() {
|
|
|
|
|
window.WebVideoCtrl1 = window.WebVideoCtrl
|
|
|
|
|
await this.$nextTick()
|
|
|
|
|
const _this = this
|
|
|
|
|
var g_iWndIndex = 0;
|
|
|
|
|
$(function () {
|
|
|
|
|
window.WebVideoCtrl1 = window.WebVideoCtrl
|
|
|
|
|
// 检查插件是否已经安装过
|
|
|
|
|
var iRet = window.WebVideoCtrl1.I_CheckPluginInstall();
|
|
|
|
|
if (-1 == iRet) {
|
|
|
|
@ -26,6 +27,31 @@ export default {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 初始化插件参数及插入插件
|
|
|
|
|
WebVideoCtrl.I_InitPlugin(500, 300, {
|
|
|
|
|
bWndFull: true, //是否支持单窗口双击全屏,默认支持 true:支持 false:不支持
|
|
|
|
|
iPackageType: 2,
|
|
|
|
|
iWndowType: 1,
|
|
|
|
|
bNoPlugin: true,
|
|
|
|
|
cbSelWnd: function (xmlDoc) {
|
|
|
|
|
console.log(xmlDoc)
|
|
|
|
|
},
|
|
|
|
|
cbDoubleClickWnd: function (iWndIndex, bFullScreen) {
|
|
|
|
|
console.log(iWndIndex, bFullScreen)
|
|
|
|
|
},
|
|
|
|
|
cbEvent: function (iEventType, iParam1, iParam2) {
|
|
|
|
|
},
|
|
|
|
|
cbRemoteConfig: function () {
|
|
|
|
|
console.log("关闭远程配置库!");
|
|
|
|
|
},
|
|
|
|
|
cbInitPluginComplete: function () {
|
|
|
|
|
WebVideoCtrl1.I_InsertOBJECTPlugin('monitorId1');
|
|
|
|
|
// 检查插件是否最新
|
|
|
|
|
if (-1 == WebVideoCtrl1.I_CheckPluginVersion()) {
|
|
|
|
|
alert("检测到新的插件版本");
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
WebVideoCtrl1.I_InitPlugin(500, 300, {
|
|
|
|
|
bWndFull: true, //是否支持单窗口双击全屏,默认支持 true:支持 false:不支持
|
|
|
|
|
iPackageType: 2,
|
|
|
|
@ -66,14 +92,16 @@ export default {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var iRet = WebVideoCtrl1.I_Login(szIP, 1, szPort, szUsername, szPassword, {
|
|
|
|
|
let iRet = WebVideoCtrl1.I_Login(szIP, 1, szPort, szUsername, szPassword, {
|
|
|
|
|
success: function (xmlDoc) {
|
|
|
|
|
setTimeout(function () {
|
|
|
|
|
getChannelInfo();
|
|
|
|
|
getDevicePort();
|
|
|
|
|
getChannelInfo1();
|
|
|
|
|
getDevicePort1();
|
|
|
|
|
setTimeout(()=>{
|
|
|
|
|
|
|
|
|
|
clickStartRealPlay()
|
|
|
|
|
clickStartRealPlay1()
|
|
|
|
|
},2000)
|
|
|
|
|
}, 10);
|
|
|
|
|
},
|
|
|
|
@ -99,6 +127,18 @@ export default {
|
|
|
|
|
console.log(szDeviceIdentify + " 获取端口失败!");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
function getDevicePort1() {
|
|
|
|
|
var szDeviceIdentify = '192.168.2.64';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var oPort = WebVideoCtrl.I_GetDevicePort(szDeviceIdentify);
|
|
|
|
|
if (oPort != null) {
|
|
|
|
|
|
|
|
|
|
console.log(szDeviceIdentify + " 获取端口成功!");
|
|
|
|
|
} else {
|
|
|
|
|
console.log(szDeviceIdentify + " 获取端口失败!");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function getChannelInfo() {
|
|
|
|
|
var szDeviceIdentify = '192.168.2.64'
|
|
|
|
@ -121,40 +161,22 @@ export default {
|
|
|
|
|
error: function (status, xmlDoc) {
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
// 数字通道
|
|
|
|
|
WebVideoCtrl1.I_GetDigitalChannelInfo(szDeviceIdentify, {
|
|
|
|
|
async: false,
|
|
|
|
|
success: function (xmlDoc) {
|
|
|
|
|
var oChannels = $(xmlDoc).find("InputProxyChannelStatus");
|
|
|
|
|
|
|
|
|
|
$.each(oChannels, function (i) {
|
|
|
|
|
var id = $(this).find("id").eq(0).text(),
|
|
|
|
|
name = $(this).find("name").eq(0).text(),
|
|
|
|
|
online = $(this).find("online").eq(0).text();
|
|
|
|
|
if ("false" == online) {// 过滤禁用的数字通道
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
if ("" == name) {
|
|
|
|
|
name = "IPCamera " + (i < 9 ? "0" + (i + 1) : (i + 1));
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
error: function (status, xmlDoc) {
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
// 零通道
|
|
|
|
|
WebVideoCtrl1.I_GetZeroChannelInfo(szDeviceIdentify, {
|
|
|
|
|
function getChannelInfo1() {
|
|
|
|
|
var szDeviceIdentify = '192.168.2.64'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 模拟通道
|
|
|
|
|
WebVideoCtrl.I_GetAnalogChannelInfo(szDeviceIdentify, {
|
|
|
|
|
async: false,
|
|
|
|
|
success: function (xmlDoc) {
|
|
|
|
|
var oChannels = $(xmlDoc).find("ZeroVideoChannel");
|
|
|
|
|
var oChannels = $(xmlDoc).find("VideoInputChannel");
|
|
|
|
|
|
|
|
|
|
$.each(oChannels, function (i) {
|
|
|
|
|
var id = $(this).find("id").eq(0).text(),
|
|
|
|
|
name = $(this).find("name").eq(0).text();
|
|
|
|
|
if ("" == name) {
|
|
|
|
|
name = "Zero Channel " + (i < 9 ? "0" + (i + 1) : (i + 1));
|
|
|
|
|
}
|
|
|
|
|
if ("true" == $(this).find("enabled").eq(0).text()) {// 过滤禁用的零通道
|
|
|
|
|
name = "Camera " + (i < 9 ? "0" + (i + 1) : (i + 1));
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
@ -166,6 +188,48 @@ export default {
|
|
|
|
|
|
|
|
|
|
// 开始预览
|
|
|
|
|
function clickStartRealPlay(iStreamType) {
|
|
|
|
|
var oWndInfo = WebVideoCtrl.I_GetWindowStatus(g_iWndIndex),
|
|
|
|
|
szDeviceIdentify = '192.168.2.64',
|
|
|
|
|
iRtspPort = 554,
|
|
|
|
|
iChannelID = 1,
|
|
|
|
|
bZeroChannel = false,
|
|
|
|
|
szInfo = "";
|
|
|
|
|
|
|
|
|
|
iStreamType = 1;
|
|
|
|
|
|
|
|
|
|
var startRealPlay = function () {
|
|
|
|
|
WebVideoCtrl1.I_StartRealPlay(szDeviceIdentify, {
|
|
|
|
|
iRtspPort: iRtspPort,
|
|
|
|
|
iStreamType: iStreamType,
|
|
|
|
|
iChannelID: iChannelID,
|
|
|
|
|
bZeroChannel: bZeroChannel,
|
|
|
|
|
success: function () {
|
|
|
|
|
szInfo = "开始预览成功!";
|
|
|
|
|
console.log(szDeviceIdentify + " " + szInfo);
|
|
|
|
|
|
|
|
|
|
},
|
|
|
|
|
error: function (status, xmlDoc) {
|
|
|
|
|
if (403 === status) {
|
|
|
|
|
szInfo = "设备不支持Websocket取流!";
|
|
|
|
|
} else {
|
|
|
|
|
szInfo = "开始预览失败!";
|
|
|
|
|
}
|
|
|
|
|
console.log(szDeviceIdentify + " " + szInfo);
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
if (oWndInfo != null) {// 已经在播放了,先停止
|
|
|
|
|
WebVideoCtrl1.I_Stop({
|
|
|
|
|
success: function () {
|
|
|
|
|
startRealPlay();
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
} else {
|
|
|
|
|
startRealPlay();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
function clickStartRealPlay1(iStreamType) {
|
|
|
|
|
var oWndInfo = WebVideoCtrl1.I_GetWindowStatus(g_iWndIndex),
|
|
|
|
|
szDeviceIdentify = '192.168.2.64',
|
|
|
|
|
iRtspPort = 554,
|
|
|
|
|