@vtx/player 1.4.14 → 1.4.16

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.
@@ -247,6 +247,10 @@ var PlayerManager = /*#__PURE__*/function () {
247
247
  key: "close",
248
248
  value: function close(index) {
249
249
  this.player && this.player.reSetVideo(index);
250
+
251
+ if (this.dp) {
252
+ this.dp.ttxplayer.destroy();
253
+ }
250
254
  }
251
255
  }, {
252
256
  key: "resize",
@@ -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 }\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","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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"}
@@ -162,22 +162,35 @@ var HistoryPlayer = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
162
162
  while (1) {
163
163
  switch (_context.prev = _context.next) {
164
164
  case 0:
165
- if (!(type === 'icc_ws')) {
166
- _context.next = 5;
165
+ if (!(type === 'bd')) {
166
+ _context.next = 3;
167
167
  break;
168
168
  }
169
169
 
170
170
  _context.next = 3;
171
+ return new Promise(function (resolve) {
172
+ setTimeout(function () {
173
+ return resolve('');
174
+ }, 2000);
175
+ });
176
+
177
+ case 3:
178
+ if (!(type === 'icc_ws')) {
179
+ _context.next = 8;
180
+ break;
181
+ }
182
+
183
+ _context.next = 6;
171
184
  return _api["default"].getToken({
172
185
  deviceId: deviceId
173
186
  });
174
187
 
175
- case 3:
188
+ case 6:
176
189
  token = _context.sent;
177
190
  localStorage.setItem('accessToken', token);
178
191
 
179
- case 5:
180
- _context.next = 7;
192
+ case 8:
193
+ _context.next = 10;
181
194
  return new _player["default"]({
182
195
  url: url,
183
196
  devicePort: devicePort,
@@ -194,10 +207,10 @@ var HistoryPlayer = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
194
207
  type: type
195
208
  });
196
209
 
197
- case 7:
210
+ case 10:
198
211
  player = _context.sent;
199
212
  playerRef.current = player;
200
- _context.next = 11;
213
+ _context.next = 14;
201
214
  return setState({
202
215
  loading: true,
203
216
  error: false,
@@ -208,7 +221,7 @@ var HistoryPlayer = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
208
221
  speedVisible: player.type !== 'bd'
209
222
  });
210
223
 
211
- case 11:
224
+ case 14:
212
225
  player.playBack().then(function () {
213
226
  setState({
214
227
  play: true,
@@ -253,7 +266,7 @@ var HistoryPlayer = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
253
266
  }
254
267
  });
255
268
 
256
- case 13:
269
+ case 16:
257
270
  case "end":
258
271
  return _context.stop();
259
272
  }
@@ -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","controls","progressVisible","speedVisible","state","setState","useImperativeHandle","seekTo","time","player","current","useEffect","container","clearInterval","API","getToken","token","localStorage","setItem","Player","live","playBack","format","TimeFormat","params","i","setInterval","add","unix","Math","floor","onTimeUpdate","_currentTime","speed","destroy","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 { 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 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 vRef.current && clearInterval(vRef.current);\n if (!url || !container)\n return;\n let player = null;\n (() => __awaiter(void 0, void 0, void 0, function* () {\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 = 7;\n vRef.current = setInterval(() => {\n // 当时间大于等于结束时间时重置\n if (moment(startTime).add(i, 's').unix() >= moment(endTime).unix()) {\n clearInterval(vRef.current);\n setState({\n currentTime: '',\n progress: 0,\n });\n }\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 }, 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 vRef.current && clearInterval(vRef.current);\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 /** 截图方法 */\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 const currentTime = Math.floor((totalTime * value) / 100);\n const player = playerRef.current;\n setState({ progress: value });\n player === null || player === void 0 ? void 0 : player.seekTo(currentTime);\n setState({\n currentTime: moment(state.currentTime)\n .add(currentTime, 'seconds')\n .format(TimeFormat.params),\n });\n let i = 7;\n vRef.current = setInterval(() => {\n if (moment(startTime).unix() + i + currentTime >= moment(endTime).unix()) {\n clearInterval(vRef.current);\n setState({\n currentTime: '',\n progress: 0,\n });\n }\n 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 vRef.current && clearInterval(vRef.current);\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 vRef.current && clearInterval(vRef.current);\n let i = 2;\n vRef.current = setInterval(() => {\n if (moment(state.currentTime).unix() + i >= moment(endTime).unix()) {\n clearInterval(vRef.current);\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":";;;;;;;;;AASA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AACA;;;;+CAnBA,oJ;;;;;;;;;;;;;;AADA,IAAIA,SAAS,GAAI,UAAQ,SAAKA,SAAd,IAA4B,UAAUC,OAAV,EAAmBC,UAAnB,EAA+BC,CAA/B,EAAkCC,SAAlC,EAA6C;EACrF,SAASC,KAAT,CAAeC,KAAf,EAAsB;IAAE,OAAOA,KAAK,YAAYH,CAAjB,GAAqBG,KAArB,GAA6B,IAAIH,CAAJ,CAAM,UAAUI,OAAV,EAAmB;MAAEA,OAAO,CAACD,KAAD,CAAP;IAAiB,CAA5C,CAApC;EAAoF;;EAC5G,OAAO,KAAKH,CAAC,KAAKA,CAAC,GAAGK,OAAT,CAAN,EAAyB,UAAUD,OAAV,EAAmBE,MAAnB,EAA2B;IACvD,SAASC,SAAT,CAAmBJ,KAAnB,EAA0B;MAAE,IAAI;QAAEK,IAAI,CAACP,SAAS,CAACQ,IAAV,CAAeN,KAAf,CAAD,CAAJ;MAA8B,CAApC,CAAqC,OAAOO,CAAP,EAAU;QAAEJ,MAAM,CAACI,CAAD,CAAN;MAAY;IAAE;;IAC3F,SAASC,QAAT,CAAkBR,KAAlB,EAAyB;MAAE,IAAI;QAAEK,IAAI,CAACP,SAAS,CAAC,OAAD,CAAT,CAAmBE,KAAnB,CAAD,CAAJ;MAAkC,CAAxC,CAAyC,OAAOO,CAAP,EAAU;QAAEJ,MAAM,CAACI,CAAD,CAAN;MAAY;IAAE;;IAC9F,SAASF,IAAT,CAAcI,MAAd,EAAsB;MAAEA,MAAM,CAACC,IAAP,GAAcT,OAAO,CAACQ,MAAM,CAACT,KAAR,CAArB,GAAsCD,KAAK,CAACU,MAAM,CAACT,KAAR,CAAL,CAAoBW,IAApB,CAAyBP,SAAzB,EAAoCI,QAApC,CAAtC;IAAsF;;IAC9GH,IAAI,CAAC,CAACP,SAAS,GAAGA,SAAS,CAACc,KAAV,CAAgBjB,OAAhB,EAAyBC,UAAU,IAAI,EAAvC,CAAb,EAAyDU,IAAzD,EAAD,CAAJ;EACH,CALM,CAAP;AAMH,CARD;;AAqBO,IAAMO,aAAa,gBAAG,IAAAC,iBAAA,EAAW,UAACC,KAAD,EAAQC,GAAR,EAAgB;EACpD,IAAQC,GAAR,GAA6RF,KAA7R,CAAQE,GAAR;EAAA,IAAaC,QAAb,GAA6RH,KAA7R,CAAaG,QAAb;EAAA,IAAuBC,QAAvB,GAA6RJ,KAA7R,CAAuBI,QAAvB;EAAA,IAAiCC,UAAjC,GAA6RL,KAA7R,CAAiCK,UAAjC;EAAA,IAA6CC,UAA7C,GAA6RN,KAA7R,CAA6CM,UAA7C;EAAA,IAAyDC,UAAzD,GAA6RP,KAA7R,CAAyDO,UAAzD;EAAA,IAAqEC,UAArE,GAA6RR,KAA7R,CAAqEQ,UAArE;EAAA,IAAiFC,IAAjF,GAA6RT,KAA7R,CAAiFS,IAAjF;EAAA,IAAuFC,WAAvF,GAA6RV,KAA7R,CAAuFU,WAAvF;EAAA,mBAA6RV,KAA7R,CAAoGW,KAApG;EAAA,IAAoGA,KAApG,6BAA4G,MAA5G;EAAA,oBAA6RX,KAA7R,CAAoHY,MAApH;EAAA,IAAoHA,MAApH,8BAA6H,MAA7H;EAAA,IAAqIC,WAArI,GAA6Rb,KAA7R,CAAqIa,WAArI;EAAA,2BAA6Rb,KAA7R,CAAkJc,aAAlJ;EAAA,IAAkJA,aAAlJ,qCAAkK,CAAlK;EAAA,IAAqKC,SAArK,GAA6Rf,KAA7R,CAAqKe,SAArK;EAAA,IAAgLC,OAAhL,GAA6RhB,KAA7R,CAAgLgB,OAAhL;EAAA,IAAyLC,YAAzL,GAA6RjB,KAA7R,CAAyLiB,YAAzL;EAAA,IAAuMC,UAAvM,GAA6RlB,KAA7R,CAAuMkB,UAAvM;EAAA,sBAA6RlB,KAA7R,CAAmNmB,QAAnN;EAAA,IAAmNA,QAAnN,gCAA8N,KAA9N;EAAA,kBAA6RnB,KAA7R,CAAqOoB,IAArO;EAAA,IAAqOA,IAArO,4BAA4O,EAA5O;EAAA,IAAgPC,WAAhP,GAA6RrB,KAA7R,CAAgPqB,WAAhP;EAAA,4BAA6RrB,KAA7R,CAA6PsB,cAA7P;EAAA,IAA6PA,cAA7P,sCAA8QC,SAA9Q;EACA,IAAMC,IAAI,GAAG,IAAAC,aAAA,EAAO,IAAP,CAAb;EACA,IAAMC,SAAS,GAAG,IAAAC,kBAAA,EAAOX,OAAP,EAAgBY,IAAhB,CAAqB,IAAAD,kBAAA,EAAOZ,SAAP,CAArB,EAAwC,SAAxC,CAAlB;EACA,IAAMc,YAAY,GAAG,IAAAJ,aAAA,EAAO,IAAP,CAArB;EACA,IAAMK,OAAO,GAAG,IAAAL,aAAA,EAAO,IAAP,CAAhB;EACA,IAAMM,WAAW,GAAG,IAAAN,aAAA,EAAO,IAAP,CAApB;EACA,IAAMO,SAAS,GAAG,IAAAP,aAAA,GAAlB;;EACA,qBAA6C,IAAAQ,qBAAA,EAAcH,OAAd,CAA7C;EAAA;EAAA,IAAOI,YAAP;EAAA,IAAuBC,gBAAvB,sBAAuBA,gBAAvB;;EACA,mBAA0B,IAAAC,mBAAA,EAAY;IAClCC,IAAI,EAAE,KAD4B;IAElCC,KAAK,EAAE,KAF2B;IAGlCC,OAAO,EAAE,KAHyB;IAIlCC,EAAE,EAAE,mBAAmB,IAAAC,oBAAA,GAJW;IAKlCC,MAAM,EAAE,CAL0B;IAMlCC,WAAW,EAAE,EANqB;IAOlCC,QAAQ,EAAE,CAPwB;IAQlCC,QAAQ,EAAE;MACND,QAAQ,EAAE;IADJ,CARwB;IAWlCE,eAAe,EAAE,IAXiB;IAYlCC,YAAY,EAAE;EAZoB,CAAZ,CAA1B;EAAA;EAAA,IAAOC,KAAP;EAAA,IAAcC,QAAd;;EAcA,IAAAC,0BAAA,EAAoBjD,GAApB,EAAyB,YAAM;IAC3B,OAAO;MACHkD,MAAM,EAAE,gBAACC,IAAD,EAAU;QACd,IAAMC,MAAM,GAAGrB,SAAS,CAACsB,OAAzB;;QACA,IAAID,MAAJ,EAAY;UACR,IAAMV,WAAW,GAAG,IAAAhB,kBAAA,EAAOyB,IAAP,EAAaxB,IAAb,CAAkB,IAAAD,kBAAA,EAAOZ,SAAP,CAAlB,EAAqC,SAArC,CAApB;UACA,OAAOsC,MAAM,CAACF,MAAP,CAAcR,WAAd,CAAP;QACH,CAHD,MAIK;UACD,OAAOxD,OAAO,CAACC,MAAR,EAAP;QACH;MACJ;IAVE,CAAP;EAYH,CAbD;EAcA,IAAAmE,gBAAA,EAAU,YAAM;IACZ,IAAMC,SAAS,GAAG3B,YAAY,CAACyB,OAA/B;IACA9B,IAAI,CAAC8B,OAAL,IAAgBG,aAAa,CAACjC,IAAI,CAAC8B,OAAN,CAA7B;IACA,IAAI,CAACpD,GAAD,IAAQ,CAACsD,SAAb,EACI;IACJ,IAAIH,MAAM,GAAG,IAAb;;IACA,CAAC;MAAA,OAAM1E,SAAS,CAAC,KAAK,CAAN,EAAS,KAAK,CAAd,EAAiB,KAAK,CAAtB,0CAAyB;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA,MAEjC8B,IAAI,KAAK,QAFwB;kBAAA;kBAAA;gBAAA;;gBAAA;gBAGnB,OAAMiD,eAAA,CAAIC,QAAJ,CAAa;kBAC7BxD,QAAQ,EAARA;gBAD6B,CAAb,CAAN;;cAHmB;gBAG3ByD,KAH2B;gBAMjCC,YAAY,CAACC,OAAb,CAAqB,aAArB,EAAoCF,KAApC;;cANiC;gBAAA;gBAQ5B,OAAM,IAAIG,kBAAJ,CAAW;kBACtB7D,GAAG,EAAHA,GADsB;kBAEtBG,UAAU,EAAVA,UAFsB;kBAGtBD,QAAQ,EAARA,QAHsB;kBAItBE,UAAU,EAAVA,UAJsB;kBAKtBC,UAAU,EAAVA,UALsB;kBAMtBJ,QAAQ,EAARA,QANsB;kBAOtBK,UAAU,EAAVA,UAPsB;kBAQtBE,WAAW,EAAXA,WARsB;kBAStB8C,SAAS,EAATA,SATsB;kBAUtBQ,IAAI,EAAE,KAVgB;kBAWtBjD,SAAS,EAATA,SAXsB;kBAYtBC,OAAO,EAAPA,OAZsB;kBAatBP,IAAI,EAAJA;gBAbsB,CAAX,CAAN;;cAR4B;gBAQrC4C,MARqC;gBAuBrCrB,SAAS,CAACsB,OAAV,GAAoBD,MAApB;gBAvBqC;gBAwBrC,OAAMJ,QAAQ,CAAC;kBACXV,OAAO,EAAE,IADE;kBAEXD,KAAK,EAAE,KAFI;kBAGXO,QAAQ,EAAE;oBAAED,QAAQ,EAAES,MAAM,CAAC5C,IAAP,KAAgB,OAAhB,IAA2B4C,MAAM,CAAC5C,IAAP,KAAgB;kBAAvD,CAHC;kBAIXqC,eAAe,EAAEO,MAAM,CAAC5C,IAAP,KAAgB,IAJtB;kBAKXsC,YAAY,EAAEM,MAAM,CAAC5C,IAAP,KAAgB;gBALnB,CAAD,CAAd;;cAxBqC;gBA+BrC4C,MAAM,CACDY,QADL,GAEKrE,IAFL,CAEU,YAAM;kBACZqD,QAAQ,CAAC;oBACLZ,IAAI,EAAE,IADD;oBAELM,WAAW,EAAE,IAAAhB,kBAAA,EAAOZ,SAAP,EAAkBmD,MAAlB,CAAyBC,iBAAA,CAAWC,MAApC;kBAFR,CAAD,CAAR;kBAIA,IAAIC,CAAC,GAAG,CAAR;kBACA7C,IAAI,CAAC8B,OAAL,GAAegB,WAAW,CAAC,YAAM;oBAC7B;oBACA,IAAI,IAAA3C,kBAAA,EAAOZ,SAAP,EAAkBwD,GAAlB,CAAsBF,CAAtB,EAAyB,GAAzB,EAA8BG,IAA9B,MAAwC,IAAA7C,kBAAA,EAAOX,OAAP,EAAgBwD,IAAhB,EAA5C,EAAoE;sBAChEf,aAAa,CAACjC,IAAI,CAAC8B,OAAN,CAAb;sBACAL,QAAQ,CAAC;wBACLN,WAAW,EAAE,EADR;wBAELC,QAAQ,EAAE;sBAFL,CAAD,CAAR;oBAIH;;oBACDyB,CAAC;;oBACD,IAAI,CAACrB,KAAK,CAACT,OAAX,EAAoB;sBAChBU,QAAQ,CAAC;wBACLN,WAAW,EAAE,IAAAhB,kBAAA,EAAOZ,SAAP,EACRwD,GADQ,CACJF,CADI,EACD,GADC,EAERH,MAFQ,CAEDC,iBAAA,CAAWC,MAFV,CADR;wBAILxB,QAAQ,EAAE6B,IAAI,CAACC,KAAL,CAAYL,CAAC,GAAG3C,SAAL,GAAkB,GAA7B;sBAJL,CAAD,CAAR;oBAMH;kBACJ,CAlByB,EAkBvB,IAlBuB,CAA1B;gBAmBH,CA3BD,WA4BW;kBAAA,OAAMuB,QAAQ,CAAC;oBAAEX,KAAK,EAAE;kBAAT,CAAD,CAAd;gBAAA,CA5BX,aA6Ba;kBAAA,OAAMW,QAAQ,CAAC;oBAAEV,OAAO,EAAE;kBAAX,CAAD,CAAd;gBAAA,CA7Bb;gBA8BAc,MAAM,CAACsB,YAAP,CAAoB,UAACC,YAAD,EAAeC,KAAf,EAAyB;kBACzC,IAAI,CAAC7B,KAAK,CAACT,OAAX,EAAoB;oBAChBU,QAAQ,CAAC;sBACL;sBACA;sBACA4B,KAAK,EAALA;oBAHK,CAAD,CAAR;kBAKH;gBACJ,CARD;;cA7DqC;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,CAAzB,EAAf;IAAA,CAAD;;IAuEA,OAAO,YAAM;MACTxB,MAAM,CAACyB,OAAP;MACA7B,QAAQ,CAAC;QAAEX,KAAK,EAAE,KAAT;QAAgBC,OAAO,EAAE,KAAzB;QAAgCF,IAAI,EAAE;MAAtC,CAAD,CAAR;MACAb,IAAI,CAAC8B,OAAL,IAAgBG,aAAa,CAACjC,IAAI,CAAC8B,OAAN,CAA7B;IACH,CAJD;EAKH,CAlFD,EAkFG,CAACpD,GAAD,EAAMa,SAAN,EAAiBC,OAAjB,CAlFH;EAmFA,IAAAuC,gBAAA,EAAU,YAAM;IACZ,IAAI,CAACP,KAAK,CAACT,OAAX,EAAoB;MAChBtB,YAAY,IACRA,YAAY,CAAC+B,KAAK,CAACL,WAAN,GAAoB,IAAAhB,kBAAA,EAAOqB,KAAK,CAACL,WAAb,EAA0BuB,MAA1B,CAAiCC,iBAAA,CAAWC,MAA5C,CAApB,GAA0E,EAA3E,EAA+EpB,KAAK,CAAC6B,KAArF,CADhB;IAEH;EACJ,CALD,EAKG,CAAC7B,KAAK,CAACL,WAAP,EAAoBK,KAAK,CAAC6B,KAA1B,CALH;EAMA;;EACA,IAAME,aAAa,GAAG,SAAhBA,aAAgB,CAACvF,CAAD,EAAO;IACzB,IAAM6D,MAAM,GAAGrB,SAAS,CAACsB,OAAzB;IACAD,MAAM,IAAIA,MAAM,CAAC2B,OAAP,CAAenE,WAAf,EAA4BK,UAA5B,CAAV;IACA1B,CAAC,CAACyF,eAAF;EACH,CAJD;EAKA;;;EACA,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAmB,CAAC1F,CAAD,EAAO;IAC5B2C,gBAAgB;IAChB,IAAMkB,MAAM,GAAGrB,SAAS,CAACsB,OAAzB;IACAD,MAAM,IAAIA,MAAM,CAAC8B,MAAP,EAAV;IACA3F,CAAC,CAACyF,eAAF;EACH,CALD;EAMA;;;EACA,IAAMG,YAAY,GAAG,SAAfA,YAAe,CAACnG,KAAD,EAAW;IAC5B,IAAIuC,IAAI,CAAC8B,OAAT,EACIG,aAAa,CAACjC,IAAI,CAAC8B,OAAN,CAAb;IACJ,IAAMX,WAAW,GAAG8B,IAAI,CAACC,KAAL,CAAYhD,SAAS,GAAGzC,KAAb,GAAsB,GAAjC,CAApB;IACA,IAAMoE,MAAM,GAAGrB,SAAS,CAACsB,OAAzB;IACAL,QAAQ,CAAC;MAAEL,QAAQ,EAAE3D;IAAZ,CAAD,CAAR;IACAoE,MAAM,KAAK,IAAX,IAAmBA,MAAM,KAAK,KAAK,CAAnC,GAAuC,KAAK,CAA5C,GAAgDA,MAAM,CAACF,MAAP,CAAcR,WAAd,CAAhD;IACAM,QAAQ,CAAC;MACLN,WAAW,EAAE,IAAAhB,kBAAA,EAAOqB,KAAK,CAACL,WAAb,EACR4B,GADQ,CACJ5B,WADI,EACS,SADT,EAERuB,MAFQ,CAEDC,iBAAA,CAAWC,MAFV;IADR,CAAD,CAAR;IAKA,IAAIC,CAAC,GAAG,CAAR;IACA7C,IAAI,CAAC8B,OAAL,GAAegB,WAAW,CAAC,YAAM;MAC7B,IAAI,IAAA3C,kBAAA,EAAOZ,SAAP,EAAkByD,IAAlB,KAA2BH,CAA3B,GAA+B1B,WAA/B,IAA8C,IAAAhB,kBAAA,EAAOX,OAAP,EAAgBwD,IAAhB,EAAlD,EAA0E;QACtEf,aAAa,CAACjC,IAAI,CAAC8B,OAAN,CAAb;QACAL,QAAQ,CAAC;UACLN,WAAW,EAAE,EADR;UAELC,QAAQ,EAAE;QAFL,CAAD,CAAR;MAIH;;MACD,IAAI,CAACI,KAAK,CAACT,OAAX,EAAoB;QAChBU,QAAQ,CAAC;UACLN,WAAW,EAAE,IAAAhB,kBAAA,EAAOZ,SAAP,EACRwD,GADQ,CACJF,CAAC,GAAG1B,WADA,EACa,GADb,EAERuB,MAFQ,CAEDC,iBAAA,CAAWC,MAFV,CADR;UAILxB,QAAQ,EAAE6B,IAAI,CAACC,KAAL,CAAY,CAACL,CAAC,GAAG1B,WAAL,IAAoBjB,SAArB,GAAkC,GAA7C;QAJL,CAAD,CAAR;QAMA2C,CAAC;MACJ;IACJ,CAjByB,EAiBvB,IAjBuB,CAA1B;EAkBH,CA/BD;EAgCA;;;EACA,IAAMgB,WAAW,GAAG,SAAdA,WAAc,GAAM;IACtB,IAAMhC,MAAM,GAAGrB,SAAS,CAACsB,OAAzB;IACAD,MAAM,KAAK,IAAX,IAAmBA,MAAM,KAAK,KAAK,CAAnC,GAAuC,KAAK,CAA5C,GAAgDA,MAAM,CAACiC,KAAP,CAAa,YAAM;MAC/DrC,QAAQ,CAAC;QAAEZ,IAAI,EAAE;MAAR,CAAD,CAAR;IACH,CAF+C,CAAhD;IAGAb,IAAI,CAAC8B,OAAL,IAAgBG,aAAa,CAACjC,IAAI,CAAC8B,OAAN,CAA7B;EACH,CAND;EAOA;;;EACA,IAAMiC,YAAY,GAAG,SAAfA,YAAe,GAAM;IACvB,IAAMlC,MAAM,GAAGrB,SAAS,CAACsB,OAAzB;IACAD,MAAM,KAAK,IAAX,IAAmBA,MAAM,KAAK,KAAK,CAAnC,GAAuC,KAAK,CAA5C,GAAgDA,MAAM,CAACmC,MAAP,CAAc,YAAM;MAChEvC,QAAQ,CAAC;QAAEZ,IAAI,EAAE;MAAR,CAAD,CAAR;IACH,CAF+C,CAAhD;IAGAb,IAAI,CAAC8B,OAAL,IAAgBG,aAAa,CAACjC,IAAI,CAAC8B,OAAN,CAA7B;IACA,IAAIe,CAAC,GAAG,CAAR;IACA7C,IAAI,CAAC8B,OAAL,GAAegB,WAAW,CAAC,YAAM;MAC7B,IAAI,IAAA3C,kBAAA,EAAOqB,KAAK,CAACL,WAAb,EAA0B6B,IAA1B,KAAmCH,CAAnC,IAAwC,IAAA1C,kBAAA,EAAOX,OAAP,EAAgBwD,IAAhB,EAA5C,EAAoE;QAChEf,aAAa,CAACjC,IAAI,CAAC8B,OAAN,CAAb;QACAL,QAAQ,CAAC;UACLN,WAAW,EAAE,EADR;UAELC,QAAQ,EAAE;QAFL,CAAD,CAAR;MAIH;;MACD,IAAI,CAACI,KAAK,CAACT,OAAX,EAAoB;QAChBU,QAAQ,CAAC;UACLN,WAAW,EAAE,IAAAhB,kBAAA,EAAOqB,KAAK,CAACL,WAAb,EAA0B4B,GAA1B,CAA8BF,CAA9B,EAAiC,GAAjC,EAAsCH,MAAtC,CAA6CC,iBAAA,CAAWC,MAAxD,CADR;UAELxB,QAAQ,EAAE6B,IAAI,CAACC,KAAL,CAAY,CAACL,CAAC,GAAG,IAAA1C,kBAAA,EAAOqB,KAAK,CAACL,WAAb,EAA0B6B,IAA1B,EAAL,IAAyC9C,SAA1C,GAAuD,GAAlE;QAFL,CAAD,CAAR;QAIA2C,CAAC;MACJ;IACJ,CAfyB,EAevB,IAfuB,CAA1B;EAgBH,CAvBD;;EAwBA,OAAQ,IAAAoB,gBAAA,EAAM,KAAN,EAAaC,MAAM,CAACC,MAAP,CAAc;IAAEC,SAAS,EAAE,oBAAb;IAAmC3F,GAAG,EAAE6B,OAAxC;IAAiD+D,KAAK,EAAE;MAAElF,KAAK,EAALA,KAAF;MAASC,MAAM,EAANA;IAAT;EAAxD,CAAd,EAA2F;IAAEkF,QAAQ,EAAE,CAAC,IAAAC,eAAA,EAAK,KAAL,EAAY;MAAE9F,GAAG,EAAE4B,YAAP;MAAqBgE,KAAK,EAAE;QAAEjF,MAAM,EAAE,MAAV;QAAkBD,KAAK,EAAE;MAAzB,CAA5B;MAA+D6B,EAAE,EAAEQ,KAAK,CAACR;IAAzE,CAAZ,CAAD,EAA6FQ,KAAK,CAACT,OAAN,IAAiB,IAAAwD,eAAA,EAAKC,sBAAL,EAAmB,EAAnB,CAA9G,EAAsI,IAAAD,eAAA,EAAKE,mBAAL,EAAgB;MAAE9E,QAAQ,EAAEA,QAAZ;MAAsBC,IAAI,EAAEA;IAA5B,CAAhB,CAAtI,EAA2L,IAAAqE,gBAAA,EAAM,KAAN,EAAaC,MAAM,CAACC,MAAP,CAAc;MAAEC,SAAS,EAAE,UAAb;MAAyB3F,GAAG,EAAE8B,WAA9B;MAA2C8D,KAAK,EAAE;QAAEK,MAAM,EAAEpF,aAAV;QAAyBqF,OAAO,EAAE7E,cAAc,GAAG,CAAH,GAAOC;MAAvD;IAAlD,CAAd,EAAsI;MAAEuE,QAAQ,EAAE,CAAC9C,KAAK,CAACX,IAAN,GAAc,IAAA0D,eAAA,EAAKK,gBAAL,EAAgB;QAAEC,OAAO,EAAEhB;MAAX,CAAhB,CAAd,GAA4D,IAAAU,eAAA,EAAKO,eAAL,EAAe;QAAED,OAAO,EAAEd;MAAX,CAAf,CAA7D,EAAyGvC,KAAK,CAACF,eAAN,IAA0B,IAAA2C,gBAAA,EAAMc,oBAAN,EAAiB;QAAET,QAAQ,EAAE,CAAC,IAAAL,gBAAA,EAAM,KAAN,EAAaC,MAAM,CAACC,MAAP,CAAc;UAAEC,SAAS,EAAE;QAAb,CAAd,EAAqC;UAAEE,QAAQ,EAAE,CAAC,IAAAC,eAAA,EAAK,MAAL,EAAaL,MAAM,CAACC,MAAP,CAAc;YAAEC,SAAS,EAAE;UAAb,CAAd,EAAwC;YAAEE,QAAQ,EAAE9C,KAAK,CAACL,WAAN,GAC7sB,IAAAhB,kBAAA,EAAOqB,KAAK,CAACL,WAAb,EAA0BuB,MAA1B,CAAiC,UAAjC,CAD6sB,GAE7sB;UAFisB,CAAxC,CAAb,CAAD,EAEnoB,IAAAuB,gBAAA,EAAM,MAAN,EAAcC,MAAM,CAACC,MAAP,CAAc;YAAEC,SAAS,EAAE;UAAb,CAAd,EAAsC;YAAEE,QAAQ,EAAE,CAAC,GAAD,EAAM,IAAAnE,kBAAA,EAAOX,OAAP,EAAgBkD,MAAhB,CAAuB,UAAvB,CAAN;UAAZ,CAAtC,CAAd,CAFmoB;QAAZ,CAArC,CAAb,CAAD,EAEhd,IAAA6B,eAAA,EAAK,KAAL,EAAYL,MAAM,CAACC,MAAP,CAAc;UAAEC,SAAS,EAAE;QAAb,CAAd,EAAuC;UAAEE,QAAQ,EAAE,IAAAC,eAAA,EAAKS,kBAAL,EAAa;YAAEC,QAAQ,EAAE,CAACzD,KAAK,CAACH,QAAN,CAAeD,QAA5B;YAAsC8D,YAAY,EAAE,IAApD;YAA0DC,QAAQ,EAAEvB,YAApE;YAAkFnG,KAAK,EAAE+D,KAAK,CAACJ;UAA/F,CAAb;QAAZ,CAAvC,CAAZ,CAFgd;MAAZ,CAAjB,CAAnI,EAE/G,IAAA6C,gBAAA,EAAMmB,iBAAN,EAAalB,MAAM,CAACC,MAAP,CAAc;QAAEC,SAAS,EAAE,OAAb;QAAsBiB,IAAI,EAAE,EAA5B;QAAgCC,KAAK,EAAE;MAAvC,CAAd,EAAiE;QAAEhB,QAAQ,EAAE,CAAC,IAAAC,eAAA,EAAKgB,uBAAL,EAAoB;UAAE1D,MAAM,EAAErB,SAAS,CAACsB,OAApB;UAA6B0D,YAAY,EAAE,CAA3C;UAA8CxD,SAAS,EAAEzB,WAAW,CAACuB;QAArE,CAApB,CAAD,EAAsGN,KAAK,CAACD,YAAN,IAAuB,IAAAgD,eAAA,EAAKkB,sBAAL,EAAmB;UAAE5D,MAAM,EAAErB,SAAS,CAACsB,OAApB;UAA6BE,SAAS,EAAEzB,WAAW,CAACuB;QAApD,CAAnB,CAA7H,EAAiN,CAAC,CAACpC,UAAF,IAAgB,IAAA6E,eAAA,EAAKmB,kBAAL,EAAkB;UAAEb,OAAO,EAAEtB;QAAX,CAAlB,CAAjO,EAAgR1D,WAAW,GAAGA,WAAH,GAAiB,IAA5S,EAAkTa,YAAY,GAAI,IAAA6D,eAAA,EAAKoB,yBAAL,EAAyB;UAAEd,OAAO,EAAEnB;QAAX,CAAzB,CAAJ,GAAgE,IAAAa,eAAA,EAAKqB,qBAAL,EAAqB;UAAEf,OAAO,EAAEnB;QAAX,CAArB,CAA9X;MAAZ,CAAjE,CAAb,CAF+G;IAAZ,CAAtI,CAAb,CAA3L;EAAZ,CAA3F,CAAb,CAAR;AAGH,CAhN4B,CAAtB;;AAiNPpF,aAAa,CAACuH,WAAd,GAA4B,eAA5B;eACevH,a"}
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","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","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 { 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 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 vRef.current && clearInterval(vRef.current);\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 = 7;\n vRef.current = setInterval(() => {\n // 当时间大于等于结束时间时重置\n if (moment(startTime).add(i, 's').unix() >= moment(endTime).unix()) {\n clearInterval(vRef.current);\n setState({\n currentTime: '',\n progress: 0,\n });\n }\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 }, 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 vRef.current && clearInterval(vRef.current);\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 /** 截图方法 */\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 const currentTime = Math.floor((totalTime * value) / 100);\n const player = playerRef.current;\n setState({ progress: value });\n player === null || player === void 0 ? void 0 : player.seekTo(currentTime);\n setState({\n currentTime: moment(state.currentTime)\n .add(currentTime, 'seconds')\n .format(TimeFormat.params),\n });\n let i = 7;\n vRef.current = setInterval(() => {\n if (moment(startTime).unix() + i + currentTime >= moment(endTime).unix()) {\n clearInterval(vRef.current);\n setState({\n currentTime: '',\n progress: 0,\n });\n }\n 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 vRef.current && clearInterval(vRef.current);\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 vRef.current && clearInterval(vRef.current);\n let i = 2;\n vRef.current = setInterval(() => {\n if (moment(state.currentTime).unix() + i >= moment(endTime).unix()) {\n clearInterval(vRef.current);\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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"}
@@ -139,7 +139,7 @@ var Player = /*#__PURE__*/function () {
139
139
  if (this.type === 'hk_ws') {
140
140
  this.player = new window.JSPlugin({
141
141
  szId: container.id,
142
- szBasePath: './',
142
+ szBasePath: './resources/',
143
143
  iMaxSplit: 1,
144
144
  iCurrentSplit: 1
145
145
  });
@@ -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: './',\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","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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vtx/player",
3
- "version": "1.4.14",
3
+ "version": "1.4.16",
4
4
  "private": false,
5
5
  "description": "视频业务组件",
6
6
  "main": "./lib/index.js",