@vtx/player 1.4.10 → 1.4.12
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.
- package/lib/bd/PlayerManager.d.ts +89 -0
- package/lib/bd/PlayerManager.js +353 -0
- package/lib/bd/PlayerManager.js.map +1 -0
- package/lib/history-control-v2/index.js +1 -1
- package/lib/history-control-v2/index.js.map +1 -1
- package/lib/history-player/index.js +82 -17
- package/lib/history-player/index.js.map +1 -1
- package/lib/live-control-v2/index.d.ts +2 -0
- package/lib/live-control-v2/index.js +1 -1
- package/lib/live-control-v2/index.js.map +1 -1
- package/lib/live-player/index.d.ts +4 -0
- package/lib/live-player/index.js +4 -0
- package/lib/live-player/index.js.map +1 -1
- package/lib/player/index.d.ts +6 -2
- package/lib/player/index.js +82 -47
- package/lib/player/index.js.map +1 -1
- package/lib/utils/index.d.ts +2 -0
- package/lib/utils/index.js +43 -1
- package/lib/utils/index.js.map +1 -1
- package/package.json +1 -1
package/lib/player/index.js
CHANGED
|
@@ -7,13 +7,15 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports["default"] = void 0;
|
|
9
9
|
|
|
10
|
-
var _PlayerManager = _interopRequireDefault(require("../
|
|
10
|
+
var _PlayerManager = _interopRequireDefault(require("../bd/PlayerManager"));
|
|
11
11
|
|
|
12
|
-
var _PlayerManager2 = _interopRequireDefault(require("../
|
|
12
|
+
var _PlayerManager2 = _interopRequireDefault(require("../h264/PlayerManager"));
|
|
13
|
+
|
|
14
|
+
var _PlayerManager3 = _interopRequireDefault(require("../icc/PlayerManager"));
|
|
13
15
|
|
|
14
16
|
var _utils = require("../utils");
|
|
15
17
|
|
|
16
|
-
var
|
|
18
|
+
var _PlayerManager4 = _interopRequireDefault(require("../webrtc/PlayerManager"));
|
|
17
19
|
|
|
18
20
|
var _flv = _interopRequireDefault(require("flv.js"));
|
|
19
21
|
|
|
@@ -135,12 +137,13 @@ var Player = /*#__PURE__*/function () {
|
|
|
135
137
|
if (this.type === 'hk_ws') {
|
|
136
138
|
this.player = new window.JSPlugin({
|
|
137
139
|
szId: container.id,
|
|
138
|
-
szBasePath: './
|
|
140
|
+
szBasePath: './',
|
|
139
141
|
iMaxSplit: 1,
|
|
140
142
|
iCurrentSplit: 1
|
|
141
143
|
});
|
|
142
144
|
var wrapDiv = document.getElementById(container.id);
|
|
143
145
|
this.video = wrapDiv.getElementsByTagName('video')[0];
|
|
146
|
+
this.video.preload = 'auto';
|
|
144
147
|
} // 处理海康视频
|
|
145
148
|
|
|
146
149
|
|
|
@@ -169,7 +172,7 @@ var Player = /*#__PURE__*/function () {
|
|
|
169
172
|
dd.removeChild(dd.firstChild);
|
|
170
173
|
}
|
|
171
174
|
|
|
172
|
-
this.player = new
|
|
175
|
+
this.player = new _PlayerManager3["default"]({
|
|
173
176
|
ip: window.location.protocol === 'http:' ? deviceIp : "".concat(deviceIp || '', ":").concat(devicePort || ''),
|
|
174
177
|
el: container.id,
|
|
175
178
|
type: live ? 'real' : 'record',
|
|
@@ -186,7 +189,7 @@ var Player = /*#__PURE__*/function () {
|
|
|
186
189
|
var id = "".concat(container.id, "_").concat(Date.now());
|
|
187
190
|
video.id = id;
|
|
188
191
|
container.appendChild(video);
|
|
189
|
-
this.player = new
|
|
192
|
+
this.player = new _PlayerManager4["default"]({
|
|
190
193
|
el: id,
|
|
191
194
|
url: this.url,
|
|
192
195
|
type: live
|
|
@@ -201,11 +204,23 @@ var Player = /*#__PURE__*/function () {
|
|
|
201
204
|
var _id = 'playerh264';
|
|
202
205
|
video.id = _id;
|
|
203
206
|
container.appendChild(video);
|
|
204
|
-
this.player = new
|
|
207
|
+
this.player = new _PlayerManager2["default"]({
|
|
205
208
|
id: _id,
|
|
206
209
|
url: this.url
|
|
207
210
|
});
|
|
208
211
|
}
|
|
212
|
+
|
|
213
|
+
if (this.type === 'bd') {
|
|
214
|
+
// const path = './bd/';
|
|
215
|
+
// loadJs(path + 'js/flv.min.js');
|
|
216
|
+
// loadJs(path + 'js/DPlayer.min.js');
|
|
217
|
+
// loadJs(path + 'js/cmsv6player.min.js');
|
|
218
|
+
this.player = new _PlayerManager["default"]({
|
|
219
|
+
el: container.id,
|
|
220
|
+
type: live,
|
|
221
|
+
url: this.url
|
|
222
|
+
});
|
|
223
|
+
}
|
|
209
224
|
}
|
|
210
225
|
/** 播放 */
|
|
211
226
|
|
|
@@ -251,6 +266,12 @@ var Player = /*#__PURE__*/function () {
|
|
|
251
266
|
_player3.play();
|
|
252
267
|
}
|
|
253
268
|
|
|
269
|
+
if (this.type === 'bd') {
|
|
270
|
+
var _player4 = this.player;
|
|
271
|
+
|
|
272
|
+
_player4.playRealVideo();
|
|
273
|
+
}
|
|
274
|
+
|
|
254
275
|
return Promise.resolve();
|
|
255
276
|
}
|
|
256
277
|
/** 回放 */
|
|
@@ -268,9 +289,9 @@ var Player = /*#__PURE__*/function () {
|
|
|
268
289
|
}, 1, (0, _utils.getHKTimeString)(this.startTime), (0, _utils.getHKTimeString)(this.endTime));
|
|
269
290
|
return result;
|
|
270
291
|
} else if (this.type === 'icc_ws') {
|
|
271
|
-
var
|
|
292
|
+
var _player5 = this.player;
|
|
272
293
|
return new Promise(function (resolve) {
|
|
273
|
-
|
|
294
|
+
_player5.playRecordVideo({
|
|
274
295
|
channelList: [{
|
|
275
296
|
id: _this.deviceCode + '$1$0$' + _this.channelNum
|
|
276
297
|
}],
|
|
@@ -299,27 +320,27 @@ var Player = /*#__PURE__*/function () {
|
|
|
299
320
|
}
|
|
300
321
|
|
|
301
322
|
if (this.type === 'hls') {
|
|
302
|
-
var
|
|
323
|
+
var _player6 = this.player;
|
|
303
324
|
|
|
304
|
-
|
|
325
|
+
_player6.destroy();
|
|
305
326
|
|
|
306
327
|
this.player = null;
|
|
307
328
|
this.video.remove();
|
|
308
329
|
}
|
|
309
330
|
|
|
310
331
|
if (this.type === 'hk_ws') {
|
|
311
|
-
var
|
|
332
|
+
var _player7 = this.player;
|
|
312
333
|
|
|
313
|
-
|
|
334
|
+
_player7.JS_Stop(1);
|
|
314
335
|
|
|
315
336
|
var dd = document.getElementById(this.containerId);
|
|
316
337
|
dd && dd.childNodes && dd.childNodes[0] && dd.removeChild(dd.childNodes[0]);
|
|
317
338
|
}
|
|
318
339
|
|
|
319
340
|
if (this.type === 'hkcar_ws') {
|
|
320
|
-
var
|
|
341
|
+
var _player8 = this.player;
|
|
321
342
|
|
|
322
|
-
|
|
343
|
+
_player8.JS_DestroyWorker();
|
|
323
344
|
|
|
324
345
|
var _dd3 = document.getElementById(this.containerId);
|
|
325
346
|
|
|
@@ -327,21 +348,27 @@ var Player = /*#__PURE__*/function () {
|
|
|
327
348
|
}
|
|
328
349
|
|
|
329
350
|
if (this.type === 'icc_ws') {
|
|
330
|
-
var
|
|
351
|
+
var _player9 = this.player;
|
|
331
352
|
|
|
332
|
-
|
|
353
|
+
_player9.close();
|
|
333
354
|
}
|
|
334
355
|
|
|
335
356
|
if (this.type === 'webrtc') {
|
|
336
|
-
var
|
|
357
|
+
var _player10 = this.player;
|
|
337
358
|
|
|
338
|
-
|
|
359
|
+
_player10.close();
|
|
339
360
|
}
|
|
340
361
|
|
|
341
362
|
if (this.type === 'h264') {
|
|
342
|
-
var
|
|
363
|
+
var _player11 = this.player;
|
|
343
364
|
|
|
344
|
-
|
|
365
|
+
_player11.close();
|
|
366
|
+
}
|
|
367
|
+
|
|
368
|
+
if (this.type === 'bd') {
|
|
369
|
+
var _player12 = this.player;
|
|
370
|
+
|
|
371
|
+
_player12.close(0);
|
|
345
372
|
}
|
|
346
373
|
}
|
|
347
374
|
/** 截图 */
|
|
@@ -375,9 +402,9 @@ var Player = /*#__PURE__*/function () {
|
|
|
375
402
|
player.JS_Resize();
|
|
376
403
|
}, 500);
|
|
377
404
|
} else if (this.type === 'icc_ws') {
|
|
378
|
-
var
|
|
405
|
+
var _player13 = this.player;
|
|
379
406
|
|
|
380
|
-
|
|
407
|
+
_player13.setPlayerAdapter('selfAdaption');
|
|
381
408
|
}
|
|
382
409
|
}
|
|
383
410
|
/**
|
|
@@ -398,9 +425,9 @@ var Player = /*#__PURE__*/function () {
|
|
|
398
425
|
}
|
|
399
426
|
|
|
400
427
|
if (this.type === 'hk_ws' || this.type === 'hkcar_ws') {
|
|
401
|
-
var
|
|
428
|
+
var _player14 = this.player;
|
|
402
429
|
|
|
403
|
-
|
|
430
|
+
_player14.JS_SetVolume(1, value);
|
|
404
431
|
}
|
|
405
432
|
}
|
|
406
433
|
/**
|
|
@@ -472,9 +499,9 @@ var Player = /*#__PURE__*/function () {
|
|
|
472
499
|
|
|
473
500
|
this.preSpeed = speed;
|
|
474
501
|
} else if (this.type === 'icc_ws') {
|
|
475
|
-
var
|
|
502
|
+
var _player15 = this.player;
|
|
476
503
|
|
|
477
|
-
|
|
504
|
+
_player15.playSpeed(speed);
|
|
478
505
|
} else {
|
|
479
506
|
this.video.playbackRate = speed;
|
|
480
507
|
}
|
|
@@ -513,10 +540,10 @@ var Player = /*#__PURE__*/function () {
|
|
|
513
540
|
}, {
|
|
514
541
|
key: "seekTo",
|
|
515
542
|
value: function seekTo(time) {
|
|
516
|
-
var _a, _b;
|
|
543
|
+
var _a, _b, _c;
|
|
517
544
|
|
|
518
545
|
return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
|
|
519
|
-
var player, seekTime,
|
|
546
|
+
var player, seekTime, _player16, _seekTime, _player17, _seekTime2;
|
|
520
547
|
|
|
521
548
|
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
522
549
|
while (1) {
|
|
@@ -529,33 +556,33 @@ var Player = /*#__PURE__*/function () {
|
|
|
529
556
|
|
|
530
557
|
player = this.player;
|
|
531
558
|
seekTime = (_a = (0, _moment["default"])(this.startTime)) === null || _a === void 0 ? void 0 : _a.add(time, 'seconds');
|
|
532
|
-
|
|
559
|
+
this.seekTime = seekTime;
|
|
560
|
+
_context.next = 6;
|
|
533
561
|
return player.JS_Seek(1, (0, _utils.getHKTimeString)(seekTime), (0, _utils.getHKTimeString)(this.endTime));
|
|
534
562
|
|
|
535
|
-
case
|
|
536
|
-
|
|
537
|
-
_context.next = 16;
|
|
563
|
+
case 6:
|
|
564
|
+
_context.next = 9;
|
|
538
565
|
break;
|
|
539
566
|
|
|
540
567
|
case 8:
|
|
541
|
-
if (
|
|
542
|
-
|
|
543
|
-
|
|
568
|
+
if (this.type === 'icc_ws') {
|
|
569
|
+
_player16 = this.player;
|
|
570
|
+
_seekTime = (_b = (0, _moment["default"])(this.startTime)) === null || _b === void 0 ? void 0 : _b.add(time, 'seconds').format('HH:mm:ss');
|
|
571
|
+
|
|
572
|
+
_player16.jumpPlayByTime(_seekTime);
|
|
573
|
+
} else if (this.type === 'bd') {
|
|
574
|
+
_player17 = this.player;
|
|
575
|
+
_seekTime2 = (_c = (0, _moment["default"])(this.startTime)) === null || _c === void 0 ? void 0 : _c.add(time, 'seconds').valueOf();
|
|
576
|
+
|
|
577
|
+
_player17.jumpPlayByTime(_seekTime2);
|
|
578
|
+
} else {
|
|
579
|
+
this.video.currentTime = time;
|
|
544
580
|
}
|
|
545
581
|
|
|
546
|
-
|
|
547
|
-
_seekTime = (_b = (0, _moment["default"])(this.startTime)) === null || _b === void 0 ? void 0 : _b.add(time, 'seconds').format('HH:mm:ss');
|
|
548
|
-
|
|
549
|
-
_player14.jumpPlayByTime(_seekTime);
|
|
550
|
-
|
|
551
|
-
_context.next = 16;
|
|
552
|
-
break;
|
|
553
|
-
|
|
554
|
-
case 14:
|
|
555
|
-
this.video.currentTime = time;
|
|
582
|
+
case 9:
|
|
556
583
|
return _context.abrupt("return", Promise.resolve());
|
|
557
584
|
|
|
558
|
-
case
|
|
585
|
+
case 10:
|
|
559
586
|
case "end":
|
|
560
587
|
return _context.stop();
|
|
561
588
|
}
|
|
@@ -576,6 +603,10 @@ var Player = /*#__PURE__*/function () {
|
|
|
576
603
|
player.JS_Pause(1).then(function () {
|
|
577
604
|
return callback && callback();
|
|
578
605
|
});
|
|
606
|
+
} else if (this.type === 'bd') {
|
|
607
|
+
var _player18 = this.player;
|
|
608
|
+
|
|
609
|
+
_player18.pause();
|
|
579
610
|
} else {
|
|
580
611
|
this.video.pause();
|
|
581
612
|
callback && callback();
|
|
@@ -594,6 +625,10 @@ var Player = /*#__PURE__*/function () {
|
|
|
594
625
|
player.JS_Resume(1).then(function () {
|
|
595
626
|
return callback && callback();
|
|
596
627
|
});
|
|
628
|
+
} else if (this.type === 'bd') {
|
|
629
|
+
var _player19 = this.player;
|
|
630
|
+
|
|
631
|
+
_player19.close(0);
|
|
597
632
|
} else {
|
|
598
633
|
this.video.play();
|
|
599
634
|
callback && callback();
|
package/lib/player/index.js.map
CHANGED
|
@@ -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","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","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","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","Capture","setTimeout","JS_Resize","setPlayerAdapter","volume","JS_SetVolume","speed","JS_Slow","JS_Fast","playSpeed","playbackRate","addEventListener","currentTime","seekTime","diff","JS_SetWindowControlCallback","call","StreamEnd","add","JS_Seek","jumpPlayByTime","JS_Pause","pause","JS_Resume","JS_StartTalk","JS_StopTalk","canvas","width","videoWidth","height","videoHeight","context","getContext","drawImage","dataURL","toBlob","blob","URL","createObjectURL"],"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 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 /** 视频播放流是否走代理 - 是强制走代理,否通过判断 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 }\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 }\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 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 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 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 }\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 {\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 player.JS_SetVolume(1, 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 {\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;\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 yield player.JS_Seek(1, getHKTimeString(seekTime), getHKTimeString(this.endTime));\n this.seekTime = seekTime;\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 {\n this.video.currentTime = time;\n return Promise.resolve();\n }\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 {\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 {\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","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","Capture","setTimeout","JS_Resize","setPlayerAdapter","volume","JS_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","canvas","width","videoWidth","height","videoHeight","context","getContext","drawImage","dataURL","toBlob","blob","URL","createObjectURL"],"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 /** 视频播放流是否走代理 - 是强制走代理,否通过判断 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 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 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 {\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 player.JS_SetVolume(1, 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 {\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/lib/utils/index.d.ts
CHANGED
package/lib/utils/index.js
CHANGED
|
@@ -5,7 +5,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.getUrlTableData = exports.getUrlParam = exports.getPlayerParams = exports.getHKTimeString = exports.getHKListUrl = exports.bytesToMegaBytes = exports.TimeFormat = void 0;
|
|
7
7
|
exports.guid = guid;
|
|
8
|
-
exports.
|
|
8
|
+
exports.guidGenerator = void 0;
|
|
9
|
+
exports.loadCss = loadCss;
|
|
10
|
+
exports.loadJs = loadJs;
|
|
11
|
+
exports.secondsToTime = exports.secondsToString = void 0;
|
|
9
12
|
|
|
10
13
|
var _jsBase = require("js-base64");
|
|
11
14
|
|
|
@@ -116,6 +119,20 @@ var getPlayerParams = function getPlayerParams(type, url, enableAgent, live) {
|
|
|
116
119
|
var playerUrl = url;
|
|
117
120
|
var playerType = 'flv';
|
|
118
121
|
|
|
122
|
+
if (type === 'bd') {
|
|
123
|
+
if (url.startsWith('http')) {
|
|
124
|
+
return {
|
|
125
|
+
type: 'bd',
|
|
126
|
+
url: url
|
|
127
|
+
};
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
return {
|
|
131
|
+
type: 'bd',
|
|
132
|
+
url: "".concat(window.location.origin).concat(url)
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
|
|
119
136
|
if (url.startsWith('ws://') || url.startsWith('wss://')) {
|
|
120
137
|
if (type === 'hkcar_ws') {
|
|
121
138
|
playerType = 'hkcar_ws';
|
|
@@ -336,4 +353,29 @@ function guid() {
|
|
|
336
353
|
return v.toString(16);
|
|
337
354
|
});
|
|
338
355
|
}
|
|
356
|
+
|
|
357
|
+
function loadJs(path) {
|
|
358
|
+
if (!path || path.length === 0) {
|
|
359
|
+
throw new Error('argument "path" is required !');
|
|
360
|
+
}
|
|
361
|
+
|
|
362
|
+
var head = document.getElementsByTagName('head')[0];
|
|
363
|
+
var script = document.createElement('script');
|
|
364
|
+
script.src = path;
|
|
365
|
+
script.type = 'text/javascript';
|
|
366
|
+
head.appendChild(script);
|
|
367
|
+
}
|
|
368
|
+
|
|
369
|
+
function loadCss(path) {
|
|
370
|
+
if (!path || path.length === 0) {
|
|
371
|
+
throw new Error('argument "path" is required !');
|
|
372
|
+
}
|
|
373
|
+
|
|
374
|
+
var head = document.getElementsByTagName('head')[0];
|
|
375
|
+
var link = document.createElement('link');
|
|
376
|
+
link.href = path;
|
|
377
|
+
link.rel = 'stylesheet';
|
|
378
|
+
link.type = 'text/css';
|
|
379
|
+
head.appendChild(link);
|
|
380
|
+
}
|
|
339
381
|
//# sourceMappingURL=index.js.map
|
package/lib/utils/index.js.map
CHANGED
|
@@ -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","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"],"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 (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}\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 = '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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"}
|