|
|
@ -113,6 +113,8 @@ |
|
|
|
<script type="text/javascript" src="/dahua/lib/WSPlayer/WSPlayer.js"></script> |
|
|
|
<script type="text/javascript" src="/dahua/lib/WSPlayer/WSPlayer.js"></script> |
|
|
|
<script type="module"> |
|
|
|
<script type="module"> |
|
|
|
//获取参数real |
|
|
|
//获取参数real |
|
|
|
|
|
|
|
let SelectedNum = 0 |
|
|
|
|
|
|
|
let luNum = 1 |
|
|
|
let isReal = window.location.href.indexOf('real') !== -1 ? true : false; |
|
|
|
let isReal = window.location.href.indexOf('real') !== -1 ? true : false; |
|
|
|
if (isReal) { |
|
|
|
if (isReal) { |
|
|
|
document.getElementsByClassName('record-container')[0].style.display = 'none'; |
|
|
|
document.getElementsByClassName('record-container')[0].style.display = 'none'; |
|
|
@ -135,9 +137,15 @@ |
|
|
|
console.log('接收到消息:', event.data); |
|
|
|
console.log('接收到消息:', event.data); |
|
|
|
if (event.data === 'reload') { |
|
|
|
if (event.data === 'reload') { |
|
|
|
location.reload() |
|
|
|
location.reload() |
|
|
|
|
|
|
|
} else if (event.data.type === 'clear') { |
|
|
|
|
|
|
|
SelectedNum = {playIndex: 0} |
|
|
|
} else if (event.data.type === 'startVideo') { |
|
|
|
} else if (event.data.type === 'startVideo') { |
|
|
|
cameraInfo = event.data.data; |
|
|
|
cameraInfo = event.data.data; |
|
|
|
playReal() |
|
|
|
if (luNum == 1) { |
|
|
|
|
|
|
|
playReal() |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
playReal(cameraInfo) |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
else if (event.data.type === 'playRecord') { |
|
|
|
else if (event.data.type === 'playRecord') { |
|
|
|
recordInfo = event.data.data; |
|
|
|
recordInfo = event.data.data; |
|
|
@ -182,8 +190,8 @@ |
|
|
|
var realPlayer = new PlayerManager({ |
|
|
|
var realPlayer = new PlayerManager({ |
|
|
|
el: "ws-real-player", /** 实时预览容器id,创建多个播放器,传入不同的容器id即可 **/ |
|
|
|
el: "ws-real-player", /** 实时预览容器id,创建多个播放器,传入不同的容器id即可 **/ |
|
|
|
type: 'real', /** real - 实时预览 record - 录像回放 **/ |
|
|
|
type: 'real', /** real - 实时预览 record - 录像回放 **/ |
|
|
|
maxNum: 25, /** 一个播放器上限能播放的路数,可根据实际情况设置,支持 1 4 9 16 25 **/ |
|
|
|
maxNum: 16, /** 一个播放器上限能播放的路数,可根据实际情况设置,支持 1 4 9 16 25 **/ |
|
|
|
num: 1, /** 初始化,页面显示的路数 **/ |
|
|
|
num: 16, /** 初始化,页面显示的路数 **/ |
|
|
|
showControl: true, /** 是否显示工具栏,默认显示 **/ |
|
|
|
showControl: true, /** 是否显示工具栏,默认显示 **/ |
|
|
|
prefixUrl: 'dahua/lib', /** 解码库所在位置的前缀 **/ |
|
|
|
prefixUrl: 'dahua/lib', /** 解码库所在位置的前缀 **/ |
|
|
|
receiveMessageFromWSPlayer: (methods, data, err) => { /* 回调函数,可以在以下回调函数里面做监听 */ |
|
|
|
receiveMessageFromWSPlayer: (methods, data, err) => { /* 回调函数,可以在以下回调函数里面做监听 */ |
|
|
@ -203,7 +211,7 @@ |
|
|
|
console.log(data.selectIndex) // 窗口序号,从 0 |
|
|
|
console.log(data.selectIndex) // 窗口序号,从 0 |
|
|
|
break; |
|
|
|
break; |
|
|
|
case "realSuccess": // 实时预览成功 |
|
|
|
case "realSuccess": // 实时预览成功 |
|
|
|
window.parent.postMessage({type: 'realSuccess'}, '*') |
|
|
|
window.parent.postMessage({ type: 'realSuccess' }, '*') |
|
|
|
console.log("实时预览成功") |
|
|
|
console.log("实时预览成功") |
|
|
|
break; |
|
|
|
break; |
|
|
|
case "realError": // 实时预览失败 |
|
|
|
case "realError": // 实时预览失败 |
|
|
@ -216,9 +224,11 @@ |
|
|
|
console.log("对讲失败"); |
|
|
|
console.log("对讲失败"); |
|
|
|
break; |
|
|
|
break; |
|
|
|
case 'selectWindowChanged': // 选中的窗口发生改变 |
|
|
|
case 'selectWindowChanged': // 选中的窗口发生改变 |
|
|
|
|
|
|
|
SelectedNum = data |
|
|
|
console.log(data, "返回窗口信息") |
|
|
|
console.log(data, "返回窗口信息") |
|
|
|
break; |
|
|
|
break; |
|
|
|
case 'windowNumChanged': // 播放器显示的路数发生改变 |
|
|
|
case 'windowNumChanged': // 播放器显示的路数发生改变 |
|
|
|
|
|
|
|
luNum = data |
|
|
|
console.log(data, "返回显示的窗口数量") |
|
|
|
console.log(data, "返回显示的窗口数量") |
|
|
|
break; |
|
|
|
break; |
|
|
|
case 'closeVideo': // 视频关闭回调 |
|
|
|
case 'closeVideo': // 视频关闭回调 |
|
|
@ -238,21 +248,22 @@ |
|
|
|
}) |
|
|
|
}) |
|
|
|
|
|
|
|
|
|
|
|
// 流地址方式播放实时预览 |
|
|
|
// 流地址方式播放实时预览 |
|
|
|
function playReal() { |
|
|
|
function playReal(newVideo) { |
|
|
|
|
|
|
|
let info = newVideo || cameraInfo; |
|
|
|
let wsURL = `ws://59.47.183.182:9100` |
|
|
|
let wsURL = `ws://59.47.183.182:9100` |
|
|
|
let rtspURL = `${cameraInfo.url}?token=${cameraInfo.token}`.replace(/\$/g, "%24").replace(/&/g, "%26"); |
|
|
|
let rtspURL = `${info.url}?token=${info.token}`.replace(/\$/g, "%24").replace(/&/g, "%26"); |
|
|
|
let streamType = 1 |
|
|
|
let streamType = 1 |
|
|
|
let channelId = cameraInfo.channelId |
|
|
|
let channelId = info.channelId |
|
|
|
console.log('params :>> ', { |
|
|
|
console.log('params :>> ', { |
|
|
|
wsURL, |
|
|
|
wsURL, |
|
|
|
rtspURL, |
|
|
|
rtspURL, |
|
|
|
streamType, |
|
|
|
streamType, |
|
|
|
channelId |
|
|
|
channelId, |
|
|
|
}); |
|
|
|
}); |
|
|
|
realPlayer.realByUrl({ |
|
|
|
realPlayer.realByUrl({ |
|
|
|
rtspURL, // 必传 |
|
|
|
rtspURL, // 必传 |
|
|
|
wsURL, // 必传 |
|
|
|
wsURL, // 必传 |
|
|
|
selectIndex: 0, // 必传, 播放窗口号 |
|
|
|
selectIndex: SelectedNum.playIndex, // 必传, 播放窗口号 |
|
|
|
channelId, // 必传, 通道id |
|
|
|
channelId, // 必传, 通道id |
|
|
|
streamType, // 必传, 码流类型, |
|
|
|
streamType, // 必传, 码流类型, |
|
|
|
playerAdapter: 'stretching', // 选传, selfAdaption 自适应 | stretching 拉伸 |
|
|
|
playerAdapter: 'stretching', // 选传, selfAdaption 自适应 | stretching 拉伸 |
|
|
@ -324,6 +335,7 @@ |
|
|
|
// })) |
|
|
|
// })) |
|
|
|
break; |
|
|
|
break; |
|
|
|
case 'selectWindowChanged': // 选中的窗口发生改变 |
|
|
|
case 'selectWindowChanged': // 选中的窗口发生改变 |
|
|
|
|
|
|
|
|
|
|
|
console.log(data, "返回窗口信息") |
|
|
|
console.log(data, "返回窗口信息") |
|
|
|
break; |
|
|
|
break; |
|
|
|
case 'windowNumChanged': // 播放器显示的路数发生改变 |
|
|
|
case 'windowNumChanged': // 播放器显示的路数发生改变 |
|
|
|