@vtx/player 1.10.9 → 1.10.11

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.
Files changed (143) hide show
  1. package/lib/api/fetch.js +71 -68
  2. package/lib/api/fetch.js.map +1 -1
  3. package/lib/api/index.js +51 -33
  4. package/lib/api/index.js.map +1 -1
  5. package/lib/api/types.d.ts +5 -5
  6. package/lib/api/types.js +1 -0
  7. package/lib/api/types.js.map +1 -1
  8. package/lib/bd/PlayerManager.js +7 -8
  9. package/lib/bd/PlayerManager.js.map +1 -1
  10. package/lib/bill-player/index.d.ts +1 -1
  11. package/lib/bill-player/index.js +11 -9
  12. package/lib/bill-player/index.js.map +1 -1
  13. package/lib/components/download-tag/index.js +13 -13
  14. package/lib/components/download-tag/index.js.map +1 -1
  15. package/lib/components/set-tag-video/index.js +8 -7
  16. package/lib/components/set-tag-video/index.js.map +1 -1
  17. package/lib/components/split-screen/index.d.ts +1 -1
  18. package/lib/components/split-screen/index.js +5 -3
  19. package/lib/components/split-screen/index.js.map +1 -1
  20. package/lib/components/tag-video/index.js +11 -10
  21. package/lib/components/tag-video/index.js.map +1 -1
  22. package/lib/components/video-scale/index.d.ts +1 -1
  23. package/lib/components/video-scale/index.js +3 -2
  24. package/lib/components/video-scale/index.js.map +1 -1
  25. package/lib/config.js +3 -2
  26. package/lib/config.js.map +1 -1
  27. package/lib/context/index.js +5 -3
  28. package/lib/context/index.js.map +1 -1
  29. package/lib/controls/index.d.ts +11 -11
  30. package/lib/controls/index.js +22 -14
  31. package/lib/controls/index.js.map +1 -1
  32. package/lib/h264/PlayerManager.js +7 -8
  33. package/lib/h264/PlayerManager.js.map +1 -1
  34. package/lib/history-control/index.d.ts +2 -2
  35. package/lib/history-control/index.js +10 -8
  36. package/lib/history-control/index.js.map +1 -1
  37. package/lib/history-control-v2/components/grid-item/index.js +11 -10
  38. package/lib/history-control-v2/components/grid-item/index.js.map +1 -1
  39. package/lib/history-control-v2/components/panel/VideoTable.d.ts +1 -1
  40. package/lib/history-control-v2/components/panel/VideoTable.js +54 -50
  41. package/lib/history-control-v2/components/panel/VideoTable.js.map +1 -1
  42. package/lib/history-control-v2/components/panel/index.js +36 -21
  43. package/lib/history-control-v2/components/panel/index.js.map +1 -1
  44. package/lib/history-control-v2/context.js +2 -1
  45. package/lib/history-control-v2/context.js.map +1 -1
  46. package/lib/history-control-v2/index.d.ts +4 -4
  47. package/lib/history-control-v2/index.js +78 -73
  48. package/lib/history-control-v2/index.js.map +1 -1
  49. package/lib/history-control-v2/utils.js +20 -13
  50. package/lib/history-control-v2/utils.js.map +1 -1
  51. package/lib/history-player/index.d.ts +1 -1
  52. package/lib/history-player/index.js +177 -173
  53. package/lib/history-player/index.js.map +1 -1
  54. package/lib/hooks/useSettings.js +2 -1
  55. package/lib/hooks/useSettings.js.map +1 -1
  56. package/lib/icc/PlayerManager.js +8 -9
  57. package/lib/icc/PlayerManager.js.map +1 -1
  58. package/lib/icc/api.d.ts +68 -0
  59. package/lib/icc/api.js +3 -2
  60. package/lib/icc/api.js.map +1 -1
  61. package/lib/icons/index.d.ts +37 -37
  62. package/lib/icons/index.js +103 -65
  63. package/lib/icons/index.js.map +1 -1
  64. package/lib/index.js +1 -1
  65. package/lib/index.js.map +1 -1
  66. package/lib/live-channel-player/index.d.ts +1 -1
  67. package/lib/live-channel-player/index.js +32 -28
  68. package/lib/live-channel-player/index.js.map +1 -1
  69. package/lib/live-control/index.d.ts +2 -2
  70. package/lib/live-control/index.js +13 -12
  71. package/lib/live-control/index.js.map +1 -1
  72. package/lib/live-control-v2/index.d.ts +3 -3
  73. package/lib/live-control-v2/index.js +20 -18
  74. package/lib/live-control-v2/index.js.map +1 -1
  75. package/lib/live-player/index.js +129 -126
  76. package/lib/live-player/index.js.map +1 -1
  77. package/lib/mpegts/PlayerManager.js +7 -8
  78. package/lib/mpegts/PlayerManager.js.map +1 -1
  79. package/lib/player/BdPlayer.d.ts +1 -1
  80. package/lib/player/BdPlayer.js +29 -26
  81. package/lib/player/BdPlayer.js.map +1 -1
  82. package/lib/player/FlvPlayer.d.ts +1 -1
  83. package/lib/player/FlvPlayer.js +20 -17
  84. package/lib/player/FlvPlayer.js.map +1 -1
  85. package/lib/player/H264Player.d.ts +1 -1
  86. package/lib/player/H264Player.js +20 -17
  87. package/lib/player/H264Player.js.map +1 -1
  88. package/lib/player/HkcarwsPlayer.d.ts +1 -1
  89. package/lib/player/HkcarwsPlayer.js +25 -22
  90. package/lib/player/HkcarwsPlayer.js.map +1 -1
  91. package/lib/player/HkwsPlayer.d.ts +1 -1
  92. package/lib/player/HkwsPlayer.js +25 -22
  93. package/lib/player/HkwsPlayer.js.map +1 -1
  94. package/lib/player/HlsPlayer.d.ts +1 -1
  95. package/lib/player/HlsPlayer.js +20 -17
  96. package/lib/player/HlsPlayer.js.map +1 -1
  97. package/lib/player/IccwsPlayer.d.ts +1 -1
  98. package/lib/player/IccwsPlayer.js +22 -19
  99. package/lib/player/IccwsPlayer.js.map +1 -1
  100. package/lib/player/IframePlayer.d.ts +3 -1
  101. package/lib/player/IframePlayer.js +46 -34
  102. package/lib/player/IframePlayer.js.map +1 -1
  103. package/lib/player/Mp4Player.d.ts +1 -1
  104. package/lib/player/Mp4Player.js +20 -17
  105. package/lib/player/Mp4Player.js.map +1 -1
  106. package/lib/player/RslPlayer.d.ts +1 -1
  107. package/lib/player/RslPlayer.js +20 -17
  108. package/lib/player/RslPlayer.js.map +1 -1
  109. package/lib/player/VtxHlsPlayer.d.ts +1 -1
  110. package/lib/player/VtxHlsPlayer.js +20 -17
  111. package/lib/player/VtxHlsPlayer.js.map +1 -1
  112. package/lib/player/VtxwhepPlayer.d.ts +1 -1
  113. package/lib/player/VtxwhepPlayer.js +20 -17
  114. package/lib/player/VtxwhepPlayer.js.map +1 -1
  115. package/lib/player/VtxwsPlayer.d.ts +1 -1
  116. package/lib/player/VtxwsPlayer.js +22 -19
  117. package/lib/player/VtxwsPlayer.js.map +1 -1
  118. package/lib/player/WebrtcPlayer.d.ts +1 -1
  119. package/lib/player/WebrtcPlayer.js +20 -17
  120. package/lib/player/WebrtcPlayer.js.map +1 -1
  121. package/lib/player/WfsPlayer.d.ts +1 -1
  122. package/lib/player/WfsPlayer.js +20 -17
  123. package/lib/player/WfsPlayer.js.map +1 -1
  124. package/lib/player/index.js +1 -1
  125. package/lib/player/index.js.map +1 -1
  126. package/lib/player/indexOld.d.ts +1 -1
  127. package/lib/player/indexOld.js +101 -98
  128. package/lib/player/indexOld.js.map +1 -1
  129. package/lib/rsl/PlayerManager.d.ts +1 -1
  130. package/lib/rsl/PlayerManager.js +7 -8
  131. package/lib/rsl/PlayerManager.js.map +1 -1
  132. package/lib/utils/index.d.ts +1 -1
  133. package/lib/utils/index.js +27 -16
  134. package/lib/utils/index.js.map +1 -1
  135. package/lib/vtxHls/PlayerManager.js +7 -8
  136. package/lib/vtxHls/PlayerManager.js.map +1 -1
  137. package/lib/vtxHls/WhepManager.js +10 -11
  138. package/lib/vtxHls/WhepManager.js.map +1 -1
  139. package/lib/webrtc/PlayerManager.js +7 -8
  140. package/lib/webrtc/PlayerManager.js.map +1 -1
  141. package/lib/wfs/PlayerManager.js +7 -8
  142. package/lib/wfs/PlayerManager.js.map +1 -1
  143. package/package.json +1 -1
