@vtx/player 1.4.17 → 1.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -246,10 +246,13 @@ var PlayerManager = /*#__PURE__*/function () {
246
246
  }, {
247
247
  key: "close",
248
248
  value: function close(index) {
249
+ var _a;
250
+
249
251
  this.player && this.player.reSetVideo(index);
250
252
 
251
253
  if (this.dp) {
252
- this.dp.ttxplayer.destroy();
254
+ (_a = this.dp.ttxplayer) === null || _a === void 0 ? void 0 : _a.destroy();
255
+ this.dp.destroy();
253
256
  }
254
257
  }
255
258
  }, {
@@ -1 +1 @@
1
- {"version":3,"file":"PlayerManager.js","names":["PlayerManager","opt","el","url","realPlayer","recordPlayer","player","type","playNum","playIndex","currentChannelId","recordList","isShow","winDom","$","empty","css","addClass","picConfig","device","channel","dp","index","itemId","ttxplayer","stop","setPlayTime","destroy","bufferTime","bufferTimeMax","videoOptions","customType","video","Cmsv6Player","showScreenshot","lang","liveText","v6isLive","play","isLive","hasVideo","hasAudio","enableAudio","minBufferTime","maxBufferTime","showLastScreen","DPlayer","container","document","getElementById","live","screenshot","autoplay","mutex","loop","setVideoFrame","id","find","getRecordList","viewSize","each","i","obj","_obj","width","height","that","toggleVideo","speed","playSpeed","reSetVideo","setSize","fullScreen","playerAdapter","setPlayerAdapter","number","setPlayerNum","setSelectIndex","time","seekVideo","method","data","channelId","changeVideoFlag","console","log","selectIndex"],"sources":["bd/PlayerManager.js"],"sourcesContent":["/**\n *\n */\nclass PlayerManager {\n constructor(opt) {\n // 播放器所在的容器ID\n this.el = opt.el;\n this.url = opt.url;\n // 实时预览播放器\n this.realPlayer = null;\n // 录像回放播放器\n this.recordPlayer = null;\n this.player = null;\n // 实时预览还是录像回放播放器\n this.type = opt.type;\n // 窗口的数量\n this.playNum = 1;\n // 当前选中的窗口的索引\n this.playIndex = 0;\n // 当前选中窗口正在播放视频的通道\n this.currentChannelId = '';\n // 索引对应窗口,保存当日录像信息\n this.recordList = [];\n this.isShow = false; // 视频是否在播放\n this.winDom = $('#' + opt.el);\n this.winDom.empty();\n this.winDom.css('width', '100%').css('height', '100%').addClass('ttx-video-h5');\n this.picConfig = {\n device: [],\n channel: [],\n };\n this.dp = null;\n // this.initFlash = this.initFlash.bind(this);\n // this.initPlayer();\n // this.playRealVideo();\n }\n //初始化视频插件\n initPlayer() {\n // if (this.isInitFinished) {\n // return;\n // }\n }\n /**\n * 播放实时预览视频\n * @param opt.streamType: {Number|String} 选填,码流类型,不填默认播放辅码流1,若不存在辅码流1,则自动切换到主码流 1-主码流 2-辅码流1 3-辅码流2\n * @param opt.selectIndex: {Number} 选填,指定从哪个窗口开始播放。不填默认从选中的窗口开始播放\n */\n playRealVideo() {\n //先停止视频播放\n // swfobject.getObjectById(this.el).stopVideo(opt.selectIndex);\n //播放视频\n //type 当实时视频时,传1,监听时,传2,双向对讲时传3 广播功能 4\n const index = this.playIndex;\n const url = this.url;\n const type = this.type;\n var itemId = this.el;\n if (this.dp) {\n this.dp.ttxplayer.stop();\n this.dp.ttxplayer.setPlayTime(0);\n this.dp.destroy();\n }\n var bufferTime = 2000;\n var bufferTimeMax = 6000;\n // bufferTime = bufferTime ? bufferTime : 200;\n // bufferTimeMax = bufferTimeMax ? bufferTimeMax : 2000;\n const videoOptions = {\n url: url,\n type: 'ttxplayer',\n customType: {\n ttxplayer: function (video, player) {\n player.ttxplayer = new Cmsv6Player(null, itemId, {\n showScreenshot: true,\n lang: 'zh-cn',\n });\n // player.ttxplayer.ft.style = \"color:blue;position:relative;background-color:black;\";\n player.ttxplayer.liveText = '';\n //如果不是直播链接则,live传false\n var v6isLive = false;\n // if (url.indexOf('/rtmp/') === -1 && that.options.live) {\n // v6isLive = false;\n // }\n player.ttxplayer.play(url, {\n isLive: v6isLive,\n hasVideo: true,\n hasAudio: true,\n enableAudio: false,\n minBufferTime: bufferTime,\n maxBufferTime: bufferTimeMax,\n showLastScreen: false,\n });\n },\n },\n };\n //*** */\n this.dp = new DPlayer({\n container: document.getElementById(itemId),\n live: false,\n screenshot: true,\n autoplay: true,\n mutex: false,\n loop: false,\n lang: 'zh-cn',\n video: videoOptions,\n });\n // this.bindDpEvent(dp, type);\n this.setVideoFrame('full');\n const dp = this.dp;\n // var bcolor = '000';\n if (dp && dp.container.id) {\n $('#' + dp.container.id)\n .find('.ttxplayer-controller')\n .css('display', 'none');\n $('#' + dp.container.id)\n .find('.dplayer-controller')\n .css('display', 'none');\n }\n // $('#' + dp.container.id)\n // .find('.dplayer-controller')\n // .css('background', '#' + bcolor);\n }\n /**\n * 播放录像回放\n * @param opt.channelList {Array<Object>} 通道集合 必填\n * @param opt.startTime {String|Number} 开始时间 必选 timestamp到秒\n * @param opt.endTime {String|Number} 结束时间 必选 timestamp到秒\n * @param opt.recordSource {String|Number} 录像来源 必选 2表示设备录像 3表示中心录像\n * @param opt.streamType {String|Number} 码流类型 可选\n * @param opt.recordType {String|Number} 录像类型 可选\n */\n // channelList: [{\n // id: channelCode, // {String} 通道编码 -- 用于回放,必填\n // }]\n playRecordVideo(opt) {\n this.recordPlayer && this.recordPlayer.getRecordList(opt);\n }\n setVideoFrame(viewSize) {\n this.winDom.find('video').each(function (i, obj) {\n var _obj = $(obj);\n _obj.css('width', '100%').css('height', '100%');\n var width = _obj.width();\n var height = _obj.height();\n if (viewSize === '4:3') {\n if (width / height > 4 / 3) {\n _obj.css('width', (height * 4) / 3);\n }\n else {\n _obj.css('height', (width * 3) / 4);\n }\n }\n if (viewSize === '16:9') {\n if (width / height > 16 / 9) {\n _obj.css('width', (height * 16) / 9);\n }\n else {\n _obj.css('height', (width * 9) / 16);\n }\n }\n });\n }\n stopVideo(index) {\n var that = this;\n if (index >= this.playNum) {\n return;\n }\n // this.reSetVideo(index)\n // var video = this.playVideos[index];\n // if (video) {\n // if (that.options.isTtx) {\n // video.ttxplayer.stop();\n // video.ttxplayer.setPlayTime(0);\n // } else {\n // video.pause();\n // video.video.currentTime = 0;\n // }\n // try {\n // var url = video.options.video.url;\n // var devidno = url.split('DevIDNO=')[1].split('&')[0];\n // that.timeMap808[devidno] = new Date().getTime();\n // } catch (e) {}\n // }\n }\n /**\n * 录像暂停\n * 只有正在播放的录像调用才有效\n */\n pause() {\n this.player && this.player.toggleVideo(0);\n }\n /**\n * 录像暂停后播放\n * 只有暂停后的录像调用才有效\n */\n play() {\n this.player && this.player.toggleVideo(0);\n }\n /**\n * 倍速播放\n * @param {number} speed 速率 0.125 0.25 0.5 1 2 4 8 共7种速率\n */\n playSpeed(speed) {\n this.recordPlayer && this.recordPlayer.playSpeed(speed);\n }\n /**\n * 关闭播放器\n * @param {number} index 可选,关闭指定索引的窗口的播放器,不传则表示关闭所有播放器\n */\n close(index) {\n this.player && this.player.reSetVideo(index);\n if (this.dp) {\n this.dp.ttxplayer.destroy();\n }\n }\n resize() {\n this.player && this.player.setSize();\n }\n /**\n * 设置全屏\n */\n setFullScreen() {\n this.player.fullScreen();\n }\n /**\n * 设置窗口自适应还是拉伸\n * @param {string} playerAdapter selfAdaption 自适应 | stretching 拉伸\n */\n setPlayerAdapter(playerAdapter) {\n this.player.setPlayerAdapter(playerAdapter);\n }\n /**\n * 控制视频播放器显示的路数: 1 4 9 16 25,不会超过最大显示路数\n * @param {number} number\n */\n setPlayerNum(number) {\n this.player.setPlayerNum(number);\n }\n /**\n * 设置选中的播放器的索引\n * @param {number} index\n */\n setSelectIndex(index) {\n this.player.setSelectIndex(index);\n }\n /**\n * 录像跳转播放\n * @param {number} time HH:mm:ss格式\n */\n jumpPlayByTime(time) {\n this.player.seekVideo(0, time);\n }\n // ----------------- 播放器事件 ------------------------\n __receiveMessageFromWSPlayer(method, data) {\n switch (method) {\n // ------------- 公共事件 ---------------------\n case 'selectWindowChanged': // 选中的窗口发生改变\n this.currentChannelId = data.channelId;\n this.playIndex = data.playIndex;\n break;\n case 'windowNumChanged': // 播放器显示的路数发生改变\n this.playNum = data;\n break;\n case 'closeVideo': // 视频关闭\n // 点击关闭按钮引发的视频关闭进行提示\n // 切换视频引发的视频关闭不进行提示\n if (!data.changeVideoFlag) {\n console.log(`窗口${data.selectIndex}的视频已关闭`);\n }\n break;\n case 'statusChanged': // 视频状态发生改变\n break;\n case 'errorInfo': // 错误信息提示\n // data = {\n // errorCode: xxx,\n // errorMsg: \"\",\n // channelList: [],\n // }\n break;\n }\n }\n}\nexport default PlayerManager;\n"],"mappings":"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"}
1
+ {"version":3,"file":"PlayerManager.js","names":["PlayerManager","opt","el","url","realPlayer","recordPlayer","player","type","playNum","playIndex","currentChannelId","recordList","isShow","winDom","$","empty","css","addClass","picConfig","device","channel","dp","index","itemId","ttxplayer","stop","setPlayTime","destroy","bufferTime","bufferTimeMax","videoOptions","customType","video","Cmsv6Player","showScreenshot","lang","liveText","v6isLive","play","isLive","hasVideo","hasAudio","enableAudio","minBufferTime","maxBufferTime","showLastScreen","DPlayer","container","document","getElementById","live","screenshot","autoplay","mutex","loop","setVideoFrame","id","find","getRecordList","viewSize","each","i","obj","_obj","width","height","that","toggleVideo","speed","playSpeed","_a","reSetVideo","setSize","fullScreen","playerAdapter","setPlayerAdapter","number","setPlayerNum","setSelectIndex","time","seekVideo","method","data","channelId","changeVideoFlag","console","log","selectIndex"],"sources":["bd/PlayerManager.js"],"sourcesContent":["/**\n *\n */\nclass PlayerManager {\n constructor(opt) {\n // 播放器所在的容器ID\n this.el = opt.el;\n this.url = opt.url;\n // 实时预览播放器\n this.realPlayer = null;\n // 录像回放播放器\n this.recordPlayer = null;\n this.player = null;\n // 实时预览还是录像回放播放器\n this.type = opt.type;\n // 窗口的数量\n this.playNum = 1;\n // 当前选中的窗口的索引\n this.playIndex = 0;\n // 当前选中窗口正在播放视频的通道\n this.currentChannelId = '';\n // 索引对应窗口,保存当日录像信息\n this.recordList = [];\n this.isShow = false; // 视频是否在播放\n this.winDom = $('#' + opt.el);\n this.winDom.empty();\n this.winDom.css('width', '100%').css('height', '100%').addClass('ttx-video-h5');\n this.picConfig = {\n device: [],\n channel: [],\n };\n this.dp = null;\n // this.initFlash = this.initFlash.bind(this);\n // this.initPlayer();\n // this.playRealVideo();\n }\n //初始化视频插件\n initPlayer() {\n // if (this.isInitFinished) {\n // return;\n // }\n }\n /**\n * 播放实时预览视频\n * @param opt.streamType: {Number|String} 选填,码流类型,不填默认播放辅码流1,若不存在辅码流1,则自动切换到主码流 1-主码流 2-辅码流1 3-辅码流2\n * @param opt.selectIndex: {Number} 选填,指定从哪个窗口开始播放。不填默认从选中的窗口开始播放\n */\n playRealVideo() {\n //先停止视频播放\n // swfobject.getObjectById(this.el).stopVideo(opt.selectIndex);\n //播放视频\n //type 当实时视频时,传1,监听时,传2,双向对讲时传3 广播功能 4\n const index = this.playIndex;\n const url = this.url;\n const type = this.type;\n var itemId = this.el;\n if (this.dp) {\n this.dp.ttxplayer.stop();\n this.dp.ttxplayer.setPlayTime(0);\n this.dp.destroy();\n }\n var bufferTime = 2000;\n var bufferTimeMax = 6000;\n // bufferTime = bufferTime ? bufferTime : 200;\n // bufferTimeMax = bufferTimeMax ? bufferTimeMax : 2000;\n const videoOptions = {\n url: url,\n type: 'ttxplayer',\n customType: {\n ttxplayer: function (video, player) {\n player.ttxplayer = new Cmsv6Player(null, itemId, {\n showScreenshot: true,\n lang: 'zh-cn',\n });\n // player.ttxplayer.ft.style = \"color:blue;position:relative;background-color:black;\";\n player.ttxplayer.liveText = '';\n //如果不是直播链接则,live传false\n var v6isLive = false;\n // if (url.indexOf('/rtmp/') === -1 && that.options.live) {\n // v6isLive = false;\n // }\n player.ttxplayer.play(url, {\n isLive: v6isLive,\n hasVideo: true,\n hasAudio: true,\n enableAudio: false,\n minBufferTime: bufferTime,\n maxBufferTime: bufferTimeMax,\n showLastScreen: false,\n });\n },\n },\n };\n //*** */\n this.dp = new DPlayer({\n container: document.getElementById(itemId),\n live: false,\n screenshot: true,\n autoplay: true,\n mutex: false,\n loop: false,\n lang: 'zh-cn',\n video: videoOptions,\n });\n // this.bindDpEvent(dp, type);\n this.setVideoFrame('full');\n const dp = this.dp;\n // var bcolor = '000';\n if (dp && dp.container.id) {\n $('#' + dp.container.id)\n .find('.ttxplayer-controller')\n .css('display', 'none');\n $('#' + dp.container.id)\n .find('.dplayer-controller')\n .css('display', 'none');\n }\n // $('#' + dp.container.id)\n // .find('.dplayer-controller')\n // .css('background', '#' + bcolor);\n }\n /**\n * 播放录像回放\n * @param opt.channelList {Array<Object>} 通道集合 必填\n * @param opt.startTime {String|Number} 开始时间 必选 timestamp到秒\n * @param opt.endTime {String|Number} 结束时间 必选 timestamp到秒\n * @param opt.recordSource {String|Number} 录像来源 必选 2表示设备录像 3表示中心录像\n * @param opt.streamType {String|Number} 码流类型 可选\n * @param opt.recordType {String|Number} 录像类型 可选\n */\n // channelList: [{\n // id: channelCode, // {String} 通道编码 -- 用于回放,必填\n // }]\n playRecordVideo(opt) {\n this.recordPlayer && this.recordPlayer.getRecordList(opt);\n }\n setVideoFrame(viewSize) {\n this.winDom.find('video').each(function (i, obj) {\n var _obj = $(obj);\n _obj.css('width', '100%').css('height', '100%');\n var width = _obj.width();\n var height = _obj.height();\n if (viewSize === '4:3') {\n if (width / height > 4 / 3) {\n _obj.css('width', (height * 4) / 3);\n }\n else {\n _obj.css('height', (width * 3) / 4);\n }\n }\n if (viewSize === '16:9') {\n if (width / height > 16 / 9) {\n _obj.css('width', (height * 16) / 9);\n }\n else {\n _obj.css('height', (width * 9) / 16);\n }\n }\n });\n }\n stopVideo(index) {\n var that = this;\n if (index >= this.playNum) {\n return;\n }\n // this.reSetVideo(index)\n // var video = this.playVideos[index];\n // if (video) {\n // if (that.options.isTtx) {\n // video.ttxplayer.stop();\n // video.ttxplayer.setPlayTime(0);\n // } else {\n // video.pause();\n // video.video.currentTime = 0;\n // }\n // try {\n // var url = video.options.video.url;\n // var devidno = url.split('DevIDNO=')[1].split('&')[0];\n // that.timeMap808[devidno] = new Date().getTime();\n // } catch (e) {}\n // }\n }\n /**\n * 录像暂停\n * 只有正在播放的录像调用才有效\n */\n pause() {\n this.player && this.player.toggleVideo(0);\n }\n /**\n * 录像暂停后播放\n * 只有暂停后的录像调用才有效\n */\n play() {\n this.player && this.player.toggleVideo(0);\n }\n /**\n * 倍速播放\n * @param {number} speed 速率 0.125 0.25 0.5 1 2 4 8 共7种速率\n */\n playSpeed(speed) {\n this.recordPlayer && this.recordPlayer.playSpeed(speed);\n }\n /**\n * 关闭播放器\n * @param {number} index 可选,关闭指定索引的窗口的播放器,不传则表示关闭所有播放器\n */\n close(index) {\n var _a;\n this.player && this.player.reSetVideo(index);\n if (this.dp) {\n (_a = this.dp.ttxplayer) === null || _a === void 0 ? void 0 : _a.destroy();\n this.dp.destroy();\n }\n }\n resize() {\n this.player && this.player.setSize();\n }\n /**\n * 设置全屏\n */\n setFullScreen() {\n this.player.fullScreen();\n }\n /**\n * 设置窗口自适应还是拉伸\n * @param {string} playerAdapter selfAdaption 自适应 | stretching 拉伸\n */\n setPlayerAdapter(playerAdapter) {\n this.player.setPlayerAdapter(playerAdapter);\n }\n /**\n * 控制视频播放器显示的路数: 1 4 9 16 25,不会超过最大显示路数\n * @param {number} number\n */\n setPlayerNum(number) {\n this.player.setPlayerNum(number);\n }\n /**\n * 设置选中的播放器的索引\n * @param {number} index\n */\n setSelectIndex(index) {\n this.player.setSelectIndex(index);\n }\n /**\n * 录像跳转播放\n * @param {number} time HH:mm:ss格式\n */\n jumpPlayByTime(time) {\n this.player.seekVideo(0, time);\n }\n // ----------------- 播放器事件 ------------------------\n __receiveMessageFromWSPlayer(method, data) {\n switch (method) {\n // ------------- 公共事件 ---------------------\n case 'selectWindowChanged': // 选中的窗口发生改变\n this.currentChannelId = data.channelId;\n this.playIndex = data.playIndex;\n break;\n case 'windowNumChanged': // 播放器显示的路数发生改变\n this.playNum = data;\n break;\n case 'closeVideo': // 视频关闭\n // 点击关闭按钮引发的视频关闭进行提示\n // 切换视频引发的视频关闭不进行提示\n if (!data.changeVideoFlag) {\n console.log(`窗口${data.selectIndex}的视频已关闭`);\n }\n break;\n case 'statusChanged': // 视频状态发生改变\n break;\n case 'errorInfo': // 错误信息提示\n // data = {\n // errorCode: xxx,\n // errorMsg: \"\",\n // channelList: [],\n // }\n break;\n }\n }\n}\nexport default PlayerManager;\n"],"mappings":"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"}
@@ -450,7 +450,7 @@ var HistoryPlayer = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
450
450
  children: [(0, _jsxRuntime.jsx)("span", Object.assign({
451
451
  className: "current"
452
452
  }, {
453
- children: state.currentTime ? (0, _moment["default"])(state.currentTime).format('HH:mm:ss') : ''
453
+ children: state.currentTime ? (0, _moment["default"])(state.currentTime).format('HH:mm:ss') : '-'
454
454
  })), (0, _jsxRuntime.jsxs)("span", Object.assign({
455
455
  className: "total"
456
456
  }, {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["__awaiter","thisArg","_arguments","P","generator","adopt","value","resolve","Promise","reject","fulfilled","step","next","e","rejected","result","done","then","apply","HistoryPlayer","forwardRef","props","ref","url","deviceId","deviceIp","devicePort","channelNum","deviceCode","streamType","type","enableAgent","width","height","captureName","controlBottom","startTime","endTime","onTimeChange","screenshot","showInfo","info","extraButton","controlVisible","undefined","vRef","useRef","totalTime","moment","diff","containerRef","wrapRef","controlsRef","playerRef","useFullscreen","isFullscreen","toggleFullscreen","useSetState","play","error","loading","id","guidGenerator","volume","currentTime","progress","progress2","controls","progressVisible","speedVisible","state","setState","useImperativeHandle","seekTo","time","player","current","useEffect","container","clearInterval","setTimeout","API","getToken","token","localStorage","setItem","Player","live","playBack","format","TimeFormat","params","i","setInterval","add","unix","Math","floor","onTimeUpdate","_currentTime","speed","destroy","endProgress","useDebounce","wait","handleCapture","capture","stopPropagation","handleFullScreen","resize","handleSlider","handlePause","pause","handleResume","resume","_jsxs","Object","assign","className","style","children","_jsx","LoadingState","InfoPanel","bottom","opacity","PauseIcon","onClick","PlayIcon","_Fragment","Slider","disabled","tipFormatter","onChange","Space","size","align","VolumeControl","defaultValue","SpeedControl","CaptureIcon","ExitFullScreenIcon","FullScreenIcon","displayName"],"sources":["history-player/index.js"],"sourcesContent":["var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nimport { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { forwardRef, useEffect, useImperativeHandle, useRef } from 'react';\nimport { InfoPanel, LoadingState, SpeedControl, VolumeControl } from '../controls';\nimport API from '../icc/api';\nimport { CaptureIcon, ExitFullScreenIcon, FullScreenIcon, PauseIcon, PlayIcon } from '../icons';\nimport Player from '../player';\nimport { TimeFormat, guidGenerator } from '../utils';\nimport { useDebounce, useFullscreen, useSetState } from 'ahooks';\n// import { Slider, Space } from 'antd';\nimport Slider from 'antd/lib/slider';\nimport Space from 'antd/lib/space';\nimport moment from 'moment';\nexport const HistoryPlayer = forwardRef((props, ref) => {\n const { url, deviceId, deviceIp, devicePort, channelNum, deviceCode, streamType, type, enableAgent, width = '100%', height = '100%', captureName, controlBottom = 0, startTime, endTime, onTimeChange, screenshot, showInfo = false, info = [], extraButton, controlVisible = undefined, } = props;\n const vRef = useRef(null);\n const totalTime = moment(endTime).diff(moment(startTime), 'seconds');\n const containerRef = useRef(null);\n const wrapRef = useRef(null);\n const controlsRef = useRef(null);\n const playerRef = useRef();\n const [isFullscreen, { toggleFullscreen }] = useFullscreen(wrapRef);\n const [state, setState] = useSetState({\n play: false,\n error: false,\n loading: false,\n id: 'vtx_hk_player_' + guidGenerator(),\n volume: 0,\n currentTime: '',\n progress: 0,\n progress2: 0,\n controls: {\n progress: true,\n },\n progressVisible: true,\n speedVisible: true,\n });\n useImperativeHandle(ref, () => {\n return {\n seekTo: (time) => {\n const player = playerRef.current;\n if (player) {\n const currentTime = moment(time).diff(moment(startTime), 'seconds');\n return player.seekTo(currentTime);\n }\n else {\n return Promise.reject();\n }\n },\n };\n });\n useEffect(() => {\n const container = containerRef.current;\n if (vRef.current) {\n clearInterval(vRef.current);\n vRef.current = null;\n }\n if (!url || !container)\n return;\n let player = null;\n (() => __awaiter(void 0, void 0, void 0, function* () {\n if (type === 'bd') {\n yield new Promise((resolve) => {\n setTimeout(() => resolve(''), 2000);\n });\n }\n // 如果是icc_ws类型,需要获取token\n if (type === 'icc_ws') {\n const token = yield API.getToken({\n deviceId,\n });\n localStorage.setItem('accessToken', token);\n }\n player = yield new Player({\n url,\n devicePort,\n deviceIp,\n channelNum,\n deviceCode,\n deviceId,\n streamType,\n enableAgent,\n container,\n live: false,\n startTime,\n endTime,\n type,\n });\n playerRef.current = player;\n yield setState({\n loading: true,\n error: false,\n controls: { progress: player.type === 'hk_ws' || player.type === 'hkcar_ws' },\n progressVisible: player.type !== 'bd',\n speedVisible: player.type !== 'bd',\n });\n player\n .playBack()\n .then(() => {\n setState({\n play: true,\n currentTime: moment(startTime).format(TimeFormat.params),\n });\n let i = 1;\n vRef.current = setInterval(() => {\n // 当时间大于等于结束时间时重置\n if (moment(startTime).add(i, 's').unix() >= moment(endTime).unix()) {\n clearInterval(vRef.current);\n vRef.current = null;\n setState({\n currentTime: '',\n progress: 0,\n });\n }\n else {\n i++;\n if (!state.loading) {\n setState({\n currentTime: moment(startTime)\n .add(i, 's')\n .format(TimeFormat.params),\n progress: Math.floor((i / totalTime) * 100),\n });\n }\n }\n }, 1000);\n })\n .catch(() => setState({ error: true }))\n .finally(() => setState({ loading: false }));\n player.onTimeUpdate((_currentTime, speed) => {\n if (!state.loading) {\n setState({\n // currentTime: Math.floor(currentTime),\n // progress: Math.floor((currentTime / totalTime) * 100),\n speed,\n });\n }\n });\n }))();\n return () => {\n player.destroy();\n setState({ error: false, loading: false, play: false });\n if (vRef.current) {\n clearInterval(vRef.current);\n vRef.current = null;\n }\n };\n }, [url, startTime, endTime]);\n useEffect(() => {\n if (!state.loading) {\n onTimeChange &&\n onTimeChange(state.currentTime ? moment(state.currentTime).format(TimeFormat.params) : '', state.speed);\n }\n }, [state.currentTime, state.speed]);\n const endProgress = useDebounce(state.progress2, { wait: 500 });\n useEffect(() => {\n const currentTime = Math.floor((totalTime * endProgress) / 100);\n const player = playerRef.current;\n player === null || player === void 0 ? void 0 : player.seekTo(currentTime);\n setState({\n progress: endProgress,\n });\n }, [endProgress]);\n /** 截图方法 */\n const handleCapture = (e) => {\n const player = playerRef.current;\n player && player.capture(captureName, screenshot);\n e.stopPropagation();\n };\n /** 全屏方法 */\n const handleFullScreen = (e) => {\n toggleFullscreen();\n const player = playerRef.current;\n player && player.resize();\n e.stopPropagation();\n };\n /** 进度条控制器 */\n const handleSlider = (value) => {\n if (vRef.current) {\n clearInterval(vRef.current);\n vRef.current = null;\n }\n const currentTime = Math.floor((totalTime * value) / 100);\n setState({\n progress2: value,\n currentTime: moment(state.currentTime)\n .add(currentTime, 'seconds')\n .format(TimeFormat.params),\n });\n let i = 1;\n vRef.current = setInterval(() => {\n if (moment(startTime).unix() + i + currentTime >= moment(endTime).unix()) {\n clearInterval(vRef.current);\n vRef.current = null;\n setState({\n currentTime: '',\n progress: 0,\n });\n }\n else if (!state.loading) {\n setState({\n currentTime: moment(startTime)\n .add(i + currentTime, 's')\n .format(TimeFormat.params),\n progress: Math.floor(((i + currentTime) / totalTime) * 100),\n });\n i++;\n }\n }, 1000);\n };\n /** 暂停方法 */\n const handlePause = () => {\n const player = playerRef.current;\n player === null || player === void 0 ? void 0 : player.pause(() => {\n setState({ play: false });\n });\n if (vRef.current) {\n clearInterval(vRef.current);\n vRef.current = null;\n }\n };\n /** 恢复播放方法 */\n const handleResume = () => {\n const player = playerRef.current;\n player === null || player === void 0 ? void 0 : player.resume(() => {\n setState({ play: true });\n });\n if (vRef.current) {\n clearInterval(vRef.current);\n vRef.current = null;\n }\n let i = 2;\n vRef.current = setInterval(() => {\n if (moment(state.currentTime).unix() + i >= moment(endTime).unix()) {\n clearInterval(vRef.current);\n vRef.current = null;\n setState({\n currentTime: '',\n progress: 0,\n });\n }\n if (!state.loading) {\n setState({\n currentTime: moment(state.currentTime).add(i, 's').format(TimeFormat.params),\n progress: Math.floor(((i + moment(state.currentTime).unix()) / totalTime) * 100),\n });\n i++;\n }\n }, 1000);\n };\n return (_jsxs(\"div\", Object.assign({ className: \"vtx-history-player\", ref: wrapRef, style: { width, height } }, { children: [_jsx(\"div\", { ref: containerRef, style: { height: '100%', width: '100%' }, id: state.id }), state.loading && _jsx(LoadingState, {}), _jsx(InfoPanel, { showInfo: showInfo, info: info }), _jsxs(\"div\", Object.assign({ className: \"controls\", ref: controlsRef, style: { bottom: controlBottom, opacity: controlVisible ? 1 : undefined } }, { children: [state.play ? (_jsx(PauseIcon, { onClick: handlePause })) : (_jsx(PlayIcon, { onClick: handleResume })), state.progressVisible && (_jsxs(_Fragment, { children: [_jsxs(\"div\", Object.assign({ className: \"time\" }, { children: [_jsx(\"span\", Object.assign({ className: \"current\" }, { children: state.currentTime\n ? moment(state.currentTime).format('HH:mm:ss')\n : '' })), _jsxs(\"span\", Object.assign({ className: \"total\" }, { children: [\"/\", moment(endTime).format('HH:mm:ss')] }))] })), _jsx(\"div\", Object.assign({ className: \"slider\" }, { children: _jsx(Slider, { disabled: !state.controls.progress, tipFormatter: null, onChange: handleSlider, value: state.progress }) }))] })), _jsxs(Space, Object.assign({ className: \"right\", size: 12, align: \"center\" }, { children: [_jsx(VolumeControl, { player: playerRef.current, defaultValue: 0, container: controlsRef.current }), state.speedVisible && (_jsx(SpeedControl, { player: playerRef.current, container: controlsRef.current })), !!screenshot && _jsx(CaptureIcon, { onClick: handleCapture }), extraButton ? extraButton : null, isFullscreen ? (_jsx(ExitFullScreenIcon, { onClick: handleFullScreen })) : (_jsx(FullScreenIcon, { onClick: handleFullScreen }))] }))] }))] })));\n});\nHistoryPlayer.displayName = 'HistoryPlayer';\nexport default HistoryPlayer;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["__awaiter","thisArg","_arguments","P","generator","adopt","value","resolve","Promise","reject","fulfilled","step","next","e","rejected","result","done","then","apply","HistoryPlayer","forwardRef","props","ref","url","deviceId","deviceIp","devicePort","channelNum","deviceCode","streamType","type","enableAgent","width","height","captureName","controlBottom","startTime","endTime","onTimeChange","screenshot","showInfo","info","extraButton","controlVisible","undefined","vRef","useRef","totalTime","moment","diff","containerRef","wrapRef","controlsRef","playerRef","useFullscreen","isFullscreen","toggleFullscreen","useSetState","play","error","loading","id","guidGenerator","volume","currentTime","progress","progress2","controls","progressVisible","speedVisible","state","setState","useImperativeHandle","seekTo","time","player","current","useEffect","container","clearInterval","setTimeout","API","getToken","token","localStorage","setItem","Player","live","playBack","format","TimeFormat","params","i","setInterval","add","unix","Math","floor","onTimeUpdate","_currentTime","speed","destroy","endProgress","useDebounce","wait","handleCapture","capture","stopPropagation","handleFullScreen","resize","handleSlider","handlePause","pause","handleResume","resume","_jsxs","Object","assign","className","style","children","_jsx","LoadingState","InfoPanel","bottom","opacity","PauseIcon","onClick","PlayIcon","_Fragment","Slider","disabled","tipFormatter","onChange","Space","size","align","VolumeControl","defaultValue","SpeedControl","CaptureIcon","ExitFullScreenIcon","FullScreenIcon","displayName"],"sources":["history-player/index.js"],"sourcesContent":["var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nimport { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { forwardRef, useEffect, useImperativeHandle, useRef } from 'react';\nimport { InfoPanel, LoadingState, SpeedControl, VolumeControl } from '../controls';\nimport API from '../icc/api';\nimport { CaptureIcon, ExitFullScreenIcon, FullScreenIcon, PauseIcon, PlayIcon } from '../icons';\nimport Player from '../player';\nimport { TimeFormat, guidGenerator } from '../utils';\nimport { useDebounce, useFullscreen, useSetState } from 'ahooks';\n// import { Slider, Space } from 'antd';\nimport Slider from 'antd/lib/slider';\nimport Space from 'antd/lib/space';\nimport moment from 'moment';\nexport const HistoryPlayer = forwardRef((props, ref) => {\n const { url, deviceId, deviceIp, devicePort, channelNum, deviceCode, streamType, type, enableAgent, width = '100%', height = '100%', captureName, controlBottom = 0, startTime, endTime, onTimeChange, screenshot, showInfo = false, info = [], extraButton, controlVisible = undefined, } = props;\n const vRef = useRef(null);\n const totalTime = moment(endTime).diff(moment(startTime), 'seconds');\n const containerRef = useRef(null);\n const wrapRef = useRef(null);\n const controlsRef = useRef(null);\n const playerRef = useRef();\n const [isFullscreen, { toggleFullscreen }] = useFullscreen(wrapRef);\n const [state, setState] = useSetState({\n play: false,\n error: false,\n loading: false,\n id: 'vtx_hk_player_' + guidGenerator(),\n volume: 0,\n currentTime: '',\n progress: 0,\n progress2: 0,\n controls: {\n progress: true,\n },\n progressVisible: true,\n speedVisible: true,\n });\n useImperativeHandle(ref, () => {\n return {\n seekTo: (time) => {\n const player = playerRef.current;\n if (player) {\n const currentTime = moment(time).diff(moment(startTime), 'seconds');\n return player.seekTo(currentTime);\n }\n else {\n return Promise.reject();\n }\n },\n };\n });\n useEffect(() => {\n const container = containerRef.current;\n if (vRef.current) {\n clearInterval(vRef.current);\n vRef.current = null;\n }\n if (!url || !container)\n return;\n let player = null;\n (() => __awaiter(void 0, void 0, void 0, function* () {\n if (type === 'bd') {\n yield new Promise((resolve) => {\n setTimeout(() => resolve(''), 2000);\n });\n }\n // 如果是icc_ws类型,需要获取token\n if (type === 'icc_ws') {\n const token = yield API.getToken({\n deviceId,\n });\n localStorage.setItem('accessToken', token);\n }\n player = yield new Player({\n url,\n devicePort,\n deviceIp,\n channelNum,\n deviceCode,\n deviceId,\n streamType,\n enableAgent,\n container,\n live: false,\n startTime,\n endTime,\n type,\n });\n playerRef.current = player;\n yield setState({\n loading: true,\n error: false,\n controls: { progress: player.type === 'hk_ws' || player.type === 'hkcar_ws' },\n progressVisible: player.type !== 'bd',\n speedVisible: player.type !== 'bd',\n });\n player\n .playBack()\n .then(() => {\n setState({\n play: true,\n currentTime: moment(startTime).format(TimeFormat.params),\n });\n let i = 1;\n vRef.current = setInterval(() => {\n // 当时间大于等于结束时间时重置\n if (moment(startTime).add(i, 's').unix() >= moment(endTime).unix()) {\n clearInterval(vRef.current);\n vRef.current = null;\n setState({\n currentTime: '',\n progress: 0,\n });\n }\n else {\n i++;\n if (!state.loading) {\n setState({\n currentTime: moment(startTime)\n .add(i, 's')\n .format(TimeFormat.params),\n progress: Math.floor((i / totalTime) * 100),\n });\n }\n }\n }, 1000);\n })\n .catch(() => setState({ error: true }))\n .finally(() => setState({ loading: false }));\n player.onTimeUpdate((_currentTime, speed) => {\n if (!state.loading) {\n setState({\n // currentTime: Math.floor(currentTime),\n // progress: Math.floor((currentTime / totalTime) * 100),\n speed,\n });\n }\n });\n }))();\n return () => {\n player.destroy();\n setState({ error: false, loading: false, play: false });\n if (vRef.current) {\n clearInterval(vRef.current);\n vRef.current = null;\n }\n };\n }, [url, startTime, endTime]);\n useEffect(() => {\n if (!state.loading) {\n onTimeChange &&\n onTimeChange(state.currentTime ? moment(state.currentTime).format(TimeFormat.params) : '', state.speed);\n }\n }, [state.currentTime, state.speed]);\n const endProgress = useDebounce(state.progress2, { wait: 500 });\n useEffect(() => {\n const currentTime = Math.floor((totalTime * endProgress) / 100);\n const player = playerRef.current;\n player === null || player === void 0 ? void 0 : player.seekTo(currentTime);\n setState({\n progress: endProgress,\n });\n }, [endProgress]);\n /** 截图方法 */\n const handleCapture = (e) => {\n const player = playerRef.current;\n player && player.capture(captureName, screenshot);\n e.stopPropagation();\n };\n /** 全屏方法 */\n const handleFullScreen = (e) => {\n toggleFullscreen();\n const player = playerRef.current;\n player && player.resize();\n e.stopPropagation();\n };\n /** 进度条控制器 */\n const handleSlider = (value) => {\n if (vRef.current) {\n clearInterval(vRef.current);\n vRef.current = null;\n }\n const currentTime = Math.floor((totalTime * value) / 100);\n setState({\n progress2: value,\n currentTime: moment(state.currentTime)\n .add(currentTime, 'seconds')\n .format(TimeFormat.params),\n });\n let i = 1;\n vRef.current = setInterval(() => {\n if (moment(startTime).unix() + i + currentTime >= moment(endTime).unix()) {\n clearInterval(vRef.current);\n vRef.current = null;\n setState({\n currentTime: '',\n progress: 0,\n });\n }\n else if (!state.loading) {\n setState({\n currentTime: moment(startTime)\n .add(i + currentTime, 's')\n .format(TimeFormat.params),\n progress: Math.floor(((i + currentTime) / totalTime) * 100),\n });\n i++;\n }\n }, 1000);\n };\n /** 暂停方法 */\n const handlePause = () => {\n const player = playerRef.current;\n player === null || player === void 0 ? void 0 : player.pause(() => {\n setState({ play: false });\n });\n if (vRef.current) {\n clearInterval(vRef.current);\n vRef.current = null;\n }\n };\n /** 恢复播放方法 */\n const handleResume = () => {\n const player = playerRef.current;\n player === null || player === void 0 ? void 0 : player.resume(() => {\n setState({ play: true });\n });\n if (vRef.current) {\n clearInterval(vRef.current);\n vRef.current = null;\n }\n let i = 2;\n vRef.current = setInterval(() => {\n if (moment(state.currentTime).unix() + i >= moment(endTime).unix()) {\n clearInterval(vRef.current);\n vRef.current = null;\n setState({\n currentTime: '',\n progress: 0,\n });\n }\n if (!state.loading) {\n setState({\n currentTime: moment(state.currentTime).add(i, 's').format(TimeFormat.params),\n progress: Math.floor(((i + moment(state.currentTime).unix()) / totalTime) * 100),\n });\n i++;\n }\n }, 1000);\n };\n return (_jsxs(\"div\", Object.assign({ className: \"vtx-history-player\", ref: wrapRef, style: { width, height } }, { children: [_jsx(\"div\", { ref: containerRef, style: { height: '100%', width: '100%' }, id: state.id }), state.loading && _jsx(LoadingState, {}), _jsx(InfoPanel, { showInfo: showInfo, info: info }), _jsxs(\"div\", Object.assign({ className: \"controls\", ref: controlsRef, style: { bottom: controlBottom, opacity: controlVisible ? 1 : undefined } }, { children: [state.play ? (_jsx(PauseIcon, { onClick: handlePause })) : (_jsx(PlayIcon, { onClick: handleResume })), state.progressVisible && (_jsxs(_Fragment, { children: [_jsxs(\"div\", Object.assign({ className: \"time\" }, { children: [_jsx(\"span\", Object.assign({ className: \"current\" }, { children: state.currentTime\n ? moment(state.currentTime).format('HH:mm:ss')\n : '-' })), _jsxs(\"span\", Object.assign({ className: \"total\" }, { children: [\"/\", moment(endTime).format('HH:mm:ss')] }))] })), _jsx(\"div\", Object.assign({ className: \"slider\" }, { children: _jsx(Slider, { disabled: !state.controls.progress, tipFormatter: null, onChange: handleSlider, value: state.progress }) }))] })), _jsxs(Space, Object.assign({ className: \"right\", size: 12, align: \"center\" }, { children: [_jsx(VolumeControl, { player: playerRef.current, defaultValue: 0, container: controlsRef.current }), state.speedVisible && (_jsx(SpeedControl, { player: playerRef.current, container: controlsRef.current })), !!screenshot && _jsx(CaptureIcon, { onClick: handleCapture }), extraButton ? extraButton : null, isFullscreen ? (_jsx(ExitFullScreenIcon, { onClick: handleFullScreen })) : (_jsx(FullScreenIcon, { onClick: handleFullScreen }))] }))] }))] })));\n});\nHistoryPlayer.displayName = 'HistoryPlayer';\nexport default HistoryPlayer;\n"],"mappings":"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"}
@@ -0,0 +1,79 @@
1
+ export default PlayerManager;
2
+ declare class PlayerManager {
3
+ constructor(opt: any);
4
+ el: any;
5
+ url: any;
6
+ realPlayer: any;
7
+ recordPlayer: any;
8
+ player: any;
9
+ type: any;
10
+ playNum: number;
11
+ playIndex: number;
12
+ dp: any;
13
+ initPlayer(): void;
14
+ /**
15
+ * 播放实时预览视频
16
+ * @param opt.streamType: {Number|String} 选填,码流类型,不填默认播放辅码流1,若不存在辅码流1,则自动切换到主码流 1-主码流 2-辅码流1 3-辅码流2
17
+ * @param opt.selectIndex: {Number} 选填,指定从哪个窗口开始播放。不填默认从选中的窗口开始播放
18
+ */
19
+ playRealVideo(): void;
20
+ /**
21
+ * 播放录像回放
22
+ * @param opt.channelList {Array<Object>} 通道集合 必填
23
+ * @param opt.startTime {String|Number} 开始时间 必选 timestamp到秒
24
+ * @param opt.endTime {String|Number} 结束时间 必选 timestamp到秒
25
+ * @param opt.recordSource {String|Number} 录像来源 必选 2表示设备录像 3表示中心录像
26
+ * @param opt.streamType {String|Number} 码流类型 可选
27
+ * @param opt.recordType {String|Number} 录像类型 可选
28
+ */
29
+ playRecordVideo(opt: any): void;
30
+ setVideoFrame(viewSize: any): void;
31
+ stopVideo(index: any): void;
32
+ /**
33
+ * 录像暂停
34
+ * 只有正在播放的录像调用才有效
35
+ */
36
+ pause(): void;
37
+ /**
38
+ * 录像暂停后播放
39
+ * 只有暂停后的录像调用才有效
40
+ */
41
+ play(): void;
42
+ /**
43
+ * 倍速播放
44
+ * @param {number} speed 速率 0.125 0.25 0.5 1 2 4 8 共7种速率
45
+ */
46
+ playSpeed(speed: number): void;
47
+ /**
48
+ * 关闭播放器
49
+ * @param {number} index 可选,关闭指定索引的窗口的播放器,不传则表示关闭所有播放器
50
+ */
51
+ close(index: number): void;
52
+ resize(): void;
53
+ /**
54
+ * 设置全屏
55
+ */
56
+ setFullScreen(): void;
57
+ /**
58
+ * 设置窗口自适应还是拉伸
59
+ * @param {string} playerAdapter selfAdaption 自适应 | stretching 拉伸
60
+ */
61
+ setPlayerAdapter(playerAdapter: string): void;
62
+ /**
63
+ * 控制视频播放器显示的路数: 1 4 9 16 25,不会超过最大显示路数
64
+ * @param {number} number
65
+ */
66
+ setPlayerNum(number: number): void;
67
+ /**
68
+ * 设置选中的播放器的索引
69
+ * @param {number} index
70
+ */
71
+ setSelectIndex(index: number): void;
72
+ /**
73
+ * 录像跳转播放
74
+ * @param {number} time HH:mm:ss格式
75
+ */
76
+ jumpPlayByTime(time: number): void;
77
+ __receiveMessageFromWSPlayer(method: any, data: any): void;
78
+ currentChannelId: any;
79
+ }
@@ -0,0 +1,283 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+
8
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
9
+
10
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
11
+
12
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
13
+
14
+ var PlayerManager = /*#__PURE__*/function () {
15
+ function PlayerManager(opt) {
16
+ _classCallCheck(this, PlayerManager);
17
+
18
+ // 播放器所在的容器ID
19
+ this.el = opt.el;
20
+ this.url = opt.url; // 实时预览播放器
21
+
22
+ this.realPlayer = null; // 录像回放播放器
23
+
24
+ this.recordPlayer = null;
25
+ this.player = null; // 实时预览还是录像回放播放器
26
+
27
+ this.type = opt.type; // 窗口的数量
28
+
29
+ this.playNum = 1; // 当前选中的窗口的索引
30
+
31
+ this.playIndex = 0;
32
+ this.dp = null; // this.initPlayer();
33
+ } //初始化视频插件
34
+
35
+
36
+ _createClass(PlayerManager, [{
37
+ key: "initPlayer",
38
+ value: function initPlayer() {// var param = {
39
+ // simNum: 40357902315,
40
+ // channelId: 0,
41
+ // totalChannel: 1,
42
+ // chanelNumInfo: '1,通道1|2,通道2',
43
+ // avDataType: 0,
44
+ // bitStreamType: 1,
45
+ // playerId: this.el,
46
+ // };
47
+ // var _srvVideoUrl = location.origin + '/TopJtbVideo/VideoCmd/';
48
+ // API.postData(_srvVideoUrl + 'RealTimeAVTransRequest', param, callback, error);
49
+ }
50
+ /**
51
+ * 播放实时预览视频
52
+ * @param opt.streamType: {Number|String} 选填,码流类型,不填默认播放辅码流1,若不存在辅码流1,则自动切换到主码流 1-主码流 2-辅码流1 3-辅码流2
53
+ * @param opt.selectIndex: {Number} 选填,指定从哪个窗口开始播放。不填默认从选中的窗口开始播放
54
+ */
55
+
56
+ }, {
57
+ key: "playRealVideo",
58
+ value: function playRealVideo() {
59
+ console.log(window);
60
+ window.ConfirmConn(this.el, 40357902315, 0, '47.99.88.129', '18020', 1, {
61
+ srcType: 'ws-flv'
62
+ });
63
+ }
64
+ /**
65
+ * 播放录像回放
66
+ * @param opt.channelList {Array<Object>} 通道集合 必填
67
+ * @param opt.startTime {String|Number} 开始时间 必选 timestamp到秒
68
+ * @param opt.endTime {String|Number} 结束时间 必选 timestamp到秒
69
+ * @param opt.recordSource {String|Number} 录像来源 必选 2表示设备录像 3表示中心录像
70
+ * @param opt.streamType {String|Number} 码流类型 可选
71
+ * @param opt.recordType {String|Number} 录像类型 可选
72
+ */
73
+ // channelList: [{
74
+ // id: channelCode, // {String} 通道编码 -- 用于回放,必填
75
+ // }]
76
+
77
+ }, {
78
+ key: "playRecordVideo",
79
+ value: function playRecordVideo(opt) {
80
+ this.recordPlayer && this.recordPlayer.getRecordList(opt);
81
+ }
82
+ }, {
83
+ key: "setVideoFrame",
84
+ value: function setVideoFrame(viewSize) {
85
+ this.winDom.find('video').each(function (i, obj) {
86
+ var _obj = $(obj);
87
+
88
+ _obj.css('width', '100%').css('height', '100%');
89
+
90
+ var width = _obj.width();
91
+
92
+ var height = _obj.height();
93
+
94
+ if (viewSize === '4:3') {
95
+ if (width / height > 4 / 3) {
96
+ _obj.css('width', height * 4 / 3);
97
+ } else {
98
+ _obj.css('height', width * 3 / 4);
99
+ }
100
+ }
101
+
102
+ if (viewSize === '16:9') {
103
+ if (width / height > 16 / 9) {
104
+ _obj.css('width', height * 16 / 9);
105
+ } else {
106
+ _obj.css('height', width * 9 / 16);
107
+ }
108
+ }
109
+ });
110
+ }
111
+ }, {
112
+ key: "stopVideo",
113
+ value: function stopVideo(index) {
114
+ var that = this;
115
+
116
+ if (index >= this.playNum) {
117
+ return;
118
+ } // this.reSetVideo(index)
119
+ // var video = this.playVideos[index];
120
+ // if (video) {
121
+ // if (that.options.isTtx) {
122
+ // video.ttxplayer.stop();
123
+ // video.ttxplayer.setPlayTime(0);
124
+ // } else {
125
+ // video.pause();
126
+ // video.video.currentTime = 0;
127
+ // }
128
+ // try {
129
+ // var url = video.options.video.url;
130
+ // var devidno = url.split('DevIDNO=')[1].split('&')[0];
131
+ // that.timeMap808[devidno] = new Date().getTime();
132
+ // } catch (e) {}
133
+ // }
134
+
135
+ }
136
+ /**
137
+ * 录像暂停
138
+ * 只有正在播放的录像调用才有效
139
+ */
140
+
141
+ }, {
142
+ key: "pause",
143
+ value: function pause() {
144
+ this.player && this.player.toggleVideo(0);
145
+ }
146
+ /**
147
+ * 录像暂停后播放
148
+ * 只有暂停后的录像调用才有效
149
+ */
150
+
151
+ }, {
152
+ key: "play",
153
+ value: function play() {
154
+ this.player && this.player.toggleVideo(0);
155
+ }
156
+ /**
157
+ * 倍速播放
158
+ * @param {number} speed 速率 0.125 0.25 0.5 1 2 4 8 共7种速率
159
+ */
160
+
161
+ }, {
162
+ key: "playSpeed",
163
+ value: function playSpeed(speed) {
164
+ this.recordPlayer && this.recordPlayer.playSpeed(speed);
165
+ }
166
+ /**
167
+ * 关闭播放器
168
+ * @param {number} index 可选,关闭指定索引的窗口的播放器,不传则表示关闭所有播放器
169
+ */
170
+
171
+ }, {
172
+ key: "close",
173
+ value: function close(index) {
174
+ this.player && this.player.reSetVideo(index);
175
+
176
+ if (this.dp) {
177
+ this.dp.ttxplayer.destroy();
178
+ this.dp.destroy();
179
+ }
180
+ }
181
+ }, {
182
+ key: "resize",
183
+ value: function resize() {
184
+ this.player && this.player.setSize();
185
+ }
186
+ /**
187
+ * 设置全屏
188
+ */
189
+
190
+ }, {
191
+ key: "setFullScreen",
192
+ value: function setFullScreen() {
193
+ this.player.fullScreen();
194
+ }
195
+ /**
196
+ * 设置窗口自适应还是拉伸
197
+ * @param {string} playerAdapter selfAdaption 自适应 | stretching 拉伸
198
+ */
199
+
200
+ }, {
201
+ key: "setPlayerAdapter",
202
+ value: function setPlayerAdapter(playerAdapter) {
203
+ this.player.setPlayerAdapter(playerAdapter);
204
+ }
205
+ /**
206
+ * 控制视频播放器显示的路数: 1 4 9 16 25,不会超过最大显示路数
207
+ * @param {number} number
208
+ */
209
+
210
+ }, {
211
+ key: "setPlayerNum",
212
+ value: function setPlayerNum(number) {
213
+ this.player.setPlayerNum(number);
214
+ }
215
+ /**
216
+ * 设置选中的播放器的索引
217
+ * @param {number} index
218
+ */
219
+
220
+ }, {
221
+ key: "setSelectIndex",
222
+ value: function setSelectIndex(index) {
223
+ this.player.setSelectIndex(index);
224
+ }
225
+ /**
226
+ * 录像跳转播放
227
+ * @param {number} time HH:mm:ss格式
228
+ */
229
+
230
+ }, {
231
+ key: "jumpPlayByTime",
232
+ value: function jumpPlayByTime(time) {
233
+ this.player.seekVideo(0, time);
234
+ } // ----------------- 播放器事件 ------------------------
235
+
236
+ }, {
237
+ key: "__receiveMessageFromWSPlayer",
238
+ value: function __receiveMessageFromWSPlayer(method, data) {
239
+ switch (method) {
240
+ // ------------- 公共事件 ---------------------
241
+ case 'selectWindowChanged':
242
+ // 选中的窗口发生改变
243
+ this.currentChannelId = data.channelId;
244
+ this.playIndex = data.playIndex;
245
+ break;
246
+
247
+ case 'windowNumChanged':
248
+ // 播放器显示的路数发生改变
249
+ this.playNum = data;
250
+ break;
251
+
252
+ case 'closeVideo':
253
+ // 视频关闭
254
+ // 点击关闭按钮引发的视频关闭进行提示
255
+ // 切换视频引发的视频关闭不进行提示
256
+ if (!data.changeVideoFlag) {
257
+ console.log("\u7A97\u53E3".concat(data.selectIndex, "\u7684\u89C6\u9891\u5DF2\u5173\u95ED"));
258
+ }
259
+
260
+ break;
261
+
262
+ case 'statusChanged':
263
+ // 视频状态发生改变
264
+ break;
265
+
266
+ case 'errorInfo':
267
+ // 错误信息提示
268
+ // data = {
269
+ // errorCode: xxx,
270
+ // errorMsg: "",
271
+ // channelList: [],
272
+ // }
273
+ break;
274
+ }
275
+ }
276
+ }]);
277
+
278
+ return PlayerManager;
279
+ }();
280
+
281
+ var _default = PlayerManager;
282
+ exports["default"] = _default;
283
+ //# sourceMappingURL=PlayerManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PlayerManager.js","names":["PlayerManager","opt","el","url","realPlayer","recordPlayer","player","type","playNum","playIndex","dp","console","log","window","ConfirmConn","srcType","getRecordList","viewSize","winDom","find","each","i","obj","_obj","$","css","width","height","index","that","toggleVideo","speed","playSpeed","reSetVideo","ttxplayer","destroy","setSize","fullScreen","playerAdapter","setPlayerAdapter","number","setPlayerNum","setSelectIndex","time","seekVideo","method","data","currentChannelId","channelId","changeVideoFlag","selectIndex"],"sources":["new/PlayerManager.js"],"sourcesContent":["class PlayerManager {\n constructor(opt) {\n // 播放器所在的容器ID\n this.el = opt.el;\n this.url = opt.url;\n // 实时预览播放器\n this.realPlayer = null;\n // 录像回放播放器\n this.recordPlayer = null;\n this.player = null;\n // 实时预览还是录像回放播放器\n this.type = opt.type;\n // 窗口的数量\n this.playNum = 1;\n // 当前选中的窗口的索引\n this.playIndex = 0;\n this.dp = null;\n // this.initPlayer();\n }\n //初始化视频插件\n initPlayer() {\n // var param = {\n // simNum: 40357902315,\n // channelId: 0,\n // totalChannel: 1,\n // chanelNumInfo: '1,通道1|2,通道2',\n // avDataType: 0,\n // bitStreamType: 1,\n // playerId: this.el,\n // };\n // var _srvVideoUrl = location.origin + '/TopJtbVideo/VideoCmd/';\n // API.postData(_srvVideoUrl + 'RealTimeAVTransRequest', param, callback, error);\n }\n /**\n * 播放实时预览视频\n * @param opt.streamType: {Number|String} 选填,码流类型,不填默认播放辅码流1,若不存在辅码流1,则自动切换到主码流 1-主码流 2-辅码流1 3-辅码流2\n * @param opt.selectIndex: {Number} 选填,指定从哪个窗口开始播放。不填默认从选中的窗口开始播放\n */\n playRealVideo() {\n console.log(window);\n window.ConfirmConn(this.el, 40357902315, 0, '47.99.88.129', '18020', 1, { srcType: 'ws-flv' });\n }\n /**\n * 播放录像回放\n * @param opt.channelList {Array<Object>} 通道集合 必填\n * @param opt.startTime {String|Number} 开始时间 必选 timestamp到秒\n * @param opt.endTime {String|Number} 结束时间 必选 timestamp到秒\n * @param opt.recordSource {String|Number} 录像来源 必选 2表示设备录像 3表示中心录像\n * @param opt.streamType {String|Number} 码流类型 可选\n * @param opt.recordType {String|Number} 录像类型 可选\n */\n // channelList: [{\n // id: channelCode, // {String} 通道编码 -- 用于回放,必填\n // }]\n playRecordVideo(opt) {\n this.recordPlayer && this.recordPlayer.getRecordList(opt);\n }\n setVideoFrame(viewSize) {\n this.winDom.find('video').each(function (i, obj) {\n var _obj = $(obj);\n _obj.css('width', '100%').css('height', '100%');\n var width = _obj.width();\n var height = _obj.height();\n if (viewSize === '4:3') {\n if (width / height > 4 / 3) {\n _obj.css('width', (height * 4) / 3);\n }\n else {\n _obj.css('height', (width * 3) / 4);\n }\n }\n if (viewSize === '16:9') {\n if (width / height > 16 / 9) {\n _obj.css('width', (height * 16) / 9);\n }\n else {\n _obj.css('height', (width * 9) / 16);\n }\n }\n });\n }\n stopVideo(index) {\n var that = this;\n if (index >= this.playNum) {\n return;\n }\n // this.reSetVideo(index)\n // var video = this.playVideos[index];\n // if (video) {\n // if (that.options.isTtx) {\n // video.ttxplayer.stop();\n // video.ttxplayer.setPlayTime(0);\n // } else {\n // video.pause();\n // video.video.currentTime = 0;\n // }\n // try {\n // var url = video.options.video.url;\n // var devidno = url.split('DevIDNO=')[1].split('&')[0];\n // that.timeMap808[devidno] = new Date().getTime();\n // } catch (e) {}\n // }\n }\n /**\n * 录像暂停\n * 只有正在播放的录像调用才有效\n */\n pause() {\n this.player && this.player.toggleVideo(0);\n }\n /**\n * 录像暂停后播放\n * 只有暂停后的录像调用才有效\n */\n play() {\n this.player && this.player.toggleVideo(0);\n }\n /**\n * 倍速播放\n * @param {number} speed 速率 0.125 0.25 0.5 1 2 4 8 共7种速率\n */\n playSpeed(speed) {\n this.recordPlayer && this.recordPlayer.playSpeed(speed);\n }\n /**\n * 关闭播放器\n * @param {number} index 可选,关闭指定索引的窗口的播放器,不传则表示关闭所有播放器\n */\n close(index) {\n this.player && this.player.reSetVideo(index);\n if (this.dp) {\n this.dp.ttxplayer.destroy();\n this.dp.destroy();\n }\n }\n resize() {\n this.player && this.player.setSize();\n }\n /**\n * 设置全屏\n */\n setFullScreen() {\n this.player.fullScreen();\n }\n /**\n * 设置窗口自适应还是拉伸\n * @param {string} playerAdapter selfAdaption 自适应 | stretching 拉伸\n */\n setPlayerAdapter(playerAdapter) {\n this.player.setPlayerAdapter(playerAdapter);\n }\n /**\n * 控制视频播放器显示的路数: 1 4 9 16 25,不会超过最大显示路数\n * @param {number} number\n */\n setPlayerNum(number) {\n this.player.setPlayerNum(number);\n }\n /**\n * 设置选中的播放器的索引\n * @param {number} index\n */\n setSelectIndex(index) {\n this.player.setSelectIndex(index);\n }\n /**\n * 录像跳转播放\n * @param {number} time HH:mm:ss格式\n */\n jumpPlayByTime(time) {\n this.player.seekVideo(0, time);\n }\n // ----------------- 播放器事件 ------------------------\n __receiveMessageFromWSPlayer(method, data) {\n switch (method) {\n // ------------- 公共事件 ---------------------\n case 'selectWindowChanged': // 选中的窗口发生改变\n this.currentChannelId = data.channelId;\n this.playIndex = data.playIndex;\n break;\n case 'windowNumChanged': // 播放器显示的路数发生改变\n this.playNum = data;\n break;\n case 'closeVideo': // 视频关闭\n // 点击关闭按钮引发的视频关闭进行提示\n // 切换视频引发的视频关闭不进行提示\n if (!data.changeVideoFlag) {\n console.log(`窗口${data.selectIndex}的视频已关闭`);\n }\n break;\n case 'statusChanged': // 视频状态发生改变\n break;\n case 'errorInfo': // 错误信息提示\n // data = {\n // errorCode: xxx,\n // errorMsg: \"\",\n // channelList: [],\n // }\n break;\n }\n }\n}\nexport default PlayerManager;\n"],"mappings":";;;;;;;;;;;;;IAAMA,a;EACF,uBAAYC,GAAZ,EAAiB;IAAA;;IACb;IACA,KAAKC,EAAL,GAAUD,GAAG,CAACC,EAAd;IACA,KAAKC,GAAL,GAAWF,GAAG,CAACE,GAAf,CAHa,CAIb;;IACA,KAAKC,UAAL,GAAkB,IAAlB,CALa,CAMb;;IACA,KAAKC,YAAL,GAAoB,IAApB;IACA,KAAKC,MAAL,GAAc,IAAd,CARa,CASb;;IACA,KAAKC,IAAL,GAAYN,GAAG,CAACM,IAAhB,CAVa,CAWb;;IACA,KAAKC,OAAL,GAAe,CAAf,CAZa,CAab;;IACA,KAAKC,SAAL,GAAiB,CAAjB;IACA,KAAKC,EAAL,GAAU,IAAV,CAfa,CAgBb;EACH,C,CACD;;;;;WACA,sBAAa,CACT;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;IACH;IACD;AACJ;AACA;AACA;AACA;;;;WACI,yBAAgB;MACZC,OAAO,CAACC,GAAR,CAAYC,MAAZ;MACAA,MAAM,CAACC,WAAP,CAAmB,KAAKZ,EAAxB,EAA4B,WAA5B,EAAyC,CAAzC,EAA4C,cAA5C,EAA4D,OAA5D,EAAqE,CAArE,EAAwE;QAAEa,OAAO,EAAE;MAAX,CAAxE;IACH;IACD;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACI;IACA;IACA;;;;WACA,yBAAgBd,GAAhB,EAAqB;MACjB,KAAKI,YAAL,IAAqB,KAAKA,YAAL,CAAkBW,aAAlB,CAAgCf,GAAhC,CAArB;IACH;;;WACD,uBAAcgB,QAAd,EAAwB;MACpB,KAAKC,MAAL,CAAYC,IAAZ,CAAiB,OAAjB,EAA0BC,IAA1B,CAA+B,UAAUC,CAAV,EAAaC,GAAb,EAAkB;QAC7C,IAAIC,IAAI,GAAGC,CAAC,CAACF,GAAD,CAAZ;;QACAC,IAAI,CAACE,GAAL,CAAS,OAAT,EAAkB,MAAlB,EAA0BA,GAA1B,CAA8B,QAA9B,EAAwC,MAAxC;;QACA,IAAIC,KAAK,GAAGH,IAAI,CAACG,KAAL,EAAZ;;QACA,IAAIC,MAAM,GAAGJ,IAAI,CAACI,MAAL,EAAb;;QACA,IAAIV,QAAQ,KAAK,KAAjB,EAAwB;UACpB,IAAIS,KAAK,GAAGC,MAAR,GAAiB,IAAI,CAAzB,EAA4B;YACxBJ,IAAI,CAACE,GAAL,CAAS,OAAT,EAAmBE,MAAM,GAAG,CAAV,GAAe,CAAjC;UACH,CAFD,MAGK;YACDJ,IAAI,CAACE,GAAL,CAAS,QAAT,EAAoBC,KAAK,GAAG,CAAT,GAAc,CAAjC;UACH;QACJ;;QACD,IAAIT,QAAQ,KAAK,MAAjB,EAAyB;UACrB,IAAIS,KAAK,GAAGC,MAAR,GAAiB,KAAK,CAA1B,EAA6B;YACzBJ,IAAI,CAACE,GAAL,CAAS,OAAT,EAAmBE,MAAM,GAAG,EAAV,GAAgB,CAAlC;UACH,CAFD,MAGK;YACDJ,IAAI,CAACE,GAAL,CAAS,QAAT,EAAoBC,KAAK,GAAG,CAAT,GAAc,EAAjC;UACH;QACJ;MACJ,CArBD;IAsBH;;;WACD,mBAAUE,KAAV,EAAiB;MACb,IAAIC,IAAI,GAAG,IAAX;;MACA,IAAID,KAAK,IAAI,KAAKpB,OAAlB,EAA2B;QACvB;MACH,CAJY,CAKb;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;;IACH;IACD;AACJ;AACA;AACA;;;;WACI,iBAAQ;MACJ,KAAKF,MAAL,IAAe,KAAKA,MAAL,CAAYwB,WAAZ,CAAwB,CAAxB,CAAf;IACH;IACD;AACJ;AACA;AACA;;;;WACI,gBAAO;MACH,KAAKxB,MAAL,IAAe,KAAKA,MAAL,CAAYwB,WAAZ,CAAwB,CAAxB,CAAf;IACH;IACD;AACJ;AACA;AACA;;;;WACI,mBAAUC,KAAV,EAAiB;MACb,KAAK1B,YAAL,IAAqB,KAAKA,YAAL,CAAkB2B,SAAlB,CAA4BD,KAA5B,CAArB;IACH;IACD;AACJ;AACA;AACA;;;;WACI,eAAMH,KAAN,EAAa;MACT,KAAKtB,MAAL,IAAe,KAAKA,MAAL,CAAY2B,UAAZ,CAAuBL,KAAvB,CAAf;;MACA,IAAI,KAAKlB,EAAT,EAAa;QACT,KAAKA,EAAL,CAAQwB,SAAR,CAAkBC,OAAlB;QACA,KAAKzB,EAAL,CAAQyB,OAAR;MACH;IACJ;;;WACD,kBAAS;MACL,KAAK7B,MAAL,IAAe,KAAKA,MAAL,CAAY8B,OAAZ,EAAf;IACH;IACD;AACJ;AACA;;;;WACI,yBAAgB;MACZ,KAAK9B,MAAL,CAAY+B,UAAZ;IACH;IACD;AACJ;AACA;AACA;;;;WACI,0BAAiBC,aAAjB,EAAgC;MAC5B,KAAKhC,MAAL,CAAYiC,gBAAZ,CAA6BD,aAA7B;IACH;IACD;AACJ;AACA;AACA;;;;WACI,sBAAaE,MAAb,EAAqB;MACjB,KAAKlC,MAAL,CAAYmC,YAAZ,CAAyBD,MAAzB;IACH;IACD;AACJ;AACA;AACA;;;;WACI,wBAAeZ,KAAf,EAAsB;MAClB,KAAKtB,MAAL,CAAYoC,cAAZ,CAA2Bd,KAA3B;IACH;IACD;AACJ;AACA;AACA;;;;WACI,wBAAee,IAAf,EAAqB;MACjB,KAAKrC,MAAL,CAAYsC,SAAZ,CAAsB,CAAtB,EAAyBD,IAAzB;IACH,C,CACD;;;;WACA,sCAA6BE,MAA7B,EAAqCC,IAArC,EAA2C;MACvC,QAAQD,MAAR;QACI;QACA,KAAK,qBAAL;UAA4B;UACxB,KAAKE,gBAAL,GAAwBD,IAAI,CAACE,SAA7B;UACA,KAAKvC,SAAL,GAAiBqC,IAAI,CAACrC,SAAtB;UACA;;QACJ,KAAK,kBAAL;UAAyB;UACrB,KAAKD,OAAL,GAAesC,IAAf;UACA;;QACJ,KAAK,YAAL;UAAmB;UACf;UACA;UACA,IAAI,CAACA,IAAI,CAACG,eAAV,EAA2B;YACvBtC,OAAO,CAACC,GAAR,uBAAiBkC,IAAI,CAACI,WAAtB;UACH;;UACD;;QACJ,KAAK,eAAL;UAAsB;UAClB;;QACJ,KAAK,WAAL;UAAkB;UACd;UACA;UACA;UACA;UACA;UACA;MAxBR;IA0BH;;;;;;eAEUlD,a"}
@@ -0,0 +1,5 @@
1
+ export default API;
2
+ declare namespace API {
3
+ function postData(url: any, param: any, success: any, error: any, isAsync: any): void;
4
+ function postData(url: any, param: any, success: any, error: any, isAsync: any): void;
5
+ }
package/lib/new/api.js ADDED
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+ // 跟平台相关的业务JS
8
+ var API = {
9
+ postData: function postData(url, param, _success, _error, isAsync) {
10
+ if (isAsync == undefined) isAsync = true;
11
+ $.ajax({
12
+ url: url,
13
+ type: 'post',
14
+ data: param,
15
+ async: isAsync,
16
+ dataType: 'json',
17
+ success: function success(data) {
18
+ if (_success != null && typeof _success == 'function') {
19
+ _success(data);
20
+ }
21
+ },
22
+ error: function error(e) {
23
+ if (_error != null && typeof _error == 'function') {
24
+ _error(e.responseText);
25
+ }
26
+ }
27
+ });
28
+ }
29
+ };
30
+ var _default = API;
31
+ exports["default"] = _default;
32
+ //# sourceMappingURL=api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.js","names":["API","postData","url","param","success","error","isAsync","undefined","$","ajax","type","data","async","dataType","e","responseText"],"sources":["new/api.js"],"sourcesContent":["// 跟平台相关的业务JS\nconst API = {\n postData(url, param, success, error, isAsync) {\n if (isAsync == undefined)\n isAsync = true;\n $.ajax({\n url: url,\n type: 'post',\n data: param,\n async: isAsync,\n dataType: 'json',\n success: function (data) {\n if (success != null && typeof success == 'function') {\n success(data);\n }\n },\n error: function (e) {\n if (error != null && typeof error == 'function') {\n error(e.responseText);\n }\n },\n });\n },\n};\nexport default API;\n"],"mappings":";;;;;;AAAA;AACA,IAAMA,GAAG,GAAG;EACRC,QADQ,oBACCC,GADD,EACMC,KADN,EACaC,QADb,EACsBC,MADtB,EAC6BC,OAD7B,EACsC;IAC1C,IAAIA,OAAO,IAAIC,SAAf,EACID,OAAO,GAAG,IAAV;IACJE,CAAC,CAACC,IAAF,CAAO;MACHP,GAAG,EAAEA,GADF;MAEHQ,IAAI,EAAE,MAFH;MAGHC,IAAI,EAAER,KAHH;MAIHS,KAAK,EAAEN,OAJJ;MAKHO,QAAQ,EAAE,MALP;MAMHT,OAAO,EAAE,iBAAUO,IAAV,EAAgB;QACrB,IAAIP,QAAO,IAAI,IAAX,IAAmB,OAAOA,QAAP,IAAkB,UAAzC,EAAqD;UACjDA,QAAO,CAACO,IAAD,CAAP;QACH;MACJ,CAVE;MAWHN,KAAK,EAAE,eAAUS,CAAV,EAAa;QAChB,IAAIT,MAAK,IAAI,IAAT,IAAiB,OAAOA,MAAP,IAAgB,UAArC,EAAiD;UAC7CA,MAAK,CAACS,CAAC,CAACC,YAAH,CAAL;QACH;MACJ;IAfE,CAAP;EAiBH;AArBO,CAAZ;eAuBef,G"}
@@ -6,7 +6,7 @@ declare global {
6
6
  }
7
7
  }
8
8
  /** 视频流格式 */
9
- export declare type VideoType = 'flv' | 'hls' | 'hk_ws' | 'hkcar_ws' | 'icc_ws' | 'webrtc' | 'h264' | 'bd' | string;
9
+ export declare type VideoType = 'flv' | 'hls' | 'hk_ws' | 'hkcar_ws' | 'icc_ws' | 'webrtc' | 'h264' | 'bd' | 'mp4' | string;
10
10
  interface ConstructorParams {
11
11
  url?: string;
12
12
  /** 设备id */
@@ -72,7 +72,7 @@ var Player = /*#__PURE__*/function () {
72
72
  function Player(params) {
73
73
  _classCallCheck(this, Player);
74
74
 
75
- var _a, _b;
75
+ var _a, _b, _c;
76
76
 
77
77
  this.player = null;
78
78
  /** 之前的视频播放速度,用于处理海康音量控制 */
@@ -213,16 +213,23 @@ var Player = /*#__PURE__*/function () {
213
213
  }
214
214
 
215
215
  if (this.type === 'bd') {
216
- // const path = './bd/';
217
- // loadJs(path + 'js/flv.min.js');
218
- // loadJs(path + 'js/DPlayer.min.js');
219
- // loadJs(path + 'js/cmsv6player.min.js');
220
216
  this.player = new _PlayerManager["default"]({
221
217
  el: container.id,
222
218
  type: live,
223
219
  url: this.url
224
220
  });
225
221
  }
222
+
223
+ if (this.type === 'mp4') {
224
+ var _dd3 = document.getElementById(container.id);
225
+
226
+ ((_c = _dd3 === null || _dd3 === void 0 ? void 0 : _dd3.children) === null || _c === void 0 ? void 0 : _c.length) > 0 && _dd3.removeChild(_dd3.firstChild);
227
+ this.video.src = this.url;
228
+ this.video.autoplay = true;
229
+ var _id2 = 'mp4';
230
+ this.video.id = _id2;
231
+ container.appendChild(this.video);
232
+ }
226
233
  }
227
234
  /** 播放 */
228
235
 
@@ -275,6 +282,9 @@ var Player = /*#__PURE__*/function () {
275
282
  _player4.playRealVideo();
276
283
  }
277
284
 
285
+ if (this.type === 'mp4') {//
286
+ }
287
+
278
288
  return Promise.resolve();
279
289
  }
280
290
  /** 回放 */
@@ -316,6 +326,8 @@ var Player = /*#__PURE__*/function () {
316
326
  }, {
317
327
  key: "destroy",
318
328
  value: function destroy() {
329
+ var _a;
330
+
319
331
  if (this.type === 'flv') {
320
332
  var player = this.player;
321
333
  player === null || player === void 0 ? void 0 : player.destroy();
@@ -346,9 +358,9 @@ var Player = /*#__PURE__*/function () {
346
358
 
347
359
  _player8.JS_DestroyWorker();
348
360
 
349
- var _dd3 = document.getElementById(this.containerId);
361
+ var _dd4 = document.getElementById(this.containerId);
350
362
 
351
- (_dd3 === null || _dd3 === void 0 ? void 0 : _dd3.childNodes) && _dd3.childNodes[0] && _dd3.removeChild(_dd3.childNodes[0]);
363
+ (_dd4 === null || _dd4 === void 0 ? void 0 : _dd4.childNodes) && _dd4.childNodes[0] && _dd4.removeChild(_dd4.childNodes[0]);
352
364
  }
353
365
 
354
366
  if (this.type === 'icc_ws') {
@@ -374,6 +386,16 @@ var Player = /*#__PURE__*/function () {
374
386
 
375
387
  _player12.close(0);
376
388
  }
389
+
390
+ if (this.type === 'mp4') {
391
+ // const player = this.player as BDPlayerManager;
392
+ // player.close(0);
393
+ this.video = null;
394
+
395
+ var _dd5 = document.getElementById(this.containerId);
396
+
397
+ ((_a = _dd5 === null || _dd5 === void 0 ? void 0 : _dd5.children) === null || _a === void 0 ? void 0 : _a.length) > 0 && _dd5.removeChild(_dd5.firstChild);
398
+ }
377
399
  }
378
400
  /** 截图 */
379
401
 
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["__awaiter","thisArg","_arguments","P","generator","adopt","value","resolve","Promise","reject","fulfilled","step","next","e","rejected","result","done","then","apply","Player","params","_a","_b","player","preSpeed","containerId","windowIndex","url","channelNum","deviceCode","enableAgent","container","live","type","startTime","endTime","streamType","deviceIp","devicePort","id","playerParams","getPlayerParams","video","document","createElement","className","muted","FlvJs","isSupported","appendChild","createPlayer","isLive","attachMediaElement","load","Hls","loadSource","attachMedia","window","JSPlugin","szId","szBasePath","iMaxSplit","iCurrentSplit","wrapDiv","getElementById","getElementsByTagName","preload","startsWith","JSPluginHkCar","iWidth","clientWidth","iHeight","clientHeight","oStyle","border","borderSelect","background","dd","hasChildNodes","removeChild","firstChild","PlayerManager","ip","location","protocol","el","maxNum","num","children","length","autoplay","Date","now","WebrtcPlayerManager","H264PlayerManager","BDPlayerManager","play","JS_Play","playURL","mode","playRealVideo","channelList","isOnline","Number","getHKTimeString","playRecordVideo","moment","format","recordSource","destroy","remove","JS_Stop","childNodes","JS_DestroyWorker","close","captureName","callback","time","name","JS_CapturePicture","res","DPlayer","dp","canvas","querySelector","toBlob","blob","URL","createObjectURL","Capture","setTimeout","JS_Resize","setPlayerAdapter","volume","iCurrentSoundWnd","JS_OpenSound","JS_SetVolume","ttxplayer","enableAudio","openAudio","setVolume","speed","JS_Slow","JS_Fast","playSpeed","playbackRate","addEventListener","currentTime","seekTime","diff","JS_SetWindowControlCallback","call","StreamEnd","_c","add","JS_Seek","jumpPlayByTime","valueOf","JS_Pause","pause","JS_Resume","JS_StartTalk","JS_StopTalk","width","videoWidth","height","videoHeight","context","getContext","drawImage","dataURL"],"sources":["player/index.js"],"sourcesContent":["var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nimport BDPlayerManager from '../bd/PlayerManager';\nimport H264PlayerManager from '../h264/PlayerManager';\nimport PlayerManager from '../icc/PlayerManager';\nimport { getHKTimeString, getPlayerParams } from '../utils';\nimport WebrtcPlayerManager from '../webrtc/PlayerManager';\nimport FlvJs from 'flv.js';\nimport Hls from 'hls.js';\nimport moment from 'moment';\n/**\n * 视频播放核心类\n */\nclass Player {\n constructor(params) {\n var _a, _b;\n this.player = null;\n /** 之前的视频播放速度,用于处理海康音量控制 */\n this.preSpeed = 1;\n this.containerId = '';\n // 海康窗口下标\n this.windowIndex = 0;\n /** 视频播放流是否走代理 - 是强制走代理,否通过判断 http协议,走代理配置 */\n const { url, channelNum, deviceCode, enableAgent = false, container, live = true, type, startTime, endTime, streamType, deviceIp, devicePort, } = params;\n this.containerId = container.id;\n const playerParams = getPlayerParams(type, url, enableAgent, live);\n this.type = type || playerParams.type; // 如果不传递type,则通过url解析type值,1.1.2之后默认都传type\n this.url = playerParams.url;\n this.channelNum = channelNum;\n this.deviceCode = deviceCode || '';\n this.streamType = streamType || '0'; // 默认主码流\n this.enableAgent = enableAgent;\n this.startTime = startTime;\n this.endTime = endTime;\n const video = document.createElement('video'); // 生成video元素\n video.className = 'vtx-player-video';\n video.muted = true; //设置静音\n this.video = video;\n if (this.type === 'flv' && FlvJs.isSupported() && video) {\n container.appendChild(video);\n this.player = FlvJs.createPlayer({\n type: 'flv',\n isLive: false,\n url: this.url,\n });\n this.player.attachMediaElement(this.video);\n this.player.load();\n }\n // 处理hls格式视频\n if (this.type === 'hls' && Hls.isSupported() && video) {\n container.appendChild(video);\n this.player = new Hls();\n this.player.loadSource(this.url);\n this.player.attachMedia(this.video);\n }\n // 处理海康视频\n if (this.type === 'hk_ws') {\n this.player = new window.JSPlugin({\n szId: container.id,\n szBasePath: './resources/',\n iMaxSplit: 1,\n iCurrentSplit: 1,\n });\n const wrapDiv = document.getElementById(container.id);\n this.video = wrapDiv.getElementsByTagName('video')[0];\n this.video.preload = 'auto';\n }\n // 处理海康视频\n if (this.type === 'hkcar_ws' && (url.startsWith('ws://') || url.startsWith('wss://'))) {\n const wrapDiv = document.getElementById(container.id);\n this.player = new window.JSPluginHkCar({\n szId: container.id,\n iWidth: wrapDiv.clientWidth,\n iHeight: wrapDiv.clientHeight,\n iMaxSplit: 1,\n iCurrentSplit: 1,\n szBasePath: './resources/hkcar/',\n oStyle: {\n border: 'transparent',\n borderSelect: 'transparent',\n background: '#2b3d51',\n },\n });\n }\n if (this.type === 'icc_ws') {\n const dd = document.getElementById(container.id);\n while (dd === null || dd === void 0 ? void 0 : dd.hasChildNodes()) {\n dd.removeChild(dd.firstChild);\n }\n this.player = new PlayerManager({\n ip: window.location.protocol === 'http:'\n ? deviceIp\n : `${deviceIp || ''}:${devicePort || ''}`,\n el: container.id,\n type: live ? 'real' : 'record',\n maxNum: 1,\n num: 1,\n });\n }\n if (this.type === 'webrtc') {\n const dd = document.getElementById(container.id);\n ((_a = dd === null || dd === void 0 ? void 0 : dd.children) === null || _a === void 0 ? void 0 : _a.length) > 0 && dd.removeChild(dd.firstChild);\n video.autoplay = true;\n const id = `${container.id}_${Date.now()}`;\n video.id = id;\n container.appendChild(video);\n this.player = new WebrtcPlayerManager({\n el: id,\n url: this.url,\n type: live,\n });\n }\n if (this.type === 'h264') {\n const dd = document.getElementById(container.id);\n ((_b = dd === null || dd === void 0 ? void 0 : dd.children) === null || _b === void 0 ? void 0 : _b.length) > 0 && dd.removeChild(dd.firstChild);\n video.autoplay = true;\n const id = 'playerh264';\n video.id = id;\n container.appendChild(video);\n this.player = new H264PlayerManager({ id: id, url: this.url });\n }\n if (this.type === 'bd') {\n // const path = './bd/';\n // loadJs(path + 'js/flv.min.js');\n // loadJs(path + 'js/DPlayer.min.js');\n // loadJs(path + 'js/cmsv6player.min.js');\n this.player = new BDPlayerManager({\n el: container.id,\n type: live,\n url: this.url,\n });\n }\n }\n /** 播放 */\n play() {\n if (this.type === 'flv') {\n const player = this.player;\n return player.play();\n }\n if (this.type === 'hls') {\n return this.video.play();\n }\n if (this.type === 'hk_ws' || this.type === 'hkcar_ws') {\n const player = this.player;\n const result = player.JS_Play(this.url, { playURL: this.url, mode: 1 }, 0);\n this.windowIndex = 0;\n return result;\n }\n if (this.type === 'icc_ws') {\n const player = this.player;\n player.playRealVideo({\n channelList: [\n {\n id: this.deviceCode + '$1$0$' + this.channelNum,\n isOnline: true,\n },\n ],\n streamType: Number(this.streamType) + 1,\n });\n }\n if (this.type === 'webrtc') {\n const player = this.player;\n player.play();\n }\n if (this.type === 'bd') {\n const player = this.player;\n player.playRealVideo();\n }\n return Promise.resolve();\n }\n /** 回放 */\n playBack() {\n if (this.type === 'hk_ws' || this.type === 'hkcar_ws') {\n const player = this.player;\n const result = player.JS_Play(this.url, { playURL: this.url, mode: 1 }, 1, getHKTimeString(this.startTime), getHKTimeString(this.endTime));\n this.windowIndex = 1;\n return result;\n }\n else if (this.type === 'icc_ws') {\n const player = this.player;\n return new Promise((resolve) => {\n player.playRecordVideo({\n channelList: [\n {\n id: this.deviceCode + '$1$0$' + this.channelNum,\n },\n ],\n startTime: moment(this.startTime, 'YYYY-MM-DD HH:mm:ss').format('X'),\n endTime: moment(this.endTime, 'YYYY-MM-DD HH:mm:ss').format('X'),\n recordSource: '2',\n streamType: this.streamType,\n });\n resolve(true);\n });\n }\n else {\n return this.play();\n }\n }\n /** 销毁 */\n destroy() {\n if (this.type === 'flv') {\n const player = this.player;\n player === null || player === void 0 ? void 0 : player.destroy();\n this.player = null;\n this.video.remove();\n }\n if (this.type === 'hls') {\n const player = this.player;\n player.destroy();\n this.player = null;\n this.video.remove();\n }\n if (this.type === 'hk_ws') {\n const player = this.player;\n player.JS_Stop(1);\n const dd = document.getElementById(this.containerId);\n dd && dd.childNodes && dd.childNodes[0] && dd.removeChild(dd.childNodes[0]);\n }\n if (this.type === 'hkcar_ws') {\n const player = this.player;\n player.JS_DestroyWorker();\n const dd = document.getElementById(this.containerId);\n (dd === null || dd === void 0 ? void 0 : dd.childNodes) && dd.childNodes[0] && dd.removeChild(dd.childNodes[0]);\n }\n if (this.type === 'icc_ws') {\n const player = this.player;\n player.close();\n }\n if (this.type === 'webrtc') {\n const player = this.player;\n player.close();\n }\n if (this.type === 'h264') {\n const player = this.player;\n player.close();\n }\n if (this.type === 'bd') {\n const player = this.player;\n player.close(0);\n }\n }\n /** 截图 */\n capture(captureName = '视频截图', callback = null, time = true) {\n let name = captureName;\n if (time)\n name += `-${moment().format('YYYYMMDDHHmmss')}`;\n if (this.type === 'hk_ws' || this.type === 'hkcar_ws') {\n const player = this.player;\n if (player)\n player.JS_CapturePicture(1, name, 'JPEG', (res) => {\n callback && callback(res);\n });\n }\n else if (this.type === 'bd') {\n const DPlayer = this.player.dp;\n const canvas = DPlayer.container.querySelector('canvas');\n if (canvas) {\n canvas.toBlob((blob) => {\n if (blob) {\n callback === null || callback === void 0 ? void 0 : callback(URL.createObjectURL(blob));\n }\n });\n }\n }\n else {\n Capture(this.video, name, callback);\n }\n }\n /** 尺寸重置 */\n resize() {\n if (this.type === 'hk_ws' || this.type === 'hkcar_ws') {\n const player = this.player;\n setTimeout(() => {\n player.JS_Resize();\n }, 500);\n }\n else if (this.type === 'icc_ws') {\n const player = this.player;\n player.setPlayerAdapter('selfAdaption');\n }\n }\n /**\n * 设置音量\n * @param value\n */\n setVolume(value) {\n if (this.type === 'flv') {\n const player = this.player;\n player.volume = value / 100;\n }\n if (this.type === 'hls') {\n this.video.volume = value / 100;\n }\n if (this.type === 'hk_ws' || this.type === 'hkcar_ws') {\n const player = this.player;\n if (player.iCurrentSoundWnd !== this.windowIndex) {\n player.JS_OpenSound(this.windowIndex);\n }\n player.JS_SetVolume(this.windowIndex, value);\n }\n if (this.type === 'bd') {\n const player = this.player.dp;\n if (!player.ttxplayer.enableAudio)\n player.ttxplayer.openAudio();\n player.ttxplayer.setVolume(value);\n }\n }\n /**\n * 设置播放速度\n * @param speed\n */\n setSpeed(speed) {\n if (this.type === 'hk_ws' || this.type === 'hkcar_ws') {\n const player = this.player;\n if (this.preSpeed / speed === 2) {\n player.JS_Slow(1);\n }\n if (this.preSpeed / speed === 4) {\n player.JS_Slow(1).then(() => player.JS_Slow(1));\n }\n if (this.preSpeed / speed === 8) {\n player\n .JS_Slow(1)\n .then(() => player.JS_Slow(1))\n .then(() => player.JS_Slow(1));\n }\n if (this.preSpeed / speed === 16) {\n player\n .JS_Slow(1)\n .then(() => player.JS_Slow(1))\n .then(() => player.JS_Slow(1))\n .then(() => player.JS_Slow(1));\n }\n if (speed / this.preSpeed === 2) {\n player.JS_Fast(1);\n }\n if (speed / this.preSpeed === 4) {\n player.JS_Fast(1).then(() => player.JS_Fast(1));\n }\n if (speed / this.preSpeed === 8) {\n player\n .JS_Fast(1)\n .then(() => player.JS_Fast(1))\n .then(() => player.JS_Fast(1));\n }\n if (speed / this.preSpeed === 16) {\n player\n .JS_Fast(1)\n .then(() => player.JS_Fast(1))\n .then(() => player.JS_Fast(1))\n .then(() => player.JS_Fast(1));\n }\n this.preSpeed = speed;\n }\n else if (this.type === 'icc_ws') {\n const player = this.player;\n player.playSpeed(speed);\n }\n else if (this.type === 'bd') {\n // todo\n }\n else {\n this.video.playbackRate = speed;\n }\n }\n /**\n * 时间更新事件\n * @param callback 回调函数\n */\n onTimeUpdate(callback) {\n var _a;\n this.video.addEventListener('timeupdate', () => {\n let currentTime = this.video.currentTime;\n if ((this.type === 'hk_ws' || this.type === 'hkcar_ws') && this.seekTime) {\n currentTime = currentTime + this.seekTime.diff(this.startTime, 'seconds');\n }\n callback(currentTime, this.type === 'hk_ws' || this.type === 'hkcar_ws'\n ? this.preSpeed\n : this.video.playbackRate);\n });\n // 增加hw_ws 流播放结束回调\n const player = this.player;\n (_a = player === null || player === void 0 ? void 0 : player.JS_SetWindowControlCallback) === null || _a === void 0 ? void 0 : _a.call(player, {\n StreamEnd: () => {\n callback(moment(this.endTime).diff(this.startTime, 'seconds'), this.preSpeed);\n },\n });\n }\n /** 跳转到 */\n seekTo(time) {\n var _a, _b, _c;\n return __awaiter(this, void 0, void 0, function* () {\n if (this.type === 'hk_ws' || this.type === 'hkcar_ws') {\n const player = this.player;\n const seekTime = (_a = moment(this.startTime)) === null || _a === void 0 ? void 0 : _a.add(time, 'seconds');\n this.seekTime = seekTime;\n yield player.JS_Seek(1, getHKTimeString(seekTime), getHKTimeString(this.endTime));\n }\n else if (this.type === 'icc_ws') {\n const player = this.player;\n const seekTime = (_b = moment(this.startTime)) === null || _b === void 0 ? void 0 : _b.add(time, 'seconds').format('HH:mm:ss');\n player.jumpPlayByTime(seekTime);\n }\n else if (this.type === 'bd') {\n const player = this.player;\n const seekTime = (_c = moment(this.startTime)) === null || _c === void 0 ? void 0 : _c.add(time, 'seconds').valueOf();\n player.jumpPlayByTime(seekTime);\n }\n else {\n this.video.currentTime = time;\n }\n return Promise.resolve();\n });\n }\n /**\n * 暂停播放\n * @param callback 回调函数\n */\n pause(callback) {\n if (this.type === 'hk_ws' || this.type === 'hkcar_ws') {\n const player = this.player;\n player.JS_Pause(1).then(() => callback && callback());\n }\n else if (this.type === 'bd') {\n const player = this.player;\n player.pause();\n }\n else {\n this.video.pause();\n callback && callback();\n }\n }\n /**\n * 恢复播放\n * @param callback 回调函数\n */\n resume(callback) {\n if (this.type === 'hk_ws' || this.type === 'hkcar_ws') {\n const player = this.player;\n player.JS_Resume(1).then(() => callback && callback());\n }\n else if (this.type === 'bd') {\n const player = this.player;\n player.close(0);\n }\n else {\n this.video.play();\n callback && callback();\n }\n }\n /**\n * 开始对讲\n * @param url 对讲地址\n */\n startTalk(url) {\n if (this.type === 'hk_ws' || this.type === 'hkcar_ws') {\n const player = this.player;\n return player.JS_StartTalk(url);\n }\n return Promise.reject();\n }\n /**\n * 开始对讲\n * @param state 状态\n */\n stopTalk() {\n if (this.type === 'hk_ws' || this.type === 'hkcar_ws') {\n const player = this.player;\n return player.JS_StopTalk();\n }\n return Promise.reject();\n }\n}\n/**\n * 截图\n * @param video\n */\nconst Capture = (video, name, callback) => {\n const canvas = document.createElement('canvas');\n canvas.width = video.videoWidth;\n canvas.height = video.videoHeight;\n const context = canvas.getContext('2d');\n if (context) {\n context.drawImage(video, 0, 0, canvas.width, canvas.height);\n let dataURL;\n canvas.toBlob((blob) => {\n if (blob) {\n dataURL = URL.createObjectURL(blob);\n // const link = document.createElement('a');\n callback && callback(dataURL);\n // link.href = dataURL;\n // link.download = `${name}.png`;\n // link.style.display = 'none';\n // document.body.appendChild(link);\n // link.click();\n // document.body.removeChild(link);\n // URL.revokeObjectURL(dataURL);\n }\n });\n }\n};\nexport default Player;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["__awaiter","thisArg","_arguments","P","generator","adopt","value","resolve","Promise","reject","fulfilled","step","next","e","rejected","result","done","then","apply","Player","params","_a","_b","_c","player","preSpeed","containerId","windowIndex","url","channelNum","deviceCode","enableAgent","container","live","type","startTime","endTime","streamType","deviceIp","devicePort","id","playerParams","getPlayerParams","video","document","createElement","className","muted","FlvJs","isSupported","appendChild","createPlayer","isLive","attachMediaElement","load","Hls","loadSource","attachMedia","window","JSPlugin","szId","szBasePath","iMaxSplit","iCurrentSplit","wrapDiv","getElementById","getElementsByTagName","preload","startsWith","JSPluginHkCar","iWidth","clientWidth","iHeight","clientHeight","oStyle","border","borderSelect","background","dd","hasChildNodes","removeChild","firstChild","PlayerManager","ip","location","protocol","el","maxNum","num","children","length","autoplay","Date","now","WebrtcPlayerManager","H264PlayerManager","BDPlayerManager","src","play","JS_Play","playURL","mode","playRealVideo","channelList","isOnline","Number","getHKTimeString","playRecordVideo","moment","format","recordSource","destroy","remove","JS_Stop","childNodes","JS_DestroyWorker","close","captureName","callback","time","name","JS_CapturePicture","res","DPlayer","dp","canvas","querySelector","toBlob","blob","URL","createObjectURL","Capture","setTimeout","JS_Resize","setPlayerAdapter","volume","iCurrentSoundWnd","JS_OpenSound","JS_SetVolume","ttxplayer","enableAudio","openAudio","setVolume","speed","JS_Slow","JS_Fast","playSpeed","playbackRate","addEventListener","currentTime","seekTime","diff","JS_SetWindowControlCallback","call","StreamEnd","add","JS_Seek","jumpPlayByTime","valueOf","JS_Pause","pause","JS_Resume","JS_StartTalk","JS_StopTalk","width","videoWidth","height","videoHeight","context","getContext","drawImage","dataURL"],"sources":["player/index.js"],"sourcesContent":["var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nimport BDPlayerManager from '../bd/PlayerManager';\nimport H264PlayerManager from '../h264/PlayerManager';\nimport PlayerManager from '../icc/PlayerManager';\nimport { getHKTimeString, getPlayerParams } from '../utils';\nimport WebrtcPlayerManager from '../webrtc/PlayerManager';\nimport FlvJs from 'flv.js';\nimport Hls from 'hls.js';\nimport moment from 'moment';\n/**\n * 视频播放核心类\n */\nclass Player {\n constructor(params) {\n var _a, _b, _c;\n this.player = null;\n /** 之前的视频播放速度,用于处理海康音量控制 */\n this.preSpeed = 1;\n this.containerId = '';\n // 海康窗口下标\n this.windowIndex = 0;\n /** 视频播放流是否走代理 - 是强制走代理,否通过判断 http协议,走代理配置 */\n const { url, channelNum, deviceCode, enableAgent = false, container, live = true, type, startTime, endTime, streamType, deviceIp, devicePort, } = params;\n this.containerId = container.id;\n const playerParams = getPlayerParams(type, url, enableAgent, live);\n this.type = type || playerParams.type; // 如果不传递type,则通过url解析type值,1.1.2之后默认都传type\n this.url = playerParams.url;\n this.channelNum = channelNum;\n this.deviceCode = deviceCode || '';\n this.streamType = streamType || '0'; // 默认主码流\n this.enableAgent = enableAgent;\n this.startTime = startTime;\n this.endTime = endTime;\n const video = document.createElement('video'); // 生成video元素\n video.className = 'vtx-player-video';\n video.muted = true; //设置静音\n this.video = video;\n if (this.type === 'flv' && FlvJs.isSupported() && video) {\n container.appendChild(video);\n this.player = FlvJs.createPlayer({\n type: 'flv',\n isLive: false,\n url: this.url,\n });\n this.player.attachMediaElement(this.video);\n this.player.load();\n }\n // 处理hls格式视频\n if (this.type === 'hls' && Hls.isSupported() && video) {\n container.appendChild(video);\n this.player = new Hls();\n this.player.loadSource(this.url);\n this.player.attachMedia(this.video);\n }\n // 处理海康视频\n if (this.type === 'hk_ws') {\n this.player = new window.JSPlugin({\n szId: container.id,\n szBasePath: './resources/',\n iMaxSplit: 1,\n iCurrentSplit: 1,\n });\n const wrapDiv = document.getElementById(container.id);\n this.video = wrapDiv.getElementsByTagName('video')[0];\n this.video.preload = 'auto';\n }\n // 处理海康视频\n if (this.type === 'hkcar_ws' && (url.startsWith('ws://') || url.startsWith('wss://'))) {\n const wrapDiv = document.getElementById(container.id);\n this.player = new window.JSPluginHkCar({\n szId: container.id,\n iWidth: wrapDiv.clientWidth,\n iHeight: wrapDiv.clientHeight,\n iMaxSplit: 1,\n iCurrentSplit: 1,\n szBasePath: './resources/hkcar/',\n oStyle: {\n border: 'transparent',\n borderSelect: 'transparent',\n background: '#2b3d51',\n },\n });\n }\n if (this.type === 'icc_ws') {\n const dd = document.getElementById(container.id);\n while (dd === null || dd === void 0 ? void 0 : dd.hasChildNodes()) {\n dd.removeChild(dd.firstChild);\n }\n this.player = new PlayerManager({\n ip: window.location.protocol === 'http:'\n ? deviceIp\n : `${deviceIp || ''}:${devicePort || ''}`,\n el: container.id,\n type: live ? 'real' : 'record',\n maxNum: 1,\n num: 1,\n });\n }\n if (this.type === 'webrtc') {\n const dd = document.getElementById(container.id);\n ((_a = dd === null || dd === void 0 ? void 0 : dd.children) === null || _a === void 0 ? void 0 : _a.length) > 0 && dd.removeChild(dd.firstChild);\n video.autoplay = true;\n const id = `${container.id}_${Date.now()}`;\n video.id = id;\n container.appendChild(video);\n this.player = new WebrtcPlayerManager({\n el: id,\n url: this.url,\n type: live,\n });\n }\n if (this.type === 'h264') {\n const dd = document.getElementById(container.id);\n ((_b = dd === null || dd === void 0 ? void 0 : dd.children) === null || _b === void 0 ? void 0 : _b.length) > 0 && dd.removeChild(dd.firstChild);\n video.autoplay = true;\n const id = 'playerh264';\n video.id = id;\n container.appendChild(video);\n this.player = new H264PlayerManager({ id: id, url: this.url });\n }\n if (this.type === 'bd') {\n this.player = new BDPlayerManager({\n el: container.id,\n type: live,\n url: this.url,\n });\n }\n if (this.type === 'mp4') {\n const dd = document.getElementById(container.id);\n ((_c = dd === null || dd === void 0 ? void 0 : dd.children) === null || _c === void 0 ? void 0 : _c.length) > 0 && dd.removeChild(dd.firstChild);\n this.video.src = this.url;\n this.video.autoplay = true;\n const id = 'mp4';\n this.video.id = id;\n container.appendChild(this.video);\n }\n }\n /** 播放 */\n play() {\n if (this.type === 'flv') {\n const player = this.player;\n return player.play();\n }\n if (this.type === 'hls') {\n return this.video.play();\n }\n if (this.type === 'hk_ws' || this.type === 'hkcar_ws') {\n const player = this.player;\n const result = player.JS_Play(this.url, { playURL: this.url, mode: 1 }, 0);\n this.windowIndex = 0;\n return result;\n }\n if (this.type === 'icc_ws') {\n const player = this.player;\n player.playRealVideo({\n channelList: [\n {\n id: this.deviceCode + '$1$0$' + this.channelNum,\n isOnline: true,\n },\n ],\n streamType: Number(this.streamType) + 1,\n });\n }\n if (this.type === 'webrtc') {\n const player = this.player;\n player.play();\n }\n if (this.type === 'bd') {\n const player = this.player;\n player.playRealVideo();\n }\n if (this.type === 'mp4') {\n //\n }\n return Promise.resolve();\n }\n /** 回放 */\n playBack() {\n if (this.type === 'hk_ws' || this.type === 'hkcar_ws') {\n const player = this.player;\n const result = player.JS_Play(this.url, { playURL: this.url, mode: 1 }, 1, getHKTimeString(this.startTime), getHKTimeString(this.endTime));\n this.windowIndex = 1;\n return result;\n }\n else if (this.type === 'icc_ws') {\n const player = this.player;\n return new Promise((resolve) => {\n player.playRecordVideo({\n channelList: [\n {\n id: this.deviceCode + '$1$0$' + this.channelNum,\n },\n ],\n startTime: moment(this.startTime, 'YYYY-MM-DD HH:mm:ss').format('X'),\n endTime: moment(this.endTime, 'YYYY-MM-DD HH:mm:ss').format('X'),\n recordSource: '2',\n streamType: this.streamType,\n });\n resolve(true);\n });\n }\n else {\n return this.play();\n }\n }\n /** 销毁 */\n destroy() {\n var _a;\n if (this.type === 'flv') {\n const player = this.player;\n player === null || player === void 0 ? void 0 : player.destroy();\n this.player = null;\n this.video.remove();\n }\n if (this.type === 'hls') {\n const player = this.player;\n player.destroy();\n this.player = null;\n this.video.remove();\n }\n if (this.type === 'hk_ws') {\n const player = this.player;\n player.JS_Stop(1);\n const dd = document.getElementById(this.containerId);\n dd && dd.childNodes && dd.childNodes[0] && dd.removeChild(dd.childNodes[0]);\n }\n if (this.type === 'hkcar_ws') {\n const player = this.player;\n player.JS_DestroyWorker();\n const dd = document.getElementById(this.containerId);\n (dd === null || dd === void 0 ? void 0 : dd.childNodes) && dd.childNodes[0] && dd.removeChild(dd.childNodes[0]);\n }\n if (this.type === 'icc_ws') {\n const player = this.player;\n player.close();\n }\n if (this.type === 'webrtc') {\n const player = this.player;\n player.close();\n }\n if (this.type === 'h264') {\n const player = this.player;\n player.close();\n }\n if (this.type === 'bd') {\n const player = this.player;\n player.close(0);\n }\n if (this.type === 'mp4') {\n // const player = this.player as BDPlayerManager;\n // player.close(0);\n this.video = null;\n const dd = document.getElementById(this.containerId);\n ((_a = dd === null || dd === void 0 ? void 0 : dd.children) === null || _a === void 0 ? void 0 : _a.length) > 0 && dd.removeChild(dd.firstChild);\n }\n }\n /** 截图 */\n capture(captureName = '视频截图', callback = null, time = true) {\n let name = captureName;\n if (time)\n name += `-${moment().format('YYYYMMDDHHmmss')}`;\n if (this.type === 'hk_ws' || this.type === 'hkcar_ws') {\n const player = this.player;\n if (player)\n player.JS_CapturePicture(1, name, 'JPEG', (res) => {\n callback && callback(res);\n });\n }\n else if (this.type === 'bd') {\n const DPlayer = this.player.dp;\n const canvas = DPlayer.container.querySelector('canvas');\n if (canvas) {\n canvas.toBlob((blob) => {\n if (blob) {\n callback === null || callback === void 0 ? void 0 : callback(URL.createObjectURL(blob));\n }\n });\n }\n }\n else {\n Capture(this.video, name, callback);\n }\n }\n /** 尺寸重置 */\n resize() {\n if (this.type === 'hk_ws' || this.type === 'hkcar_ws') {\n const player = this.player;\n setTimeout(() => {\n player.JS_Resize();\n }, 500);\n }\n else if (this.type === 'icc_ws') {\n const player = this.player;\n player.setPlayerAdapter('selfAdaption');\n }\n }\n /**\n * 设置音量\n * @param value\n */\n setVolume(value) {\n if (this.type === 'flv') {\n const player = this.player;\n player.volume = value / 100;\n }\n if (this.type === 'hls') {\n this.video.volume = value / 100;\n }\n if (this.type === 'hk_ws' || this.type === 'hkcar_ws') {\n const player = this.player;\n if (player.iCurrentSoundWnd !== this.windowIndex) {\n player.JS_OpenSound(this.windowIndex);\n }\n player.JS_SetVolume(this.windowIndex, value);\n }\n if (this.type === 'bd') {\n const player = this.player.dp;\n if (!player.ttxplayer.enableAudio)\n player.ttxplayer.openAudio();\n player.ttxplayer.setVolume(value);\n }\n }\n /**\n * 设置播放速度\n * @param speed\n */\n setSpeed(speed) {\n if (this.type === 'hk_ws' || this.type === 'hkcar_ws') {\n const player = this.player;\n if (this.preSpeed / speed === 2) {\n player.JS_Slow(1);\n }\n if (this.preSpeed / speed === 4) {\n player.JS_Slow(1).then(() => player.JS_Slow(1));\n }\n if (this.preSpeed / speed === 8) {\n player\n .JS_Slow(1)\n .then(() => player.JS_Slow(1))\n .then(() => player.JS_Slow(1));\n }\n if (this.preSpeed / speed === 16) {\n player\n .JS_Slow(1)\n .then(() => player.JS_Slow(1))\n .then(() => player.JS_Slow(1))\n .then(() => player.JS_Slow(1));\n }\n if (speed / this.preSpeed === 2) {\n player.JS_Fast(1);\n }\n if (speed / this.preSpeed === 4) {\n player.JS_Fast(1).then(() => player.JS_Fast(1));\n }\n if (speed / this.preSpeed === 8) {\n player\n .JS_Fast(1)\n .then(() => player.JS_Fast(1))\n .then(() => player.JS_Fast(1));\n }\n if (speed / this.preSpeed === 16) {\n player\n .JS_Fast(1)\n .then(() => player.JS_Fast(1))\n .then(() => player.JS_Fast(1))\n .then(() => player.JS_Fast(1));\n }\n this.preSpeed = speed;\n }\n else if (this.type === 'icc_ws') {\n const player = this.player;\n player.playSpeed(speed);\n }\n else if (this.type === 'bd') {\n // todo\n }\n else {\n this.video.playbackRate = speed;\n }\n }\n /**\n * 时间更新事件\n * @param callback 回调函数\n */\n onTimeUpdate(callback) {\n var _a;\n this.video.addEventListener('timeupdate', () => {\n let currentTime = this.video.currentTime;\n if ((this.type === 'hk_ws' || this.type === 'hkcar_ws') && this.seekTime) {\n currentTime = currentTime + this.seekTime.diff(this.startTime, 'seconds');\n }\n callback(currentTime, this.type === 'hk_ws' || this.type === 'hkcar_ws'\n ? this.preSpeed\n : this.video.playbackRate);\n });\n // 增加hw_ws 流播放结束回调\n const player = this.player;\n (_a = player === null || player === void 0 ? void 0 : player.JS_SetWindowControlCallback) === null || _a === void 0 ? void 0 : _a.call(player, {\n StreamEnd: () => {\n callback(moment(this.endTime).diff(this.startTime, 'seconds'), this.preSpeed);\n },\n });\n }\n /** 跳转到 */\n seekTo(time) {\n var _a, _b, _c;\n return __awaiter(this, void 0, void 0, function* () {\n if (this.type === 'hk_ws' || this.type === 'hkcar_ws') {\n const player = this.player;\n const seekTime = (_a = moment(this.startTime)) === null || _a === void 0 ? void 0 : _a.add(time, 'seconds');\n this.seekTime = seekTime;\n yield player.JS_Seek(1, getHKTimeString(seekTime), getHKTimeString(this.endTime));\n }\n else if (this.type === 'icc_ws') {\n const player = this.player;\n const seekTime = (_b = moment(this.startTime)) === null || _b === void 0 ? void 0 : _b.add(time, 'seconds').format('HH:mm:ss');\n player.jumpPlayByTime(seekTime);\n }\n else if (this.type === 'bd') {\n const player = this.player;\n const seekTime = (_c = moment(this.startTime)) === null || _c === void 0 ? void 0 : _c.add(time, 'seconds').valueOf();\n player.jumpPlayByTime(seekTime);\n }\n else {\n this.video.currentTime = time;\n }\n return Promise.resolve();\n });\n }\n /**\n * 暂停播放\n * @param callback 回调函数\n */\n pause(callback) {\n if (this.type === 'hk_ws' || this.type === 'hkcar_ws') {\n const player = this.player;\n player.JS_Pause(1).then(() => callback && callback());\n }\n else if (this.type === 'bd') {\n const player = this.player;\n player.pause();\n }\n else {\n this.video.pause();\n callback && callback();\n }\n }\n /**\n * 恢复播放\n * @param callback 回调函数\n */\n resume(callback) {\n if (this.type === 'hk_ws' || this.type === 'hkcar_ws') {\n const player = this.player;\n player.JS_Resume(1).then(() => callback && callback());\n }\n else if (this.type === 'bd') {\n const player = this.player;\n player.close(0);\n }\n else {\n this.video.play();\n callback && callback();\n }\n }\n /**\n * 开始对讲\n * @param url 对讲地址\n */\n startTalk(url) {\n if (this.type === 'hk_ws' || this.type === 'hkcar_ws') {\n const player = this.player;\n return player.JS_StartTalk(url);\n }\n return Promise.reject();\n }\n /**\n * 开始对讲\n * @param state 状态\n */\n stopTalk() {\n if (this.type === 'hk_ws' || this.type === 'hkcar_ws') {\n const player = this.player;\n return player.JS_StopTalk();\n }\n return Promise.reject();\n }\n}\n/**\n * 截图\n * @param video\n */\nconst Capture = (video, name, callback) => {\n const canvas = document.createElement('canvas');\n canvas.width = video.videoWidth;\n canvas.height = video.videoHeight;\n const context = canvas.getContext('2d');\n if (context) {\n context.drawImage(video, 0, 0, canvas.width, canvas.height);\n let dataURL;\n canvas.toBlob((blob) => {\n if (blob) {\n dataURL = URL.createObjectURL(blob);\n // const link = document.createElement('a');\n callback && callback(dataURL);\n // link.href = dataURL;\n // link.download = `${name}.png`;\n // link.style.display = 'none';\n // document.body.appendChild(link);\n // link.click();\n // document.body.removeChild(link);\n // URL.revokeObjectURL(dataURL);\n }\n });\n }\n};\nexport default Player;\n"],"mappings":"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"}
@@ -117,7 +117,7 @@ var initProtocol = function initProtocol(url, enableAgent) {
117
117
 
118
118
  var getPlayerParams = function getPlayerParams(type, url, enableAgent, live) {
119
119
  var playerUrl = url;
120
- var playerType = 'flv';
120
+ var playerType = 'mp4';
121
121
 
122
122
  if (type === 'bd') {
123
123
  if (url.startsWith('http')) {
@@ -172,6 +172,13 @@ var getPlayerParams = function getPlayerParams(type, url, enableAgent, live) {
172
172
  playerType = 'h264';
173
173
  }
174
174
 
175
+ if (playerType === 'mp4') {
176
+ return {
177
+ type: playerType,
178
+ url: url
179
+ };
180
+ }
181
+
175
182
  return {
176
183
  url: initProtocol(playerUrl, enableAgent),
177
184
  type: playerType
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["TimeFormat","guidGenerator","S4","Math","random","toString","substring","initProtocol","url","enableAgent","src","isHttps","document","location","protocol","startsWith","replace","ipPort","indexOf","path","window","host","getPlayerParams","type","live","playerUrl","playerType","origin","split","Base64","encode","getUrlTableData","data","result","list","map","item","i","beginTime","moment","endTime","totalSeconds","diff","index","deviceName","deviceCode","devicePort","deviceIp","streamType","channelName","format","params","size","bytesToMegaBytes","duration","secondsToString","downloadUrl","playbackUrl","code","hkType","deviceId","channelNum","bytes","pow","toFixed","total","hour","floor","minute","second","secondsToTime","getHKTimeString","time","getHKListUrl","totalUrl","startTime","query","urlParams","URLSearchParams","set","getUrlParam","key","href","paramObj","matchList","match","len","length","r","guid","c","v","loadJs","Error","head","getElementsByTagName","script","createElement","appendChild","loadCss","link","rel"],"sources":["utils/index.js"],"sourcesContent":["import { Base64 } from 'js-base64';\nimport moment from 'moment';\n/** 时间格式枚举 */\nexport var TimeFormat;\n(function (TimeFormat) {\n TimeFormat[\"default\"] = \"YYYY-MM-DDTHH:mm:ss\";\n TimeFormat[\"params\"] = \"YYYY-MM-DD HH:mm:ss\";\n TimeFormat[\"url\"] = \"YYYYMMDDTHHmmss\";\n})(TimeFormat || (TimeFormat = {}));\n/** 生成随机ID */\nexport const guidGenerator = () => {\n const S4 = function () {\n return (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1);\n };\n return S4() + S4() + '-' + S4() + '-' + S4() + '-' + S4() + '-' + S4() + S4() + S4();\n};\nconst initProtocol = (url, enableAgent) => {\n let src = url;\n if (enableAgent) {\n const isHttps = 'https:' === document.location.protocol;\n if (url.startsWith('http:')) {\n url = url.replace('http://', '');\n if (url.startsWith('https:')) {\n url = url.replace('https://', '');\n }\n const ipPort = url.substring(0, url.indexOf('/'));\n const path = url.substring(url.indexOf('/'));\n src = '/visProxy/' + ipPort + '/play' + path;\n }\n else if (url.startsWith('ws:')) {\n url = url.replace('ws://', '');\n if (url.startsWith('wss:')) {\n url = url.replace('wss://', '');\n }\n const ipPort = url.substring(0, url.indexOf('/'));\n const path = url.substring(url.indexOf('/'));\n const protocol = isHttps ? 'wss://' : 'ws://';\n src = protocol + window.location.host + '/visProxy/' + ipPort + '/play' + path;\n }\n }\n else {\n const isHttps = 'https:' === document.location.protocol;\n if (isHttps) {\n if (url.startsWith('http:')) {\n url = url.replace('http://', '');\n const ipPort = url.substring(0, url.indexOf('/'));\n const path = url.substring(url.indexOf('/'));\n src = '/visProxy/' + ipPort + '/play' + path;\n }\n else if (url.startsWith('ws:')) {\n url = url.replace('ws://', '');\n const ipPort = url.substring(0, url.indexOf('/'));\n const path = url.substring(url.indexOf('/'));\n src = 'wss://' + window.location.host + '/visProxy/' + ipPort + '/play' + path;\n }\n else {\n src = url;\n }\n }\n }\n return src;\n};\n/**\n * 获取视频直播地址及格式\n * @param url\n * @returns\n */\nexport const getPlayerParams = (type, url, enableAgent, live) => {\n let playerUrl = url;\n let playerType = 'flv';\n if (type === 'bd') {\n if (url.startsWith('http')) {\n return {\n type: 'bd',\n url,\n };\n }\n return {\n type: 'bd',\n url: `${window.location.origin}${url}`,\n };\n }\n if (url.startsWith('ws://') || url.startsWith('wss://')) {\n if (type === 'hkcar_ws') {\n playerType = 'hkcar_ws';\n }\n else {\n playerType = 'hk_ws';\n }\n if (live) {\n playerUrl = url;\n }\n else {\n playerUrl = url.split('?')[0];\n }\n }\n if (url.startsWith('rtsp://')) {\n playerType = 'flv';\n playerUrl = `/cloud/vic/convert/flv/live.flv?url=${Base64.encode(url)}`;\n }\n if (url.indexOf('flv') > -1) {\n playerUrl = url;\n playerType = 'flv';\n }\n if (url.indexOf('m3u8') > -1) {\n playerUrl = url;\n playerType = 'hls';\n }\n if (url.indexOf('webrtc') > -1) {\n playerUrl = url;\n playerType = 'webrtc';\n }\n if (url.indexOf('h264') > -1 || url.indexOf('cloudFile') > -1) {\n playerUrl = url;\n playerType = 'h264';\n }\n return { url: initProtocol(playerUrl, enableAgent), type: playerType };\n};\n/**\n * 获取历史回放表格数据\n * @param data\n * @returns\n */\nexport const getUrlTableData = (data) => {\n const result = data.list.map((item, i) => {\n const beginTime = moment(item.beginTime);\n const endTime = moment(item.endTime);\n const totalSeconds = moment(endTime).diff(moment(beginTime), 'seconds');\n return {\n index: i + 1,\n deviceName: data.deviceName,\n deviceCode: data.deviceCode,\n devicePort: data.devicePort,\n deviceIp: data.deviceIp,\n streamType: data.streamType,\n channelName: data.channelName,\n beginTime: beginTime.format(TimeFormat.params),\n endTime: endTime.format(TimeFormat.params),\n size: bytesToMegaBytes(item.size),\n duration: secondsToString(totalSeconds),\n downloadUrl: '',\n url: item.playbackUrl || '',\n enableAgent: data.enableAgent || false,\n code: item.code,\n hkType: data.hkType,\n deviceId: data.deviceId,\n channelNum: data.channelNum,\n };\n });\n return result;\n};\n/**\n * bytes转换mb\n * @param bytes\n * @returns\n */\nexport const bytesToMegaBytes = (bytes) => `${(bytes / Math.pow(1024, 2)).toFixed(2)}MB`;\n/**\n * 秒数=>0时0分0秒\n * @param total\n * @returns\n */\nexport const secondsToString = (total) => {\n const hour = Math.floor(total / 3600);\n const minute = Math.floor((total % 3600) / 60);\n const second = Math.floor(total % 60);\n const result = `${hour > 0 ? hour + '小时' : ''}${minute > 0 ? minute + '分' : ''}${second > 0 ? second + '秒' : ''}`;\n return result;\n};\n/**\n * 秒数=>00:00:00\n * @param total\n * @returns\n */\nexport const secondsToTime = (total) => {\n const hour = Math.floor(total / 3600);\n const minute = Math.floor((total % 3600) / 60);\n const second = Math.floor(total % 60);\n const result = `${hour >= 10 ? hour : '0' + hour}:${minute >= 10 ? minute : '0' + minute}:${second >= 10 ? second : '0' + second}`;\n return result;\n};\n/**\n * 获取海康时间参数\n * @param time 时间\n * @returns\n */\nexport const getHKTimeString = (time) => {\n return moment(time).format(TimeFormat.default) + 'Z';\n};\n/**\n * 获取海康分段播放地址\n * @param totalUrl 总播放地址\n * @param startTime 开始时间\n * @param endTime 结束时间\n * @returns\n */\nexport const getHKListUrl = (totalUrl, startTime, endTime) => {\n const [url, query] = totalUrl.split('?');\n const urlParams = new URLSearchParams(query);\n urlParams.set('beginTime', getHKTimeString(startTime));\n urlParams.set('endTime', getHKTimeString(endTime));\n return `${url}?${urlParams.toString()}`;\n};\n/**\n *\n * 获取flv格式分段播放地址\n * @param totalUrl 总播放地址\n * @param startTime 开始时间\n * @param endTime 结束时间\n * @returns\n */\n// export const getFlvListUrl = (\n// totalUrl: string,\n// startTime: moment.MomentInput,\n// endTime: moment.MomentInput\n// ) => {\n// const [url, query] = totalUrl.split('?');\n// const urlParams = new URLSearchParams(query);\n// urlParams.set('beginTime', moment(startTime).format(TimeFormat.url));\n// urlParams.set('endTime', moment(endTime).format(TimeFormat.url));\n// return `${url}?${urlParams.toString()}`;\n// };\n/**\n * 获取地址栏中的参数信息\n * @param key 字段key\n * @param href 链接\n * @returns 字段值\n */\nexport const getUrlParam = (key, href = window.location.href) => {\n const paramObj = {};\n const matchList = href.match(/([^\\?&]+)=([^\\?&#]+)/g) || [];\n for (let i = 0, len = matchList.length; i < len; i++) {\n const r = matchList[i].match(/([^\\?&]+)=([^\\?&]+)/);\n paramObj[r[1]] = r[2];\n }\n if (key) {\n return paramObj[key];\n }\n else {\n return paramObj;\n }\n};\n/**\n *\n * @returns 返回UUID\n */\nexport function guid() {\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {\n const r = (Math.random() * 16) | 0, v = c == 'x' ? r : (r & 0x3) | 0x8;\n return v.toString(16);\n });\n}\nexport function loadJs(path) {\n if (!path || path.length === 0) {\n throw new Error('argument \"path\" is required !');\n }\n const head = document.getElementsByTagName('head')[0];\n const script = document.createElement('script');\n script.src = path;\n script.type = 'text/javascript';\n head.appendChild(script);\n}\nexport function loadCss(path) {\n if (!path || path.length === 0) {\n throw new Error('argument \"path\" is required !');\n }\n const head = document.getElementsByTagName('head')[0];\n const link = document.createElement('link');\n link.href = path;\n link.rel = 'stylesheet';\n link.type = 'text/css';\n head.appendChild(link);\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["TimeFormat","guidGenerator","S4","Math","random","toString","substring","initProtocol","url","enableAgent","src","isHttps","document","location","protocol","startsWith","replace","ipPort","indexOf","path","window","host","getPlayerParams","type","live","playerUrl","playerType","origin","split","Base64","encode","getUrlTableData","data","result","list","map","item","i","beginTime","moment","endTime","totalSeconds","diff","index","deviceName","deviceCode","devicePort","deviceIp","streamType","channelName","format","params","size","bytesToMegaBytes","duration","secondsToString","downloadUrl","playbackUrl","code","hkType","deviceId","channelNum","bytes","pow","toFixed","total","hour","floor","minute","second","secondsToTime","getHKTimeString","time","getHKListUrl","totalUrl","startTime","query","urlParams","URLSearchParams","set","getUrlParam","key","href","paramObj","matchList","match","len","length","r","guid","c","v","loadJs","Error","head","getElementsByTagName","script","createElement","appendChild","loadCss","link","rel"],"sources":["utils/index.js"],"sourcesContent":["import { Base64 } from 'js-base64';\nimport moment from 'moment';\n/** 时间格式枚举 */\nexport var TimeFormat;\n(function (TimeFormat) {\n TimeFormat[\"default\"] = \"YYYY-MM-DDTHH:mm:ss\";\n TimeFormat[\"params\"] = \"YYYY-MM-DD HH:mm:ss\";\n TimeFormat[\"url\"] = \"YYYYMMDDTHHmmss\";\n})(TimeFormat || (TimeFormat = {}));\n/** 生成随机ID */\nexport const guidGenerator = () => {\n const S4 = function () {\n return (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1);\n };\n return S4() + S4() + '-' + S4() + '-' + S4() + '-' + S4() + '-' + S4() + S4() + S4();\n};\nconst initProtocol = (url, enableAgent) => {\n let src = url;\n if (enableAgent) {\n const isHttps = 'https:' === document.location.protocol;\n if (url.startsWith('http:')) {\n url = url.replace('http://', '');\n if (url.startsWith('https:')) {\n url = url.replace('https://', '');\n }\n const ipPort = url.substring(0, url.indexOf('/'));\n const path = url.substring(url.indexOf('/'));\n src = '/visProxy/' + ipPort + '/play' + path;\n }\n else if (url.startsWith('ws:')) {\n url = url.replace('ws://', '');\n if (url.startsWith('wss:')) {\n url = url.replace('wss://', '');\n }\n const ipPort = url.substring(0, url.indexOf('/'));\n const path = url.substring(url.indexOf('/'));\n const protocol = isHttps ? 'wss://' : 'ws://';\n src = protocol + window.location.host + '/visProxy/' + ipPort + '/play' + path;\n }\n }\n else {\n const isHttps = 'https:' === document.location.protocol;\n if (isHttps) {\n if (url.startsWith('http:')) {\n url = url.replace('http://', '');\n const ipPort = url.substring(0, url.indexOf('/'));\n const path = url.substring(url.indexOf('/'));\n src = '/visProxy/' + ipPort + '/play' + path;\n }\n else if (url.startsWith('ws:')) {\n url = url.replace('ws://', '');\n const ipPort = url.substring(0, url.indexOf('/'));\n const path = url.substring(url.indexOf('/'));\n src = 'wss://' + window.location.host + '/visProxy/' + ipPort + '/play' + path;\n }\n else {\n src = url;\n }\n }\n }\n return src;\n};\n/**\n * 获取视频直播地址及格式\n * @param url\n * @returns\n */\nexport const getPlayerParams = (type, url, enableAgent, live) => {\n let playerUrl = url;\n let playerType = 'mp4';\n if (type === 'bd') {\n if (url.startsWith('http')) {\n return {\n type: 'bd',\n url,\n };\n }\n return {\n type: 'bd',\n url: `${window.location.origin}${url}`,\n };\n }\n if (url.startsWith('ws://') || url.startsWith('wss://')) {\n if (type === 'hkcar_ws') {\n playerType = 'hkcar_ws';\n }\n else {\n playerType = 'hk_ws';\n }\n if (live) {\n playerUrl = url;\n }\n else {\n playerUrl = url.split('?')[0];\n }\n }\n if (url.startsWith('rtsp://')) {\n playerType = 'flv';\n playerUrl = `/cloud/vic/convert/flv/live.flv?url=${Base64.encode(url)}`;\n }\n if (url.indexOf('flv') > -1) {\n playerUrl = url;\n playerType = 'flv';\n }\n if (url.indexOf('m3u8') > -1) {\n playerUrl = url;\n playerType = 'hls';\n }\n if (url.indexOf('webrtc') > -1) {\n playerUrl = url;\n playerType = 'webrtc';\n }\n if (url.indexOf('h264') > -1 || url.indexOf('cloudFile') > -1) {\n playerUrl = url;\n playerType = 'h264';\n }\n if (playerType === 'mp4') {\n return {\n type: playerType,\n url,\n };\n }\n return { url: initProtocol(playerUrl, enableAgent), type: playerType };\n};\n/**\n * 获取历史回放表格数据\n * @param data\n * @returns\n */\nexport const getUrlTableData = (data) => {\n const result = data.list.map((item, i) => {\n const beginTime = moment(item.beginTime);\n const endTime = moment(item.endTime);\n const totalSeconds = moment(endTime).diff(moment(beginTime), 'seconds');\n return {\n index: i + 1,\n deviceName: data.deviceName,\n deviceCode: data.deviceCode,\n devicePort: data.devicePort,\n deviceIp: data.deviceIp,\n streamType: data.streamType,\n channelName: data.channelName,\n beginTime: beginTime.format(TimeFormat.params),\n endTime: endTime.format(TimeFormat.params),\n size: bytesToMegaBytes(item.size),\n duration: secondsToString(totalSeconds),\n downloadUrl: '',\n url: item.playbackUrl || '',\n enableAgent: data.enableAgent || false,\n code: item.code,\n hkType: data.hkType,\n deviceId: data.deviceId,\n channelNum: data.channelNum,\n };\n });\n return result;\n};\n/**\n * bytes转换mb\n * @param bytes\n * @returns\n */\nexport const bytesToMegaBytes = (bytes) => `${(bytes / Math.pow(1024, 2)).toFixed(2)}MB`;\n/**\n * 秒数=>0时0分0秒\n * @param total\n * @returns\n */\nexport const secondsToString = (total) => {\n const hour = Math.floor(total / 3600);\n const minute = Math.floor((total % 3600) / 60);\n const second = Math.floor(total % 60);\n const result = `${hour > 0 ? hour + '小时' : ''}${minute > 0 ? minute + '分' : ''}${second > 0 ? second + '秒' : ''}`;\n return result;\n};\n/**\n * 秒数=>00:00:00\n * @param total\n * @returns\n */\nexport const secondsToTime = (total) => {\n const hour = Math.floor(total / 3600);\n const minute = Math.floor((total % 3600) / 60);\n const second = Math.floor(total % 60);\n const result = `${hour >= 10 ? hour : '0' + hour}:${minute >= 10 ? minute : '0' + minute}:${second >= 10 ? second : '0' + second}`;\n return result;\n};\n/**\n * 获取海康时间参数\n * @param time 时间\n * @returns\n */\nexport const getHKTimeString = (time) => {\n return moment(time).format(TimeFormat.default) + 'Z';\n};\n/**\n * 获取海康分段播放地址\n * @param totalUrl 总播放地址\n * @param startTime 开始时间\n * @param endTime 结束时间\n * @returns\n */\nexport const getHKListUrl = (totalUrl, startTime, endTime) => {\n const [url, query] = totalUrl.split('?');\n const urlParams = new URLSearchParams(query);\n urlParams.set('beginTime', getHKTimeString(startTime));\n urlParams.set('endTime', getHKTimeString(endTime));\n return `${url}?${urlParams.toString()}`;\n};\n/**\n *\n * 获取flv格式分段播放地址\n * @param totalUrl 总播放地址\n * @param startTime 开始时间\n * @param endTime 结束时间\n * @returns\n */\n// export const getFlvListUrl = (\n// totalUrl: string,\n// startTime: moment.MomentInput,\n// endTime: moment.MomentInput\n// ) => {\n// const [url, query] = totalUrl.split('?');\n// const urlParams = new URLSearchParams(query);\n// urlParams.set('beginTime', moment(startTime).format(TimeFormat.url));\n// urlParams.set('endTime', moment(endTime).format(TimeFormat.url));\n// return `${url}?${urlParams.toString()}`;\n// };\n/**\n * 获取地址栏中的参数信息\n * @param key 字段key\n * @param href 链接\n * @returns 字段值\n */\nexport const getUrlParam = (key, href = window.location.href) => {\n const paramObj = {};\n const matchList = href.match(/([^\\?&]+)=([^\\?&#]+)/g) || [];\n for (let i = 0, len = matchList.length; i < len; i++) {\n const r = matchList[i].match(/([^\\?&]+)=([^\\?&]+)/);\n paramObj[r[1]] = r[2];\n }\n if (key) {\n return paramObj[key];\n }\n else {\n return paramObj;\n }\n};\n/**\n *\n * @returns 返回UUID\n */\nexport function guid() {\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {\n const r = (Math.random() * 16) | 0, v = c == 'x' ? r : (r & 0x3) | 0x8;\n return v.toString(16);\n });\n}\nexport function loadJs(path) {\n if (!path || path.length === 0) {\n throw new Error('argument \"path\" is required !');\n }\n const head = document.getElementsByTagName('head')[0];\n const script = document.createElement('script');\n script.src = path;\n script.type = 'text/javascript';\n head.appendChild(script);\n}\nexport function loadCss(path) {\n if (!path || path.length === 0) {\n throw new Error('argument \"path\" is required !');\n }\n const head = document.getElementsByTagName('head')[0];\n const link = document.createElement('link');\n link.href = path;\n link.rel = 'stylesheet';\n link.type = 'text/css';\n head.appendChild(link);\n}\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vtx/player",
3
- "version": "1.4.17",
3
+ "version": "1.5.1",
4
4
  "private": false,
5
5
  "description": "视频业务组件",
6
6
  "main": "./lib/index.js",