@@ -11,27 +11,29 @@ exports.loadJs = loadJs;
11
11
  exports.secondsToTime = exports.secondsToString = void 0;
12
12
  var _jsBase = require("js-base64");
13
13
  var _moment = _interopRequireDefault(require("moment"));
14
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
15
- function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
14
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
15
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
16
16
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
17
- function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
18
- function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
19
- function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
20
- function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
17
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
18
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
19
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
20
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
21
21
  /** 时间格式枚举 */
22
22
  var TimeFormat;
23
+ exports.TimeFormat = TimeFormat;
23
24
  (function (TimeFormat) {
24
25
  TimeFormat["default"] = "YYYY-MM-DDTHH:mm:ss";
25
26
  TimeFormat["params"] = "YYYY-MM-DD HH:mm:ss";
26
27
  TimeFormat["url"] = "YYYYMMDDTHHmmss";
27
28
  })(TimeFormat || (exports.TimeFormat = TimeFormat = {}));
28
29
  /** 生成随机ID */
29
- var guidGenerator = exports.guidGenerator = function guidGenerator() {
30
+ var guidGenerator = function guidGenerator() {
30
31
  var S4 = function S4() {
31
32
  return ((1 + Math.random()) * 0x10000 | 0).toString(16).substring(1);
32
33
  };
33
34
  return S4() + S4() + '-' + S4() + '-' + S4() + '-' + S4() + '-' + S4() + S4() + S4();
34
35
  };
36
+ exports.guidGenerator = guidGenerator;
35
37
  var initProtocol = function initProtocol(url) {
36
38
  var src = url;
37
39
  var isHttps = 'https:' === document.location.protocol;
@@ -57,7 +59,7 @@ var initProtocol = function initProtocol(url) {
57
59
  * @param url
58
60
  * @returns
59
61
  */
60
- var getPlayerParams = exports.getPlayerParams = function getPlayerParams(type, url, enableAgent, live) {
62
+ var getPlayerParams = function getPlayerParams(type, url, enableAgent, live) {
61
63
  var playerUrl = url;
62
64
  var playerType = 'mp4';
63
65
  if (type === 'bd') {
@@ -143,7 +145,8 @@ var getPlayerParams = exports.getPlayerParams = function getPlayerParams(type, u
143
145
  * @param data
144
146
  * @returns
145
147
  */
146
- var getUrlTableData = exports.getUrlTableData = function getUrlTableData(data) {
148
+ exports.getPlayerParams = getPlayerParams;
149
+ var getUrlTableData = function getUrlTableData(data) {
147
150
  var result = data.list.map(function (item, i) {
148
151
  var beginTime = (0, _moment["default"])(item.beginTime);
149
152
  var endTime = (0, _moment["default"])(item.endTime);
@@ -177,7 +180,8 @@ var getUrlTableData = exports.getUrlTableData = function getUrlTableData(data) {
177
180
  * @param bytes
178
181
  * @returns
179
182
  */
180
- var bytesToMegaBytes = exports.bytesToMegaBytes = function bytesToMegaBytes(bytes) {
183
+ exports.getUrlTableData = getUrlTableData;
184
+ var bytesToMegaBytes = function bytesToMegaBytes(bytes) {
181
185
  return "".concat((bytes / Math.pow(1024, 2)).toFixed(2), "MB");
182
186
  };
183
187
  /**
@@ -185,7 +189,8 @@ var bytesToMegaBytes = exports.bytesToMegaBytes = function bytesToMegaBytes(byte
185
189
  * @param total
186
190
  * @returns
187
191
  */
188
- var secondsToString = exports.secondsToString = function secondsToString(total) {
192
+ exports.bytesToMegaBytes = bytesToMegaBytes;
193
+ var secondsToString = function secondsToString(total) {
189
194
  var hour = Math.floor(total / 3600);
190
195
  var minute = Math.floor(total % 3600 / 60);
191
196
  var second = Math.floor(total % 60);
@@ -197,7 +202,8 @@ var secondsToString = exports.secondsToString = function secondsToString(total)
197
202
  * @param total
198
203
  * @returns
199
204
  */
200
- var secondsToTime = exports.secondsToTime = function secondsToTime(total) {
205
+ exports.secondsToString = secondsToString;
206
+ var secondsToTime = function secondsToTime(total) {
201
207
  var hour = Math.floor(total / 3600);
202
208
  var minute = Math.floor(total % 3600 / 60);
203
209
  var second = Math.floor(total % 60);
@@ -209,10 +215,12 @@ var secondsToTime = exports.secondsToTime = function secondsToTime(total) {
209
215
  * @param time 时间
210
216
  * @returns
211
217
  */
212
- var getHKTimeString = exports.getHKTimeString = function getHKTimeString(time) {
218
+ exports.secondsToTime = secondsToTime;
219
+ var getHKTimeString = function getHKTimeString(time) {
213
220
  return (0, _moment["default"])(time).format(TimeFormat["default"]) + 'Z';
214
221
  };
215
- var getVtxWSTimeString = exports.getVtxWSTimeString = function getVtxWSTimeString(time) {
222
+ exports.getHKTimeString = getHKTimeString;
223
+ var getVtxWSTimeString = function getVtxWSTimeString(time) {
216
224
  return (0, _moment["default"])(time).format(TimeFormat.url);
217
225
  };
218
226
  /**
@@ -222,7 +230,8 @@ var getVtxWSTimeString = exports.getVtxWSTimeString = function getVtxWSTimeStrin
222
230
  * @param endTime 结束时间
223
231
  * @returns
224
232
  */
225
- var getHKListUrl = exports.getHKListUrl = function getHKListUrl(totalUrl, startTime, endTime) {
233
+ exports.getVtxWSTimeString = getVtxWSTimeString;
234
+ var getHKListUrl = function getHKListUrl(totalUrl, startTime, endTime) {
226
235
  var _totalUrl$split = totalUrl.split('?'),
227
236
  _totalUrl$split2 = _slicedToArray(_totalUrl$split, 2),
228
237
  url = _totalUrl$split2[0],
@@ -255,6 +264,7 @@ var getHKListUrl = exports.getHKListUrl = function getHKListUrl(totalUrl, startT
255
264
  *
256
265
  * @returns 返回UUID
257
266
  */
267
+ exports.getHKListUrl = getHKListUrl;
258
268
  function guid() {
259
269
  return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
260
270
  var r = Math.random() * 16 | 0,
@@ -287,7 +297,7 @@ function loadCss(path) {
287
297
  * 截图
288
298
  * @param video
289
299
  */
290
- var Capture = exports.Capture = function Capture(video, name, callback) {
300
+ var Capture = function Capture(video, name, callback) {
291
301
  var canvas = document.createElement('canvas');
292
302
  canvas.width = video.videoWidth;
293
303
  canvas.height = video.videoHeight;
@@ -303,4 +313,5 @@ var Capture = exports.Capture = function Capture(video, name, callback) {
303
313
  });
304
314
  }
305
315
  };
316
+ exports.Capture = Capture;
306
317
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_jsBase","require","_moment","_interopRequireDefault","e","__esModule","_slicedToArray","r","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","a","_arrayLikeToArray","t","toString","call","slice","constructor","name","Array","from","test","length","n","l","Symbol","iterator","i","u","f","o","next","Object","done","push","value","isArray","TimeFormat","exports","guidGenerator","S4","Math","random","substring","initProtocol","url","src","isHttps","document","location","protocol","startsWith","replace","ipPort","indexOf","path","window","host","getPlayerParams","type","enableAgent","live","playerUrl","playerType","concat","origin","split","baseUrlPrefix","process","env","PREFIX","Base64","encode","getUrlTableData","data","result","list","map","item","beginTime","moment","endTime","totalSeconds","diff","index","deviceName","deviceCode","devicePort","deviceIp","streamType","channelName","format","params","size","bytesToMegaBytes","duration","secondsToString","downloadUrl","playbackUrl","code","hkType","deviceId","channelNum","extendedProperties","bytes","pow","toFixed","total","hour","floor","minute","second","secondsToTime","getHKTimeString","time","getVtxWSTimeString","getHKListUrl","totalUrl","startTime","_totalUrl$split","_totalUrl$split2","query","urlParams","URLSearchParams","set","guid","c","v","loadJs","Error","head","getElementsByTagName","script","createElement","appendChild","loadCss","link","href","rel","Capture","video","callback","canvas","width","videoWidth","height","videoHeight","context","getContext","drawImage","dataURL","toBlob","blob","URL","createObjectURL"],"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) => {\n let src = url;\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 return src;\n};\n/**\n * 获取视频直播地址及格式\n * @param url\n * @returns\n */\nexport const getPlayerParams = (type, url, enableAgent, live) => {\n let playerUrl = url;\n let playerType = 'mp4';\n if (type === 'bd') {\n if (url.startsWith('http')) {\n return {\n type: 'bd',\n url,\n };\n }\n return {\n type: 'bd',\n url: `${window.location.origin}${url}`,\n };\n }\n if (type === 'vtx_ws') {\n return {\n type: 'vtx_ws',\n url,\n };\n }\n else 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 const baseUrlPrefix = process.env.PREFIX ? `${process.env.PREFIX}` : '';\n playerType = 'flv';\n playerUrl = baseUrlPrefix + `/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 // 特殊类型\n if (url.indexOf('vtxm3u8') > -1) {\n playerUrl = url;\n playerType = 'vtxhls';\n }\n // 特殊类型\n if (url.indexOf('vtxwhep') > -1) {\n playerUrl = url;\n playerType = 'vtxwhep';\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 // rsl\n if (playerType === 'mp4' ||\n playerType === 'iframe' ||\n playerType === 'rsl' ||\n playerType === 'wfs') {\n return {\n type: playerType,\n url,\n };\n }\n if (playerType === 'tab') {\n return {\n type: playerType,\n url,\n };\n }\n return { url: initProtocol(playerUrl), 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 extendedProperties: data.extendedProperties,\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};\nexport const getVtxWSTimeString = (time) => {\n return moment(time).format(TimeFormat.url);\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 * @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/**\n * 截图\n * @param video\n */\nexport const 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 callback && callback(dataURL);\n }\n });\n }\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["_jsBase","require","_moment","_interopRequireDefault","obj","__esModule","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","len","length","arr2","_i","Symbol","iterator","_arr","_n","_d","_s","_e","next","done","push","value","err","isArray","TimeFormat","exports","guidGenerator","S4","Math","random","substring","initProtocol","url","src","isHttps","document","location","protocol","startsWith","replace","ipPort","indexOf","path","window","host","getPlayerParams","type","enableAgent","live","playerUrl","playerType","concat","origin","split","baseUrlPrefix","process","env","PREFIX","Base64","encode","getUrlTableData","data","result","list","map","item","beginTime","moment","endTime","totalSeconds","diff","index","deviceName","deviceCode","devicePort","deviceIp","streamType","channelName","format","params","size","bytesToMegaBytes","duration","secondsToString","downloadUrl","playbackUrl","code","hkType","deviceId","channelNum","extendedProperties","bytes","pow","toFixed","total","hour","floor","minute","second","secondsToTime","getHKTimeString","time","getVtxWSTimeString","getHKListUrl","totalUrl","startTime","_totalUrl$split","_totalUrl$split2","query","urlParams","URLSearchParams","set","guid","c","r","v","loadJs","Error","head","getElementsByTagName","script","createElement","appendChild","loadCss","link","href","rel","Capture","video","callback","canvas","width","videoWidth","height","videoHeight","context","getContext","drawImage","dataURL","toBlob","blob","URL","createObjectURL"],"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) => {\n let src = url;\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 return src;\n};\n/**\n * 获取视频直播地址及格式\n * @param url\n * @returns\n */\nexport const getPlayerParams = (type, url, enableAgent, live) => {\n let playerUrl = url;\n let playerType = 'mp4';\n if (type === 'bd') {\n if (url.startsWith('http')) {\n return {\n type: 'bd',\n url,\n };\n }\n return {\n type: 'bd',\n url: `${window.location.origin}${url}`,\n };\n }\n if (type === 'vtx_ws') {\n return {\n type: 'vtx_ws',\n url,\n };\n }\n else 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 const baseUrlPrefix = process.env.PREFIX ? `${process.env.PREFIX}` : '';\n playerType = 'flv';\n playerUrl = baseUrlPrefix + `/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 // 特殊类型\n if (url.indexOf('vtxm3u8') > -1) {\n playerUrl = url;\n playerType = 'vtxhls';\n }\n // 特殊类型\n if (url.indexOf('vtxwhep') > -1) {\n playerUrl = url;\n playerType = 'vtxwhep';\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 // rsl\n if (playerType === 'mp4' ||\n playerType === 'iframe' ||\n playerType === 'rsl' ||\n playerType === 'wfs') {\n return {\n type: playerType,\n url,\n };\n }\n if (playerType === 'tab') {\n return {\n type: playerType,\n url,\n };\n }\n return { url: initProtocol(playerUrl), 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 extendedProperties: data.extendedProperties,\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};\nexport const getVtxWSTimeString = (time) => {\n return moment(time).format(TimeFormat.url);\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 * @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/**\n * 截图\n * @param video\n */\nexport const 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 callback && callback(dataURL);\n }\n });\n }\n};\n"],"mappings":"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","ignoreList":[]}
@@ -4,12 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = void 0;
7
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
8
- function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
9
- function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
10
- function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
11
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
12
- function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
7
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
8
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
9
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
13
10
  var VtxHlsPlayerManager = /*#__PURE__*/function () {
14
11
  function VtxHlsPlayerManager(opt) {
15
12
  _classCallCheck(this, VtxHlsPlayerManager);
@@ -20,7 +17,7 @@ var VtxHlsPlayerManager = /*#__PURE__*/function () {
20
17
  this.initPlayer();
21
18
  }
22
19
  //初始化视频插件
23
- return _createClass(VtxHlsPlayerManager, [{
20
+ _createClass(VtxHlsPlayerManager, [{
24
21
  key: "initPlayer",
25
22
  value: function initPlayer() {
26
23
  var _this = this;
@@ -111,6 +108,8 @@ var VtxHlsPlayerManager = /*#__PURE__*/function () {
111
108
  this.player.setSelectIndex(index);
112
109
  }
113
110
  }]);
111
+ return VtxHlsPlayerManager;
114
112
  }();
115
- var _default = exports["default"] = VtxHlsPlayerManager;
113
+ var _default = VtxHlsPlayerManager;
114
+ exports["default"] = _default;
116
115
  //# sourceMappingURL=PlayerManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PlayerManager.js","names":["VtxHlsPlayerManager","opt","_classCallCheck","url","video","player","timer","initPlayer","_createClass","key","value","_this","hls","Hls","maxLiveSyncPlaybackRate","on","Events","ERROR","evt","data","type","ErrorTypes","MEDIA_ERROR","recoverMediaError","fatal","clearTimeout","destroy","setTimeout","MEDIA_ATTACHED","loadSource","concat","MANIFEST_PARSED","play","attachMedia","playSpeed","speed","recordPlayer","close","resize","setSize","setFullScreen","fullScreen","setPlayerAdapter","playerAdapter","setPlayerNum","number","setSelectIndex","index","_default","exports"],"sources":["vtxHls/PlayerManager.js"],"sourcesContent":["class VtxHlsPlayerManager {\n constructor(opt) {\n this.url = opt.url;\n this.video = opt.video;\n this.player = null;\n this.timer = null;\n this.initPlayer();\n }\n //初始化视频插件\n initPlayer() {\n const video = this.video;\n const hls = new Hls({\n maxLiveSyncPlaybackRate: 1.5,\n });\n this.player = hls;\n this.player.on(Hls.Events.ERROR, (evt, data) => {\n if (data.type === Hls.ErrorTypes.MEDIA_ERROR) {\n this.player.recoverMediaError();\n }\n else if (data.fatal) {\n this.timer && clearTimeout(this.timer);\n this.player.destroy();\n this.timer = setTimeout(() => this.initPlayer(video), 300);\n }\n });\n this.player.on(Hls.Events.MEDIA_ATTACHED, () => {\n this.player.loadSource(`${this.url}index.m3u8`);\n });\n this.player.on(Hls.Events.MANIFEST_PARSED, () => {\n video.play();\n });\n this.player.attachMedia(video);\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() {\n if (this.player) {\n this.player.destroy();\n this.player = null;\n this.timer = null;\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}\nexport default VtxHlsPlayerManager;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"PlayerManager.js","names":["VtxHlsPlayerManager","opt","_classCallCheck","url","video","player","timer","initPlayer","_createClass","key","value","_this","hls","Hls","maxLiveSyncPlaybackRate","on","Events","ERROR","evt","data","type","ErrorTypes","MEDIA_ERROR","recoverMediaError","fatal","clearTimeout","destroy","setTimeout","MEDIA_ATTACHED","loadSource","concat","MANIFEST_PARSED","play","attachMedia","playSpeed","speed","recordPlayer","close","resize","setSize","setFullScreen","fullScreen","setPlayerAdapter","playerAdapter","setPlayerNum","number","setSelectIndex","index","_default","exports"],"sources":["vtxHls/PlayerManager.js"],"sourcesContent":["class VtxHlsPlayerManager {\n constructor(opt) {\n this.url = opt.url;\n this.video = opt.video;\n this.player = null;\n this.timer = null;\n this.initPlayer();\n }\n //初始化视频插件\n initPlayer() {\n const video = this.video;\n const hls = new Hls({\n maxLiveSyncPlaybackRate: 1.5,\n });\n this.player = hls;\n this.player.on(Hls.Events.ERROR, (evt, data) => {\n if (data.type === Hls.ErrorTypes.MEDIA_ERROR) {\n this.player.recoverMediaError();\n }\n else if (data.fatal) {\n this.timer && clearTimeout(this.timer);\n this.player.destroy();\n this.timer = setTimeout(() => this.initPlayer(video), 300);\n }\n });\n this.player.on(Hls.Events.MEDIA_ATTACHED, () => {\n this.player.loadSource(`${this.url}index.m3u8`);\n });\n this.player.on(Hls.Events.MANIFEST_PARSED, () => {\n video.play();\n });\n this.player.attachMedia(video);\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() {\n if (this.player) {\n this.player.destroy();\n this.player = null;\n this.timer = null;\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}\nexport default VtxHlsPlayerManager;\n"],"mappings":"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","ignoreList":[]}
@@ -1,18 +1,15 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
6
  exports["default"] = void 0;
8
- function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
9
- function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
10
- function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
11
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
12
- function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
13
- function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
14
- function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
15
- function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
7
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
8
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
9
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
10
+ function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
11
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
12
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
16
13
  var restartPause = 2000;
17
14
  var linkToIceServers = function linkToIceServers(links) {
18
15
  return links !== null ? links.split(', ').map(function (link) {
@@ -137,7 +134,7 @@ var generateSdpFragment = function generateSdpFragment(offerData, candidates) {
137
134
  }
138
135
  return frag;
139
136
  };
140
- var WHEPClient = exports["default"] = /*#__PURE__*/function () {
137
+ var WHEPClient = /*#__PURE__*/function () {
141
138
  function WHEPClient(opt) {
142
139
  _classCallCheck(this, WHEPClient);
143
140
  this.url = opt.url;
@@ -148,7 +145,7 @@ var WHEPClient = exports["default"] = /*#__PURE__*/function () {
148
145
  this.queuedCandidates = [];
149
146
  this.start();
150
147
  }
151
- return _createClass(WHEPClient, [{
148
+ _createClass(WHEPClient, [{
152
149
  key: "start",
153
150
  value: function start() {
154
151
  var _this = this;
@@ -308,5 +305,7 @@ var WHEPClient = exports["default"] = /*#__PURE__*/function () {
308
305
  this.queuedCandidates = [];
309
306
  }
310
307
  }]);
308
+ return WHEPClient;
311
309
  }();
310
+ exports["default"] = WHEPClient;
312
311
  //# sourceMappingURL=WhepManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"WhepManager.js","names":["restartPause","linkToIceServers","links","split","map","link","m","match","ret","urls","undefined","username","unquoteCredential","credential","credentialType","editOffer","offer","sections","sdp","i","length","section","startsWith","enableStereoOpus","join","opusPayloadFormat","lines","toLowerCase","includes","slice","parseOffer","iceUfrag","icePwd","medias","_iterator","_createForOfIteratorHelper","_step","s","n","done","line","value","push","err","e","f","generateSdpFragment","offerData","candidates","candidatesByMedia","_iterator2","_step2","candidate","mid","sdpMLineIndex","frag","_iterator3","_step3","media","_iterator4","_step4","WHEPClient","exports","opt","_classCallCheck","url","video","pc","restartTimeout","sessionUrl","queuedCandidates","start","_createClass","key","_this","console","log","fetch","URL","method","then","res","onIceServers","scheduleRestart","_this2","RTCPeerConnection","iceServers","headers","get","direction","addTransceiver","onicecandidate","evt","onLocalCandidate","oniceconnectionstatechange","onConnectionState","ontrack","track","kind","srcObject","streams","createOffer","onLocalOffer","_this3","setLocalDescription","body","status","Error","toString","text","onRemoteAnswer","RTCSessionDescription","type","iceConnectionState","answer","setRemoteDescription","sendLocalCandidates","_this4","window","location","search","_this5","close","setTimeout"],"sources":["vtxHls/WhepManager.js"],"sourcesContent":["const restartPause = 2000;\nconst linkToIceServers = (links) => links !== null\n ? links.split(', ').map((link) => {\n const m = link.match(/^<(.+?)>; rel=\"ice-server\"(; username=\"(.*?)\"; credential=\"(.*?)\"; credential-type=\"password\")?/i);\n const ret = {\n urls: [m[1]],\n };\n if (m[3] !== undefined) {\n ret.username = unquoteCredential(m[3]);\n ret.credential = unquoteCredential(m[4]);\n ret.credentialType = 'password';\n }\n return ret;\n })\n : [];\nconst editOffer = (offer) => {\n const sections = offer.sdp.split('m=');\n for (let i = 0; i < sections.length; i++) {\n const section = sections[i];\n if (section.startsWith('audio')) {\n sections[i] = enableStereoOpus(section);\n }\n }\n offer.sdp = sections.join('m=');\n};\nconst enableStereoOpus = (section) => {\n let opusPayloadFormat = '';\n let lines = section.split('\\r\\n');\n for (let i = 0; i < lines.length; i++) {\n if (lines[i].startsWith('a=rtpmap:') && lines[i].toLowerCase().includes('opus/')) {\n opusPayloadFormat = lines[i].slice('a=rtpmap:'.length).split(' ')[0];\n break;\n }\n }\n if (opusPayloadFormat === '') {\n return section;\n }\n for (let i = 0; i < lines.length; i++) {\n if (lines[i].startsWith('a=fmtp:' + opusPayloadFormat + ' ')) {\n if (!lines[i].includes('stereo')) {\n lines[i] += ';stereo=1';\n }\n if (!lines[i].includes('sprop-stereo')) {\n lines[i] += ';sprop-stereo=1';\n }\n }\n }\n return lines.join('\\r\\n');\n};\nconst parseOffer = (offer) => {\n const ret = {\n iceUfrag: '',\n icePwd: '',\n medias: [],\n };\n for (const line of offer.split('\\r\\n')) {\n if (line.startsWith('m=')) {\n ret.medias.push(line.slice('m='.length));\n }\n else if (ret.iceUfrag === '' && line.startsWith('a=ice-ufrag:')) {\n ret.iceUfrag = line.slice('a=ice-ufrag:'.length);\n }\n else if (ret.icePwd === '' && line.startsWith('a=ice-pwd:')) {\n ret.icePwd = line.slice('a=ice-pwd:'.length);\n }\n }\n return ret;\n};\nconst generateSdpFragment = (offerData, candidates) => {\n const candidatesByMedia = {};\n for (const candidate of candidates) {\n const mid = candidate.sdpMLineIndex;\n if (candidatesByMedia[mid] === undefined) {\n candidatesByMedia[mid] = [];\n }\n candidatesByMedia[mid].push(candidate);\n }\n let frag = 'a=ice-ufrag:' + offerData.iceUfrag + '\\r\\n' + 'a=ice-pwd:' + offerData.icePwd + '\\r\\n';\n let mid = 0;\n for (const media of offerData.medias) {\n if (candidatesByMedia[mid] !== undefined) {\n frag += 'm=' + media + '\\r\\n' + 'a=mid:' + mid + '\\r\\n';\n for (const candidate of candidatesByMedia[mid]) {\n frag += 'a=' + candidate.candidate + '\\r\\n';\n }\n }\n mid++;\n }\n return frag;\n};\nexport default class WHEPClient {\n constructor(opt) {\n this.url = opt.url;\n this.video = opt.video;\n this.pc = null;\n this.restartTimeout = null;\n this.sessionUrl = '';\n this.queuedCandidates = [];\n this.start();\n }\n start() {\n console.log('requesting ICE servers');\n fetch(new URL('whep', this.url), {\n method: 'OPTIONS',\n })\n .then((res) => this.onIceServers(res))\n .catch((err) => {\n console.log('error: ' + err);\n this.scheduleRestart();\n });\n }\n onIceServers(res) {\n this.pc = new RTCPeerConnection({\n iceServers: linkToIceServers(res.headers.get('Link')),\n });\n const direction = 'sendrecv';\n this.pc.addTransceiver('video', { direction });\n this.pc.addTransceiver('audio', { direction });\n this.pc.onicecandidate = (evt) => this.onLocalCandidate(evt);\n this.pc.oniceconnectionstatechange = () => this.onConnectionState();\n this.pc.ontrack = (evt) => {\n console.log('new track:', evt.track.kind);\n this.video.srcObject = evt.streams[0];\n };\n this.pc.createOffer().then((offer) => this.onLocalOffer(offer));\n }\n onLocalOffer(offer) {\n editOffer(offer);\n this.offerData = parseOffer(offer.sdp);\n this.pc.setLocalDescription(offer);\n console.log('sending offer');\n fetch(new URL('whep', this.url), {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/sdp',\n },\n body: offer.sdp,\n })\n .then((res) => {\n if (res.status !== 201) {\n throw new Error('bad status code');\n }\n this.sessionUrl = new URL(res.headers.get('location'), this.url).toString();\n return res.text();\n })\n .then((sdp) => this.onRemoteAnswer(new RTCSessionDescription({\n type: 'answer',\n sdp,\n })))\n .catch((err) => {\n console.log('error: ' + err);\n this.scheduleRestart();\n });\n }\n onConnectionState() {\n if (this.restartTimeout !== null) {\n return;\n }\n console.log('peer connection state:', this.pc.iceConnectionState);\n switch (this.pc.iceConnectionState) {\n case 'disconnected':\n this.scheduleRestart();\n }\n }\n onRemoteAnswer(answer) {\n if (this.restartTimeout !== null) {\n return;\n }\n this.pc.setRemoteDescription(answer);\n if (this.queuedCandidates.length !== 0) {\n this.sendLocalCandidates(this.queuedCandidates);\n this.queuedCandidates = [];\n }\n }\n onLocalCandidate(evt) {\n if (this.restartTimeout !== null) {\n return;\n }\n if (evt.candidate !== null) {\n if (this.sessionUrl === '') {\n this.queuedCandidates.push(evt.candidate);\n }\n else {\n this.sendLocalCandidates([evt.candidate]);\n }\n }\n }\n sendLocalCandidates(candidates) {\n fetch(this.sessionUrl + window.location.search, {\n method: 'PATCH',\n headers: {\n 'Content-Type': 'application/trickle-ice-sdpfrag',\n 'If-Match': '*',\n },\n body: generateSdpFragment(this.offerData, candidates),\n })\n .then((res) => {\n if (res.status !== 204) {\n throw new Error('bad status code');\n }\n })\n .catch((err) => {\n console.log('error: ' + err);\n this.scheduleRestart();\n });\n }\n scheduleRestart() {\n if (this.restartTimeout !== null) {\n return;\n }\n if (this.pc !== null) {\n this.pc.close();\n this.pc = null;\n }\n this.restartTimeout = window.setTimeout(() => {\n this.restartTimeout = null;\n this.start();\n }, restartPause);\n if (this.sessionUrl) {\n fetch(this.sessionUrl, {\n method: 'DELETE',\n })\n .then((res) => {\n if (res.status !== 200) {\n throw new Error('bad status code');\n }\n })\n .catch((err) => {\n console.log('delete session error: ' + err);\n });\n }\n this.sessionUrl = '';\n this.queuedCandidates = [];\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"WhepManager.js","names":["restartPause","linkToIceServers","links","split","map","link","m","match","ret","urls","undefined","username","unquoteCredential","credential","credentialType","editOffer","offer","sections","sdp","i","length","section","startsWith","enableStereoOpus","join","opusPayloadFormat","lines","toLowerCase","includes","slice","parseOffer","iceUfrag","icePwd","medias","_iterator","_createForOfIteratorHelper","_step","s","n","done","line","value","push","err","e","f","generateSdpFragment","offerData","candidates","candidatesByMedia","_iterator2","_step2","candidate","mid","sdpMLineIndex","frag","_iterator3","_step3","media","_iterator4","_step4","WHEPClient","opt","_classCallCheck","url","video","pc","restartTimeout","sessionUrl","queuedCandidates","start","_createClass","key","_this","console","log","fetch","URL","method","then","res","onIceServers","scheduleRestart","_this2","RTCPeerConnection","iceServers","headers","get","direction","addTransceiver","onicecandidate","evt","onLocalCandidate","oniceconnectionstatechange","onConnectionState","ontrack","track","kind","srcObject","streams","createOffer","onLocalOffer","_this3","setLocalDescription","body","status","Error","toString","text","onRemoteAnswer","RTCSessionDescription","type","iceConnectionState","answer","setRemoteDescription","sendLocalCandidates","_this4","window","location","search","_this5","close","setTimeout","exports"],"sources":["vtxHls/WhepManager.js"],"sourcesContent":["const restartPause = 2000;\nconst linkToIceServers = (links) => links !== null\n ? links.split(', ').map((link) => {\n const m = link.match(/^<(.+?)>; rel=\"ice-server\"(; username=\"(.*?)\"; credential=\"(.*?)\"; credential-type=\"password\")?/i);\n const ret = {\n urls: [m[1]],\n };\n if (m[3] !== undefined) {\n ret.username = unquoteCredential(m[3]);\n ret.credential = unquoteCredential(m[4]);\n ret.credentialType = 'password';\n }\n return ret;\n })\n : [];\nconst editOffer = (offer) => {\n const sections = offer.sdp.split('m=');\n for (let i = 0; i < sections.length; i++) {\n const section = sections[i];\n if (section.startsWith('audio')) {\n sections[i] = enableStereoOpus(section);\n }\n }\n offer.sdp = sections.join('m=');\n};\nconst enableStereoOpus = (section) => {\n let opusPayloadFormat = '';\n let lines = section.split('\\r\\n');\n for (let i = 0; i < lines.length; i++) {\n if (lines[i].startsWith('a=rtpmap:') && lines[i].toLowerCase().includes('opus/')) {\n opusPayloadFormat = lines[i].slice('a=rtpmap:'.length).split(' ')[0];\n break;\n }\n }\n if (opusPayloadFormat === '') {\n return section;\n }\n for (let i = 0; i < lines.length; i++) {\n if (lines[i].startsWith('a=fmtp:' + opusPayloadFormat + ' ')) {\n if (!lines[i].includes('stereo')) {\n lines[i] += ';stereo=1';\n }\n if (!lines[i].includes('sprop-stereo')) {\n lines[i] += ';sprop-stereo=1';\n }\n }\n }\n return lines.join('\\r\\n');\n};\nconst parseOffer = (offer) => {\n const ret = {\n iceUfrag: '',\n icePwd: '',\n medias: [],\n };\n for (const line of offer.split('\\r\\n')) {\n if (line.startsWith('m=')) {\n ret.medias.push(line.slice('m='.length));\n }\n else if (ret.iceUfrag === '' && line.startsWith('a=ice-ufrag:')) {\n ret.iceUfrag = line.slice('a=ice-ufrag:'.length);\n }\n else if (ret.icePwd === '' && line.startsWith('a=ice-pwd:')) {\n ret.icePwd = line.slice('a=ice-pwd:'.length);\n }\n }\n return ret;\n};\nconst generateSdpFragment = (offerData, candidates) => {\n const candidatesByMedia = {};\n for (const candidate of candidates) {\n const mid = candidate.sdpMLineIndex;\n if (candidatesByMedia[mid] === undefined) {\n candidatesByMedia[mid] = [];\n }\n candidatesByMedia[mid].push(candidate);\n }\n let frag = 'a=ice-ufrag:' + offerData.iceUfrag + '\\r\\n' + 'a=ice-pwd:' + offerData.icePwd + '\\r\\n';\n let mid = 0;\n for (const media of offerData.medias) {\n if (candidatesByMedia[mid] !== undefined) {\n frag += 'm=' + media + '\\r\\n' + 'a=mid:' + mid + '\\r\\n';\n for (const candidate of candidatesByMedia[mid]) {\n frag += 'a=' + candidate.candidate + '\\r\\n';\n }\n }\n mid++;\n }\n return frag;\n};\nexport default class WHEPClient {\n constructor(opt) {\n this.url = opt.url;\n this.video = opt.video;\n this.pc = null;\n this.restartTimeout = null;\n this.sessionUrl = '';\n this.queuedCandidates = [];\n this.start();\n }\n start() {\n console.log('requesting ICE servers');\n fetch(new URL('whep', this.url), {\n method: 'OPTIONS',\n })\n .then((res) => this.onIceServers(res))\n .catch((err) => {\n console.log('error: ' + err);\n this.scheduleRestart();\n });\n }\n onIceServers(res) {\n this.pc = new RTCPeerConnection({\n iceServers: linkToIceServers(res.headers.get('Link')),\n });\n const direction = 'sendrecv';\n this.pc.addTransceiver('video', { direction });\n this.pc.addTransceiver('audio', { direction });\n this.pc.onicecandidate = (evt) => this.onLocalCandidate(evt);\n this.pc.oniceconnectionstatechange = () => this.onConnectionState();\n this.pc.ontrack = (evt) => {\n console.log('new track:', evt.track.kind);\n this.video.srcObject = evt.streams[0];\n };\n this.pc.createOffer().then((offer) => this.onLocalOffer(offer));\n }\n onLocalOffer(offer) {\n editOffer(offer);\n this.offerData = parseOffer(offer.sdp);\n this.pc.setLocalDescription(offer);\n console.log('sending offer');\n fetch(new URL('whep', this.url), {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/sdp',\n },\n body: offer.sdp,\n })\n .then((res) => {\n if (res.status !== 201) {\n throw new Error('bad status code');\n }\n this.sessionUrl = new URL(res.headers.get('location'), this.url).toString();\n return res.text();\n })\n .then((sdp) => this.onRemoteAnswer(new RTCSessionDescription({\n type: 'answer',\n sdp,\n })))\n .catch((err) => {\n console.log('error: ' + err);\n this.scheduleRestart();\n });\n }\n onConnectionState() {\n if (this.restartTimeout !== null) {\n return;\n }\n console.log('peer connection state:', this.pc.iceConnectionState);\n switch (this.pc.iceConnectionState) {\n case 'disconnected':\n this.scheduleRestart();\n }\n }\n onRemoteAnswer(answer) {\n if (this.restartTimeout !== null) {\n return;\n }\n this.pc.setRemoteDescription(answer);\n if (this.queuedCandidates.length !== 0) {\n this.sendLocalCandidates(this.queuedCandidates);\n this.queuedCandidates = [];\n }\n }\n onLocalCandidate(evt) {\n if (this.restartTimeout !== null) {\n return;\n }\n if (evt.candidate !== null) {\n if (this.sessionUrl === '') {\n this.queuedCandidates.push(evt.candidate);\n }\n else {\n this.sendLocalCandidates([evt.candidate]);\n }\n }\n }\n sendLocalCandidates(candidates) {\n fetch(this.sessionUrl + window.location.search, {\n method: 'PATCH',\n headers: {\n 'Content-Type': 'application/trickle-ice-sdpfrag',\n 'If-Match': '*',\n },\n body: generateSdpFragment(this.offerData, candidates),\n })\n .then((res) => {\n if (res.status !== 204) {\n throw new Error('bad status code');\n }\n })\n .catch((err) => {\n console.log('error: ' + err);\n this.scheduleRestart();\n });\n }\n scheduleRestart() {\n if (this.restartTimeout !== null) {\n return;\n }\n if (this.pc !== null) {\n this.pc.close();\n this.pc = null;\n }\n this.restartTimeout = window.setTimeout(() => {\n this.restartTimeout = null;\n this.start();\n }, restartPause);\n if (this.sessionUrl) {\n fetch(this.sessionUrl, {\n method: 'DELETE',\n })\n .then((res) => {\n if (res.status !== 200) {\n throw new Error('bad status code');\n }\n })\n .catch((err) => {\n console.log('delete session error: ' + err);\n });\n }\n this.sessionUrl = '';\n this.queuedCandidates = [];\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -4,12 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = void 0;
7
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
8
- function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
9
- function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
10
- function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
11
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
12
- function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
7
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
8
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
9
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
13
10
  var SrsRtcPlayerConstructor = SrsRtcPlayerAsync;
14
11
  /**
15
12
  * WSPlayer是核心组件
@@ -38,7 +35,7 @@ var WebrtcPlayerManager = /*#__PURE__*/function () {
38
35
  this.recordList = [];
39
36
  this.init(opt);
40
37
  }
41
- return _createClass(WebrtcPlayerManager, [{
38
+ _createClass(WebrtcPlayerManager, [{
42
39
  key: "init",
43
40
  value: function init(opt) {
44
41
  this.initPlayer(opt);
@@ -143,6 +140,8 @@ var WebrtcPlayerManager = /*#__PURE__*/function () {
143
140
  // this.player.jumpPlayByTime(time);
144
141
  }
145
142
  }]);
143
+ return WebrtcPlayerManager;
146
144
  }();
147
- var _default = exports["default"] = WebrtcPlayerManager;
145
+ var _default = WebrtcPlayerManager;
146
+ exports["default"] = _default;
148
147
  //# sourceMappingURL=PlayerManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PlayerManager.js","names":["SrsRtcPlayerConstructor","SrsRtcPlayerAsync","WebrtcPlayerManager","opt","_classCallCheck","el","realPlayer","recordPlayer","player","url","type","playNum","playIndex","currentChannelId","recordList","init","_createClass","key","value","initPlayer","num","$","concat","prop","stream","play","reason","close","console","error","pause","playSpeed","speed","setFullScreen","setPlayerAdapter","playerAdapter","setPlayerNum","number","setSelectIndex","index","jumpPlayByTime","time","_default","exports"],"sources":["webrtc/PlayerManager.js"],"sourcesContent":["let SrsRtcPlayerConstructor = SrsRtcPlayerAsync;\n/**\n * WSPlayer是核心组件\n * API 封装了接口\n */\nclass WebrtcPlayerManager {\n constructor(opt) {\n // 播放器所在的容器ID\n this.el = opt.el;\n // 实时预览播放器\n this.realPlayer = null;\n // 录像回放播放器\n this.recordPlayer = null;\n this.player = null;\n this.url = opt.url;\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.init(opt);\n }\n init(opt) {\n this.initPlayer(opt);\n }\n /**\n * 初始化实时预览播放器\n */\n initPlayer(opt) {\n this.playNum = opt.num;\n this.realPlayer = new SrsRtcPlayerConstructor();\n if (this.type) {\n $(`#${this.el}`).prop('srcObject', this.realPlayer.stream);\n }\n else {\n $(`#${this.el}`).prop('src', this.realPlayer.stream);\n }\n this.realPlayer.play(this.url).catch(function (reason) {\n this.realPlayer.close();\n console.error(reason);\n });\n this.player = this.realPlayer;\n }\n /**\n * 录像暂停\n * 只有正在播放的录像调用才有效\n */\n pause() {\n this.recordPlayer && this.recordPlayer.pause();\n }\n /**\n * 录像暂停后播放\n * 只有暂停后的录像调用才有效\n */\n play() {\n this.realPlayer && this.realPlayer.play(this.url);\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() {\n this.player && this.player.close();\n }\n /**\n * 设置全屏\n */\n setFullScreen() {\n // this.player.setFullScreen();\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 {string} time HH:mm:ss格式\n */\n jumpPlayByTime(time) {\n // this.player.jumpPlayByTime(time);\n }\n}\nexport default WebrtcPlayerManager;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"PlayerManager.js","names":["SrsRtcPlayerConstructor","SrsRtcPlayerAsync","WebrtcPlayerManager","opt","_classCallCheck","el","realPlayer","recordPlayer","player","url","type","playNum","playIndex","currentChannelId","recordList","init","_createClass","key","value","initPlayer","num","$","concat","prop","stream","play","reason","close","console","error","pause","playSpeed","speed","setFullScreen","setPlayerAdapter","playerAdapter","setPlayerNum","number","setSelectIndex","index","jumpPlayByTime","time","_default","exports"],"sources":["webrtc/PlayerManager.js"],"sourcesContent":["let SrsRtcPlayerConstructor = SrsRtcPlayerAsync;\n/**\n * WSPlayer是核心组件\n * API 封装了接口\n */\nclass WebrtcPlayerManager {\n constructor(opt) {\n // 播放器所在的容器ID\n this.el = opt.el;\n // 实时预览播放器\n this.realPlayer = null;\n // 录像回放播放器\n this.recordPlayer = null;\n this.player = null;\n this.url = opt.url;\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.init(opt);\n }\n init(opt) {\n this.initPlayer(opt);\n }\n /**\n * 初始化实时预览播放器\n */\n initPlayer(opt) {\n this.playNum = opt.num;\n this.realPlayer = new SrsRtcPlayerConstructor();\n if (this.type) {\n $(`#${this.el}`).prop('srcObject', this.realPlayer.stream);\n }\n else {\n $(`#${this.el}`).prop('src', this.realPlayer.stream);\n }\n this.realPlayer.play(this.url).catch(function (reason) {\n this.realPlayer.close();\n console.error(reason);\n });\n this.player = this.realPlayer;\n }\n /**\n * 录像暂停\n * 只有正在播放的录像调用才有效\n */\n pause() {\n this.recordPlayer && this.recordPlayer.pause();\n }\n /**\n * 录像暂停后播放\n * 只有暂停后的录像调用才有效\n */\n play() {\n this.realPlayer && this.realPlayer.play(this.url);\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() {\n this.player && this.player.close();\n }\n /**\n * 设置全屏\n */\n setFullScreen() {\n // this.player.setFullScreen();\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 {string} time HH:mm:ss格式\n */\n jumpPlayByTime(time) {\n // this.player.jumpPlayByTime(time);\n }\n}\nexport default WebrtcPlayerManager;\n"],"mappings":"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","ignoreList":[]}
@@ -4,12 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = void 0;
7
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
8
- function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
9
- function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
10
- function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
11
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
12
- function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
7
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
8
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
9
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
13
10
  var WfsPlayerManager = /*#__PURE__*/function () {
14
11
  function WfsPlayerManager(opt) {
15
12
  _classCallCheck(this, WfsPlayerManager);
@@ -34,7 +31,7 @@ var WfsPlayerManager = /*#__PURE__*/function () {
34
31
  this.reload = opt.reload;
35
32
  this.init();
36
33
  }
37
- return _createClass(WfsPlayerManager, [{
34
+ _createClass(WfsPlayerManager, [{
38
35
  key: "init",
39
36
  value: function init() {
40
37
  if (H5Player.isSupported()) {
@@ -159,6 +156,8 @@ var WfsPlayerManager = /*#__PURE__*/function () {
159
156
  // this.player.jumpPlayByTime(time);
160
157
  }
161
158
  }]);
159
+ return WfsPlayerManager;
162
160
  }();
163
- var _default = exports["default"] = WfsPlayerManager;
161
+ var _default = WfsPlayerManager;
162
+ exports["default"] = _default;
164
163
  //# sourceMappingURL=PlayerManager.js.map