@vtx/player 1.11.0 → 1.12.2
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/api/fetch.js +68 -71
- package/lib/api/fetch.js.map +1 -1
- package/lib/api/index.js +33 -51
- package/lib/api/index.js.map +1 -1
- package/lib/api/types.d.ts +16 -7
- package/lib/api/types.js +0 -1
- package/lib/api/types.js.map +1 -1
- package/lib/bd/PlayerManager.js +8 -7
- package/lib/bd/PlayerManager.js.map +1 -1
- package/lib/bd2.x/PlayerManager.d.ts +71 -0
- package/lib/bd2.x/PlayerManager.js +228 -0
- package/lib/bd2.x/PlayerManager.js.map +1 -0
- package/lib/bd2.x/swfobject-all.d.ts +11 -0
- package/lib/bd2.x/swfobject-all.js +158 -0
- package/lib/bd2.x/swfobject-all.js.map +1 -0
- package/lib/bd2.x/swfobject.d.ts +40 -0
- package/lib/bd2.x/swfobject.js +722 -0
- package/lib/bd2.x/swfobject.js.map +1 -0
- package/lib/bill-player/index.d.ts +1 -1
- package/lib/bill-player/index.js +9 -11
- package/lib/bill-player/index.js.map +1 -1
- package/lib/components/download-tag/index.js +7 -8
- package/lib/components/download-tag/index.js.map +1 -1
- package/lib/components/set-tag-video/index.js +7 -8
- package/lib/components/set-tag-video/index.js.map +1 -1
- package/lib/components/split-screen/index.d.ts +1 -1
- package/lib/components/split-screen/index.js +3 -5
- package/lib/components/split-screen/index.js.map +1 -1
- package/lib/components/tag-video/index.js +10 -11
- package/lib/components/tag-video/index.js.map +1 -1
- package/lib/components/video-scale/index.d.ts +1 -1
- package/lib/components/video-scale/index.js +2 -3
- package/lib/components/video-scale/index.js.map +1 -1
- package/lib/config.d.ts +1 -1
- package/lib/config.js +1 -2
- package/lib/config.js.map +1 -1
- package/lib/context/index.js +3 -5
- package/lib/context/index.js.map +1 -1
- package/lib/controls/index.d.ts +13 -12
- package/lib/controls/index.js +32 -35
- package/lib/controls/index.js.map +1 -1
- package/lib/h264/PlayerManager.js +8 -7
- package/lib/h264/PlayerManager.js.map +1 -1
- package/lib/history-control/index.d.ts +2 -2
- package/lib/history-control/index.js +8 -10
- package/lib/history-control/index.js.map +1 -1
- package/lib/history-control-v2/components/grid-item/index.js +33 -13
- package/lib/history-control-v2/components/grid-item/index.js.map +1 -1
- package/lib/history-control-v2/components/panel/VideoTable.d.ts +4 -2
- package/lib/history-control-v2/components/panel/VideoTable.js +265 -59
- package/lib/history-control-v2/components/panel/VideoTable.js.map +1 -1
- package/lib/history-control-v2/components/panel/index.d.ts +1 -0
- package/lib/history-control-v2/components/panel/index.js +40 -19
- package/lib/history-control-v2/components/panel/index.js.map +1 -1
- package/lib/history-control-v2/context.js +1 -2
- package/lib/history-control-v2/context.js.map +1 -1
- package/lib/history-control-v2/index.d.ts +4 -4
- package/lib/history-control-v2/index.js +77 -77
- package/lib/history-control-v2/index.js.map +1 -1
- package/lib/history-control-v2/interface.d.ts +20 -11
- package/lib/history-control-v2/utils.d.ts +1 -1
- package/lib/history-control-v2/utils.js +51 -27
- package/lib/history-control-v2/utils.js.map +1 -1
- package/lib/history-player/index.d.ts +20 -1
- package/lib/history-player/index.js +235 -184
- package/lib/history-player/index.js.map +1 -1
- package/lib/hooks/useSettings.js +1 -2
- package/lib/hooks/useSettings.js.map +1 -1
- package/lib/hooks/useTranslation.d.ts +1 -1
- package/lib/hooks/useTranslation.js +6 -6
- package/lib/hooks/useTranslation.js.map +1 -1
- package/lib/icc/PlayerManager.js +9 -8
- package/lib/icc/PlayerManager.js.map +1 -1
- package/lib/icc/api.d.ts +1 -68
- package/lib/icc/api.js +7 -3
- package/lib/icc/api.js.map +1 -1
- package/lib/icons/index.d.ts +73 -73
- package/lib/icons/index.js +112 -141
- package/lib/icons/index.js.map +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/live-channel-player/index.d.ts +1 -1
- package/lib/live-channel-player/index.js +39 -32
- package/lib/live-channel-player/index.js.map +1 -1
- package/lib/live-control/index.d.ts +4 -2
- package/lib/live-control/index.js +21 -13
- package/lib/live-control/index.js.map +1 -1
- package/lib/live-control-v2/index.d.ts +5 -3
- package/lib/live-control-v2/index.js +22 -22
- package/lib/live-control-v2/index.js.map +1 -1
- package/lib/live-player/index.d.ts +1 -0
- package/lib/live-player/index.js +166 -139
- package/lib/live-player/index.js.map +1 -1
- package/lib/locales/en.json +93 -93
- package/lib/locales/index.d.ts +3 -3
- package/lib/locales/index.js +15 -24
- package/lib/locales/index.js.map +1 -1
- package/lib/locales/zh-CN.json +93 -93
- package/lib/mpegts/PlayerManager.js +14 -8
- package/lib/mpegts/PlayerManager.js.map +1 -1
- package/lib/player/BdPlayer.d.ts +8 -2
- package/lib/player/BdPlayer.js +138 -47
- package/lib/player/BdPlayer.js.map +1 -1
- package/lib/player/BdPlayer2.d.ts +118 -0
- package/lib/player/BdPlayer2.js +341 -0
- package/lib/player/BdPlayer2.js.map +1 -0
- package/lib/player/FlvPlayer.d.ts +3 -1
- package/lib/player/FlvPlayer.js +17 -20
- package/lib/player/FlvPlayer.js.map +1 -1
- package/lib/player/H264Player.d.ts +3 -1
- package/lib/player/H264Player.js +17 -20
- package/lib/player/H264Player.js.map +1 -1
- package/lib/player/HkcarwsPlayer.d.ts +11 -1
- package/lib/player/HkcarwsPlayer.js +149 -36
- package/lib/player/HkcarwsPlayer.js.map +1 -1
- package/lib/player/HkwsPlayer.d.ts +21 -1
- package/lib/player/HkwsPlayer.js +184 -92
- package/lib/player/HkwsPlayer.js.map +1 -1
- package/lib/player/HlsPlayer.d.ts +3 -1
- package/lib/player/HlsPlayer.js +17 -20
- package/lib/player/HlsPlayer.js.map +1 -1
- package/lib/player/IccwsPlayer.d.ts +3 -1
- package/lib/player/IccwsPlayer.js +19 -22
- package/lib/player/IccwsPlayer.js.map +1 -1
- package/lib/player/IframePlayer.d.ts +3 -1
- package/lib/player/IframePlayer.js +8 -7
- package/lib/player/IframePlayer.js.map +1 -1
- package/lib/player/Mp4Player.d.ts +3 -1
- package/lib/player/Mp4Player.js +17 -20
- package/lib/player/Mp4Player.js.map +1 -1
- package/lib/player/RslPlayer.d.ts +3 -1
- package/lib/player/RslPlayer.js +17 -20
- package/lib/player/RslPlayer.js.map +1 -1
- package/lib/player/VtxHlsPlayer.d.ts +3 -1
- package/lib/player/VtxHlsPlayer.js +17 -20
- package/lib/player/VtxHlsPlayer.js.map +1 -1
- package/lib/player/VtxwhepPlayer.d.ts +3 -1
- package/lib/player/VtxwhepPlayer.js +17 -20
- package/lib/player/VtxwhepPlayer.js.map +1 -1
- package/lib/player/VtxwsPlayer.d.ts +3 -1
- package/lib/player/VtxwsPlayer.js +16 -19
- package/lib/player/VtxwsPlayer.js.map +1 -1
- package/lib/player/Web34Player.d.ts +173 -0
- package/lib/player/Web34Player.js +1912 -0
- package/lib/player/Web34Player.js.map +1 -0
- package/lib/player/WebrtcPlayer.d.ts +3 -1
- package/lib/player/WebrtcPlayer.js +17 -20
- package/lib/player/WebrtcPlayer.js.map +1 -1
- package/lib/player/WfsPlayer.d.ts +3 -1
- package/lib/player/WfsPlayer.js +17 -20
- package/lib/player/WfsPlayer.js.map +1 -1
- package/lib/player/YsyPlayer.d.ts +117 -0
- package/lib/player/YsyPlayer.js +273 -0
- package/lib/player/YsyPlayer.js.map +1 -0
- package/lib/player/index.d.ts +4 -1
- package/lib/player/index.js +22 -1
- package/lib/player/index.js.map +1 -1
- package/lib/player/indexOld.d.ts +3 -1
- package/lib/player/indexOld.js +98 -101
- package/lib/player/indexOld.js.map +1 -1
- package/lib/rsl/PlayerManager.d.ts +1 -1
- package/lib/rsl/PlayerManager.js +8 -7
- package/lib/rsl/PlayerManager.js.map +1 -1
- package/lib/typings/h5player.d.ts +33 -1
- package/lib/utils/index.d.ts +1 -1
- package/lib/utils/index.js +16 -27
- package/lib/utils/index.js.map +1 -1
- package/lib/vtxHls/PlayerManager.js +8 -7
- package/lib/vtxHls/PlayerManager.js.map +1 -1
- package/lib/vtxHls/WhepManager.js +11 -10
- package/lib/vtxHls/WhepManager.js.map +1 -1
- package/lib/webrtc/PlayerManager.js +8 -7
- package/lib/webrtc/PlayerManager.js.map +1 -1
- package/lib/wfs/PlayerManager.js +8 -7
- package/lib/wfs/PlayerManager.js.map +1 -1
- package/package.json +5 -1
package/lib/live-player/index.js
CHANGED
|
@@ -4,7 +4,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports["default"] = void 0;
|
|
7
|
-
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
8
7
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
9
8
|
var _react = require("react");
|
|
10
9
|
var _api = require("../api");
|
|
@@ -17,13 +16,15 @@ var _utils = require("../utils");
|
|
|
17
16
|
var _ahooks = require("ahooks");
|
|
18
17
|
var _space = _interopRequireDefault(require("antd/lib/space"));
|
|
19
18
|
var _moment = _interopRequireDefault(require("moment"));
|
|
20
|
-
function _interopRequireDefault(
|
|
21
|
-
function
|
|
19
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
20
|
+
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
|
|
21
|
+
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
|
|
22
|
+
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
22
23
|
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."); }
|
|
23
|
-
function _unsupportedIterableToArray(
|
|
24
|
-
function _arrayLikeToArray(
|
|
25
|
-
function _iterableToArrayLimit(
|
|
26
|
-
function _arrayWithHoles(
|
|
24
|
+
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; } }
|
|
25
|
+
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; }
|
|
26
|
+
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; } }
|
|
27
|
+
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
27
28
|
var __awaiter = void 0 && (void 0).__awaiter || function (thisArg, _arguments, P, generator) {
|
|
28
29
|
function adopt(value) {
|
|
29
30
|
return value instanceof P ? value : new P(function (resolve) {
|
|
@@ -55,6 +56,7 @@ var __awaiter = void 0 && (void 0).__awaiter || function (thisArg, _arguments, P
|
|
|
55
56
|
// import { Space } from 'antd';
|
|
56
57
|
|
|
57
58
|
var LivePlayer = function LivePlayer(props, selfRef) {
|
|
59
|
+
var _a;
|
|
58
60
|
var empty = props.empty,
|
|
59
61
|
url = props.url,
|
|
60
62
|
beenHasVideo = props.beenHasVideo,
|
|
@@ -63,8 +65,6 @@ var LivePlayer = function LivePlayer(props, selfRef) {
|
|
|
63
65
|
devicePort = props.devicePort,
|
|
64
66
|
userName = props.userName,
|
|
65
67
|
password = props.password,
|
|
66
|
-
_props$channelId = props.channelId,
|
|
67
|
-
channelId = _props$channelId === void 0 ? '' : _props$channelId,
|
|
68
68
|
_props$channelName = props.channelName,
|
|
69
69
|
channelName = _props$channelName === void 0 ? '' : _props$channelName,
|
|
70
70
|
_props$enableAgent = props.enableAgent,
|
|
@@ -75,7 +75,8 @@ var LivePlayer = function LivePlayer(props, selfRef) {
|
|
|
75
75
|
height = _props$height === void 0 ? '100%' : _props$height,
|
|
76
76
|
captureName = props.captureName,
|
|
77
77
|
_props$type = props.type,
|
|
78
|
-
type = _props$type === void 0 ? '' : _props$type,
|
|
78
|
+
type = _props$type === void 0 ? 'flv' : _props$type,
|
|
79
|
+
hkType = props.hkType,
|
|
79
80
|
channelNum = props.channelNum,
|
|
80
81
|
_props$deviceId = props.deviceId,
|
|
81
82
|
deviceId = _props$deviceId === void 0 ? '' : _props$deviceId,
|
|
@@ -118,6 +119,10 @@ var LivePlayer = function LivePlayer(props, selfRef) {
|
|
|
118
119
|
_useSetState2 = _slicedToArray(_useSetState, 2),
|
|
119
120
|
state = _useSetState2[0],
|
|
120
121
|
setState = _useSetState2[1];
|
|
122
|
+
var isYsy = type === 'ysy';
|
|
123
|
+
var showVolumeControl = beenHasAudio || isYsy;
|
|
124
|
+
var showCaptureControl = !!screenshot || isYsy;
|
|
125
|
+
var showCloudControl = isYsy ? !!cloudParams && cloudParams.type !== 'none' : (cloudParams === null || cloudParams === void 0 ? void 0 : cloudParams.type) !== 'none';
|
|
121
126
|
(0, _react.useImperativeHandle)(selfRef, function () {
|
|
122
127
|
return {
|
|
123
128
|
player: playerRef.current,
|
|
@@ -139,133 +144,152 @@ var LivePlayer = function LivePlayer(props, selfRef) {
|
|
|
139
144
|
var transType = type || playerParams.type;
|
|
140
145
|
var player = null;
|
|
141
146
|
(function () {
|
|
142
|
-
return __awaiter(void 0, void 0, void 0, /*#__PURE__*/_regenerator
|
|
143
|
-
var token, PLAYER;
|
|
144
|
-
return _regenerator
|
|
145
|
-
while (1) {
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
_context.next = 5;
|
|
150
|
-
break;
|
|
151
|
-
}
|
|
152
|
-
_context.next = 3;
|
|
153
|
-
return _api2["default"].getToken({
|
|
154
|
-
deviceId: deviceId
|
|
155
|
-
});
|
|
156
|
-
case 3:
|
|
157
|
-
token = _context.sent;
|
|
158
|
-
localStorage.setItem('accessToken', token);
|
|
159
|
-
case 5:
|
|
160
|
-
PLAYER = null;
|
|
161
|
-
_context.t0 = transType;
|
|
162
|
-
_context.next = _context.t0 === 'flv' ? 9 : _context.t0 === 'hls' ? 11 : _context.t0 === 'vtxhls' ? 13 : _context.t0 === 'vtxwhep' ? 15 : _context.t0 === 'hk_ws' ? 17 : _context.t0 === 'hkcar_ws' ? 19 : _context.t0 === 'vtx_ws' ? 21 : _context.t0 === 'icc_ws' ? 23 : _context.t0 === 'webrtc' ? 25 : _context.t0 === 'wfs' ? 27 : _context.t0 === 'h264' ? 29 : _context.t0 === 'bd' ? 31 : _context.t0 === 'mp4' ? 33 : _context.t0 === 'iframe' ? 35 : _context.t0 === 'rsl' ? 37 : 39;
|
|
147
|
+
return __awaiter(void 0, void 0, void 0, /*#__PURE__*/_regenerator().m(function _callee() {
|
|
148
|
+
var token, _token, PLAYER, _t;
|
|
149
|
+
return _regenerator().w(function (_context) {
|
|
150
|
+
while (1) switch (_context.n) {
|
|
151
|
+
case 0:
|
|
152
|
+
if (!(type === 'icc_ws')) {
|
|
153
|
+
_context.n = 2;
|
|
163
154
|
break;
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
155
|
+
}
|
|
156
|
+
_context.n = 1;
|
|
157
|
+
return _api2["default"].getToken({
|
|
158
|
+
deviceId: deviceId
|
|
159
|
+
});
|
|
160
|
+
case 1:
|
|
161
|
+
token = _context.v;
|
|
162
|
+
localStorage.setItem('accessToken', token);
|
|
163
|
+
case 2:
|
|
164
|
+
if (!(type === 'ysy')) {
|
|
165
|
+
_context.n = 4;
|
|
166
|
+
break;
|
|
167
|
+
}
|
|
168
|
+
_context.n = 3;
|
|
169
|
+
return _api2["default"].getTokenYsy({
|
|
170
|
+
deviceId: deviceId
|
|
171
|
+
});
|
|
172
|
+
case 3:
|
|
173
|
+
_token = _context.v;
|
|
174
|
+
localStorage.setItem('accessToken', _token);
|
|
175
|
+
case 4:
|
|
176
|
+
PLAYER = null;
|
|
177
|
+
_t = transType;
|
|
178
|
+
_context.n = _t === 'flv' ? 5 : _t === 'hls' ? 6 : _t === 'vtxhls' ? 7 : _t === 'vtxwhep' ? 8 : _t === 'hk_ws' ? 9 : _t === 'hkcar_ws' ? 10 : _t === 'vtx_ws' ? 11 : _t === 'web3.4' ? 12 : _t === 'web3.0' ? 12 : _t === 'icc_ws' ? 13 : _t === 'webrtc' ? 14 : _t === 'wfs' ? 15 : _t === 'h264' ? 16 : _t === 'bd' ? 17 : _t === 'bd2' ? 18 : _t === 'mp4' ? 19 : _t === 'iframe' ? 20 : _t === 'rsl' ? 21 : _t === 'ysy' ? 22 : 23;
|
|
179
|
+
break;
|
|
180
|
+
case 5:
|
|
181
|
+
PLAYER = _index.FlvPlayer;
|
|
182
|
+
return _context.a(3, 24);
|
|
183
|
+
case 6:
|
|
184
|
+
PLAYER = _index.HlsPlayer;
|
|
185
|
+
return _context.a(3, 24);
|
|
186
|
+
case 7:
|
|
187
|
+
PLAYER = _index.VtxHlsPlayer;
|
|
188
|
+
return _context.a(3, 24);
|
|
189
|
+
case 8:
|
|
190
|
+
PLAYER = _index.VtxwhepPlayer;
|
|
191
|
+
return _context.a(3, 24);
|
|
192
|
+
case 9:
|
|
193
|
+
PLAYER = _index.HkwsPlayer;
|
|
194
|
+
return _context.a(3, 24);
|
|
195
|
+
case 10:
|
|
196
|
+
PLAYER = _index.HkcarwsPlayer;
|
|
197
|
+
return _context.a(3, 24);
|
|
198
|
+
case 11:
|
|
199
|
+
PLAYER = _index.VtxwsPlayer;
|
|
200
|
+
return _context.a(3, 24);
|
|
201
|
+
case 12:
|
|
202
|
+
PLAYER = _index.Web34Player;
|
|
203
|
+
return _context.a(3, 24);
|
|
204
|
+
case 13:
|
|
205
|
+
PLAYER = _index.IccwsPlayer;
|
|
206
|
+
return _context.a(3, 24);
|
|
207
|
+
case 14:
|
|
208
|
+
PLAYER = _index.WebrtcPlayer;
|
|
209
|
+
return _context.a(3, 24);
|
|
210
|
+
case 15:
|
|
211
|
+
PLAYER = _index.WfsPlayer;
|
|
212
|
+
return _context.a(3, 24);
|
|
213
|
+
case 16:
|
|
214
|
+
PLAYER = _index.H264Player;
|
|
215
|
+
return _context.a(3, 24);
|
|
216
|
+
case 17:
|
|
217
|
+
PLAYER = _index.BdPlayer;
|
|
218
|
+
return _context.a(3, 24);
|
|
219
|
+
case 18:
|
|
220
|
+
PLAYER = _index.BdPlayer2;
|
|
221
|
+
return _context.a(3, 24);
|
|
222
|
+
case 19:
|
|
223
|
+
PLAYER = _index.Mp4Player;
|
|
224
|
+
return _context.a(3, 24);
|
|
225
|
+
case 20:
|
|
226
|
+
PLAYER = _index.IframePlayer;
|
|
227
|
+
return _context.a(3, 24);
|
|
228
|
+
case 21:
|
|
229
|
+
PLAYER = _index.RslPlayer;
|
|
230
|
+
return _context.a(3, 24);
|
|
231
|
+
case 22:
|
|
232
|
+
PLAYER = _index.YsyPlayer;
|
|
233
|
+
return _context.a(3, 24);
|
|
234
|
+
case 23:
|
|
235
|
+
return _context.a(3, 24);
|
|
236
|
+
case 24:
|
|
237
|
+
if (!PLAYER) {
|
|
238
|
+
_context.n = 26;
|
|
239
|
+
break;
|
|
240
|
+
}
|
|
241
|
+
_context.n = 25;
|
|
242
|
+
return new PLAYER({
|
|
243
|
+
url: url,
|
|
244
|
+
deviceIp: deviceIp,
|
|
245
|
+
deviceId: deviceId,
|
|
246
|
+
devicePort: devicePort,
|
|
247
|
+
userName: userName,
|
|
248
|
+
password: password,
|
|
249
|
+
streamType: streamType,
|
|
250
|
+
deviceCode: deviceCode,
|
|
251
|
+
channelNum: channelNum,
|
|
252
|
+
enableAgent: enableAgent,
|
|
253
|
+
container: container,
|
|
254
|
+
beenHasAudio: beenHasAudio,
|
|
255
|
+
type: type,
|
|
256
|
+
hkType: hkType,
|
|
257
|
+
reload: function reload() {
|
|
258
|
+
if (typeof _reload === 'function') {
|
|
259
|
+
_reload();
|
|
240
260
|
}
|
|
241
|
-
}
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
261
|
+
},
|
|
262
|
+
onClose: function onClose() {
|
|
263
|
+
if (typeof _onClose === 'function') {
|
|
264
|
+
_onClose();
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
});
|
|
268
|
+
case 25:
|
|
269
|
+
player = _context.v;
|
|
270
|
+
playerRef.current = player;
|
|
271
|
+
setState({
|
|
272
|
+
loading: true,
|
|
273
|
+
error: false
|
|
274
|
+
});
|
|
275
|
+
player && player.play().then(function () {
|
|
276
|
+
saveRecordFetch();
|
|
245
277
|
setState({
|
|
246
|
-
|
|
278
|
+
play: true,
|
|
247
279
|
error: false
|
|
248
280
|
});
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
return setState({
|
|
257
|
-
error: true
|
|
258
|
-
});
|
|
259
|
-
})["finally"](function () {
|
|
260
|
-
setState({
|
|
261
|
-
loading: false
|
|
262
|
-
});
|
|
263
|
-
loaded && loaded();
|
|
281
|
+
})["catch"](function () {
|
|
282
|
+
return setState({
|
|
283
|
+
error: true
|
|
284
|
+
});
|
|
285
|
+
})["finally"](function () {
|
|
286
|
+
setState({
|
|
287
|
+
loading: false
|
|
264
288
|
});
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
289
|
+
loaded && loaded();
|
|
290
|
+
});
|
|
291
|
+
case 26:
|
|
292
|
+
return _context.a(2);
|
|
269
293
|
}
|
|
270
294
|
}, _callee);
|
|
271
295
|
}));
|
|
@@ -284,7 +308,7 @@ var LivePlayer = function LivePlayer(props, selfRef) {
|
|
|
284
308
|
var saveRecordFetch = function saveRecordFetch() {
|
|
285
309
|
(0, _api.saveRecord)({
|
|
286
310
|
id: state.playRecordId,
|
|
287
|
-
|
|
311
|
+
channelNum: channelNum,
|
|
288
312
|
channelName: channelName,
|
|
289
313
|
deviceId: deviceId,
|
|
290
314
|
deviceName: deviceName,
|
|
@@ -339,10 +363,14 @@ var LivePlayer = function LivePlayer(props, selfRef) {
|
|
|
339
363
|
})
|
|
340
364
|
})), state.error && (0, _jsxRuntime.jsx)(_controls.ErrorState, {
|
|
341
365
|
onClick: _reload
|
|
342
|
-
}), state.loading && (0, _jsxRuntime.jsx)(_controls.LoadingState, {}), state.showCloudPanel && (
|
|
366
|
+
}), state.loading && (0, _jsxRuntime.jsx)(_controls.LoadingState, {}), state.showCloudPanel && (0, _jsxRuntime.jsx)(_controls.CloudControlPanel, Object.assign({}, cloudParams, {
|
|
367
|
+
localControl: ((_a = playerRef.current) === null || _a === void 0 ? void 0 : _a.ptzControl) ? function (action, command) {
|
|
368
|
+
return playerRef.current.ptzControl(action, command);
|
|
369
|
+
} : undefined
|
|
370
|
+
})), (0, _jsxRuntime.jsx)(_controls.InfoPanel, {
|
|
343
371
|
showInfo: showInfo,
|
|
344
372
|
info: info
|
|
345
|
-
}), (0, _jsxRuntime.jsx)("div", Object.assign({
|
|
373
|
+
}), type !== 'ysy' && (0, _jsxRuntime.jsx)("div", Object.assign({
|
|
346
374
|
className: "controls",
|
|
347
375
|
ref: controlsRef
|
|
348
376
|
}, {
|
|
@@ -351,16 +379,16 @@ var LivePlayer = function LivePlayer(props, selfRef) {
|
|
|
351
379
|
size: 12,
|
|
352
380
|
align: "center"
|
|
353
381
|
}, {
|
|
354
|
-
children: [
|
|
382
|
+
children: [showVolumeControl && (0, _jsxRuntime.jsx)(_controls.VolumeControl, {
|
|
355
383
|
player: playerRef.current,
|
|
356
384
|
container: controlsRef.current
|
|
357
|
-
}),
|
|
385
|
+
}), showCaptureControl && (0, _jsxRuntime.jsx)(_icons.CaptureIcon, {
|
|
358
386
|
onClick: handleCapture
|
|
359
387
|
}), beenHasVideo && channelNum && deviceId && (0, _jsxRuntime.jsx)(_controls.TalkControl, {
|
|
360
388
|
player: playerRef.current,
|
|
361
389
|
channelNum: channelNum,
|
|
362
390
|
deviceId: deviceId
|
|
363
|
-
}),
|
|
391
|
+
}), showCloudControl && (0, _jsxRuntime.jsx)(_icons.CloudControlIcon, {
|
|
364
392
|
active: state.showCloudPanel,
|
|
365
393
|
onClick: function onClick() {
|
|
366
394
|
return setState({
|
|
@@ -377,6 +405,5 @@ var LivePlayer = function LivePlayer(props, selfRef) {
|
|
|
377
405
|
})) : null;
|
|
378
406
|
};
|
|
379
407
|
// LivePlayer.displayName = 'live-player';
|
|
380
|
-
var _default = /*#__PURE__*/(0, _react.forwardRef)(LivePlayer);
|
|
381
|
-
exports["default"] = _default;
|
|
408
|
+
var _default = exports["default"] = /*#__PURE__*/(0, _react.forwardRef)(LivePlayer);
|
|
382
409
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_jsxRuntime","require","_react","_api","_controls","_api2","_interopRequireDefault","_icons","_locales","_index","_utils","_ahooks","_space","_moment","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","__awaiter","thisArg","_arguments","P","generator","adopt","resolve","Promise","reject","fulfilled","step","e","rejected","result","then","apply","LivePlayer","props","selfRef","empty","url","beenHasVideo","beenHasAudio","deviceIp","devicePort","userName","password","_props$channelId","channelId","_props$channelName","channelName","_props$enableAgent","enableAgent","_props$width","width","_props$height","height","captureName","_props$type","type","channelNum","_props$deviceId","deviceId","_props$deviceName","deviceName","streamType","deviceCode","cloudParams","_props$showInfo","showInfo","_props$info","info","screenshot","loaded","reload","onClose","_props$showMarker","showMarker","markerText","_props$markerDense","markerDense","messages","getLocaleMessages","ref","useRef","wrapRef","controlsRef","playerRef","_useFullscreen","useFullscreen","_useFullscreen2","isFullscreen","toggleFullscreen","_useSetState","useSetState","play","error","loading","id","guidGenerator","volume","showCloudPanel","playRecordId","_useSetState2","state","setState","useImperativeHandle","player","current","resize","saveRecordFetch","useEffect","_a","container","destroy","playerParams","getPlayerParams","transType","_regenerator","mark","_callee","token","PLAYER","wrap","_callee$","_context","prev","API","getToken","sent","localStorage","setItem","t0","FlvPlayer","abrupt","HlsPlayer","VtxHlsPlayer","VtxwhepPlayer","HkwsPlayer","HkcarwsPlayer","VtxwsPlayer","IccwsPlayer","WebrtcPlayer","WfsPlayer","H264Player","BdPlayer","Mp4Player","IframePlayer","RslPlayer","stop","saveRecord","recordType","startTime","moment","format","endTime","res","handleCapture","capture","stopPropagation","handleFullScreen","_jsxs","assign","className","style","children","_jsx","fill","map","_","index","lineHeight","watermark","ErrorState","onClick","LoadingState","hasCloudControl","CloudControlPanel","InfoPanel","Space","size","align","VolumeControl","CaptureIcon","TalkControl","CloudControlIcon","active","ExitFullScreenIcon","FullScreenIcon","_default","forwardRef","exports"],"sources":["live-player/index.js"],"sourcesContent":["var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { forwardRef, useEffect, useImperativeHandle, useRef } from 'react';\nimport { saveRecord } from '../api';\nimport { CloudControlPanel, ErrorState, InfoPanel, LoadingState, TalkControl, VolumeControl, } from '../controls';\nimport API from '../icc/api';\nimport { CaptureIcon, CloudControlIcon, ExitFullScreenIcon, FullScreenIcon } from '../icons';\nimport { getLocaleMessages } from '../locales';\nimport { BdPlayer, FlvPlayer, H264Player, HkcarwsPlayer, HkwsPlayer, HlsPlayer, IccwsPlayer, IframePlayer, Mp4Player, RslPlayer, VtxHlsPlayer, VtxwhepPlayer, VtxwsPlayer, WebrtcPlayer, WfsPlayer, } from '../player/index';\nimport { getPlayerParams, guidGenerator } from '../utils';\nimport { useFullscreen, useSetState } from 'ahooks';\n// import { Space } from 'antd';\nimport Space from 'antd/lib/space';\nimport moment from 'moment';\nconst LivePlayer = (props, selfRef) => {\n const { empty, url, beenHasVideo, beenHasAudio, deviceIp, devicePort, userName, password, channelId = '', channelName = '', enableAgent = false, width = '100%', height = '100%', captureName, type = '', channelNum, deviceId = '', deviceName = '', streamType, deviceCode, cloudParams, showInfo = false, info = [], screenshot, loaded, reload, onClose, showMarker = false, markerText, markerDense = false, } = props;\n const messages = getLocaleMessages();\n const ref = useRef(null);\n const wrapRef = useRef(null);\n const controlsRef = useRef(null);\n const playerRef = useRef();\n const [isFullscreen, { toggleFullscreen }] = useFullscreen(wrapRef);\n const [state, setState] = useSetState({\n play: false,\n error: false,\n loading: false,\n id: 'vtx_hk_player_' + guidGenerator(),\n volume: 0,\n showCloudPanel: false,\n playRecordId: '',\n });\n useImperativeHandle(selfRef, () => {\n return {\n player: playerRef.current,\n resize: () => {\n const player = playerRef.current;\n player && url && player.resize();\n },\n saveRecordFetch,\n };\n });\n useEffect(() => {\n var _a;\n const container = ref.current;\n if (!url || !container || empty) {\n (_a = playerRef.current) === null || _a === void 0 ? void 0 : _a.destroy();\n return;\n }\n const playerParams = getPlayerParams(type, url, enableAgent, true);\n const transType = type || playerParams.type;\n let player = null;\n (() => __awaiter(void 0, void 0, void 0, function* () {\n // 如果是icc_ws类型,需要获取token\n if (type === 'icc_ws') {\n const token = yield API.getToken({\n deviceId,\n });\n localStorage.setItem('accessToken', token);\n }\n let PLAYER = null;\n switch (transType) {\n case 'flv':\n PLAYER = FlvPlayer;\n break;\n case 'hls':\n PLAYER = HlsPlayer;\n break;\n case 'vtxhls':\n PLAYER = VtxHlsPlayer;\n break;\n case 'vtxwhep':\n PLAYER = VtxwhepPlayer;\n break;\n case 'hk_ws':\n PLAYER = HkwsPlayer;\n break;\n case 'hkcar_ws':\n PLAYER = HkcarwsPlayer;\n break;\n case 'vtx_ws':\n PLAYER = VtxwsPlayer;\n break;\n case 'icc_ws':\n PLAYER = IccwsPlayer;\n break;\n case 'webrtc':\n PLAYER = WebrtcPlayer;\n break;\n case 'wfs':\n PLAYER = WfsPlayer;\n break;\n case 'h264':\n PLAYER = H264Player;\n break;\n case 'bd':\n PLAYER = BdPlayer;\n break;\n case 'mp4':\n PLAYER = Mp4Player;\n break;\n case 'iframe':\n PLAYER = IframePlayer;\n break;\n case 'rsl':\n PLAYER = RslPlayer;\n break;\n default:\n break;\n }\n if (PLAYER) {\n player = yield new PLAYER({\n url,\n deviceIp,\n deviceId,\n devicePort,\n userName,\n password,\n streamType,\n deviceCode,\n channelNum,\n enableAgent,\n container,\n beenHasAudio,\n type,\n reload: () => {\n if (typeof reload === 'function') {\n reload();\n }\n },\n onClose: () => {\n if (typeof onClose === 'function') {\n onClose();\n }\n },\n });\n playerRef.current = player;\n setState({ loading: true, error: false });\n player &&\n player\n .play()\n .then(() => {\n saveRecordFetch();\n setState({ play: true, error: false });\n })\n .catch(() => setState({ error: true }))\n .finally(() => {\n setState({ loading: false });\n loaded && loaded();\n });\n }\n }))();\n return () => {\n player && (player === null || player === void 0 ? void 0 : player.destroy());\n saveRecordFetch();\n setState({ error: false, loading: false, play: false });\n };\n }, [url, empty]);\n // 保存播放记录\n const saveRecordFetch = () => {\n saveRecord({\n id: state.playRecordId,\n channelId,\n channelName,\n deviceId,\n deviceName,\n recordType: 'MONITOR',\n startTime: moment().format('YYYY-MM-DD HH:mm:ss'),\n endTime: state.playRecordId ? moment().format('YYYY-MM-DD HH:mm:ss') : '',\n }).then((res) => {\n setState({\n playRecordId: res === null || res === void 0 ? void 0 : res.id,\n });\n });\n };\n const handleCapture = (e) => {\n const player = playerRef.current;\n player && player.capture(captureName || messages.player.captureName, screenshot);\n e.stopPropagation();\n };\n const handleFullScreen = (e) => {\n toggleFullscreen();\n const player = playerRef.current;\n player && player.resize();\n e.stopPropagation();\n };\n return !empty ? (_jsxs(\"div\", Object.assign({ className: \"vtx-live-player\", ref: wrapRef, style: { width, height } }, { children: [_jsx(\"div\", { ref: ref, style: { height: '100%', width: '100%' }, id: state.id }), showMarker && (_jsx(\"div\", Object.assign({ className: \"vtx-player-marker\" }, { children: new Array(100).fill('1').map((_, index) => (_jsx(\"div\", Object.assign({ className: \"marker\", style: {\n width: markerDense ? '50%' : '45%',\n lineHeight: markerDense ? 5 : 10,\n } }, { children: markerText || messages.player.watermark }), index))) }))), state.error && _jsx(ErrorState, { onClick: reload }), state.loading && _jsx(LoadingState, {}), state.showCloudPanel && (cloudParams === null || cloudParams === void 0 ? void 0 : cloudParams.hasCloudControl) && (_jsx(CloudControlPanel, Object.assign({}, cloudParams))), _jsx(InfoPanel, { showInfo: showInfo, info: info }), _jsx(\"div\", Object.assign({ className: \"controls\", ref: controlsRef }, { children: _jsxs(Space, Object.assign({ className: \"right\", size: 12, align: \"center\" }, { children: [beenHasAudio && (_jsx(VolumeControl, { player: playerRef.current, container: controlsRef.current })), !!screenshot && _jsx(CaptureIcon, { onClick: handleCapture }), beenHasVideo && channelNum && deviceId && (_jsx(TalkControl, { player: playerRef.current, channelNum: channelNum, deviceId: deviceId })), (cloudParams === null || cloudParams === void 0 ? void 0 : cloudParams.type) !== 'none' && (_jsx(CloudControlIcon, { active: state.showCloudPanel, onClick: () => setState({ showCloudPanel: !state.showCloudPanel }) })), isFullscreen ? (_jsx(ExitFullScreenIcon, { onClick: handleFullScreen })) : (_jsx(FullScreenIcon, { onClick: handleFullScreen }))] })) }))] }))) : null;\n};\n// LivePlayer.displayName = 'live-player';\nexport default forwardRef(LivePlayer);\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_jsxRuntime","require","_react","_api","_controls","_api2","_interopRequireDefault","_icons","_locales","_index","_utils","_ahooks","_space","_moment","e","__esModule","_regenerator","t","r","Symbol","n","iterator","o","toStringTag","i","c","prototype","Generator","u","Object","create","_regeneratorDefine2","f","p","y","G","v","a","d","bind","length","l","TypeError","call","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","__proto__","displayName","w","m","defineProperty","_regeneratorDefine","_invoke","enumerable","configurable","writable","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","next","push","isArray","__awaiter","thisArg","_arguments","P","generator","adopt","resolve","Promise","reject","fulfilled","step","rejected","result","then","apply","LivePlayer","props","selfRef","_a","empty","url","beenHasVideo","beenHasAudio","deviceIp","devicePort","userName","password","_props$channelName","channelName","_props$enableAgent","enableAgent","_props$width","width","_props$height","height","captureName","_props$type","type","hkType","channelNum","_props$deviceId","deviceId","_props$deviceName","deviceName","streamType","deviceCode","cloudParams","_props$showInfo","showInfo","_props$info","info","screenshot","loaded","reload","onClose","_props$showMarker","showMarker","markerText","_props$markerDense","markerDense","messages","getLocaleMessages","ref","useRef","wrapRef","controlsRef","playerRef","_useFullscreen","useFullscreen","_useFullscreen2","isFullscreen","toggleFullscreen","_useSetState","useSetState","play","error","loading","id","guidGenerator","volume","showCloudPanel","playRecordId","_useSetState2","state","setState","isYsy","showVolumeControl","showCaptureControl","showCloudControl","useImperativeHandle","player","current","resize","saveRecordFetch","useEffect","container","destroy","playerParams","getPlayerParams","transType","_callee","token","_token","PLAYER","_t","_context","API","getToken","localStorage","setItem","getTokenYsy","FlvPlayer","HlsPlayer","VtxHlsPlayer","VtxwhepPlayer","HkwsPlayer","HkcarwsPlayer","VtxwsPlayer","Web34Player","IccwsPlayer","WebrtcPlayer","WfsPlayer","H264Player","BdPlayer","BdPlayer2","Mp4Player","IframePlayer","RslPlayer","YsyPlayer","saveRecord","recordType","startTime","moment","format","endTime","res","handleCapture","capture","stopPropagation","handleFullScreen","_jsxs","assign","className","style","children","_jsx","fill","map","_","index","lineHeight","watermark","ErrorState","onClick","LoadingState","CloudControlPanel","localControl","ptzControl","action","command","undefined","InfoPanel","Space","size","align","VolumeControl","CaptureIcon","TalkControl","CloudControlIcon","active","ExitFullScreenIcon","FullScreenIcon","_default","exports","forwardRef"],"sources":["live-player/index.js"],"sourcesContent":["var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { forwardRef, useEffect, useImperativeHandle, useRef } from 'react';\nimport { saveRecord } from '../api';\nimport { CloudControlPanel, ErrorState, InfoPanel, LoadingState, TalkControl, VolumeControl, } from '../controls';\nimport API from '../icc/api';\nimport { CaptureIcon, CloudControlIcon, ExitFullScreenIcon, FullScreenIcon } from '../icons';\nimport { getLocaleMessages } from '../locales';\nimport { BdPlayer, BdPlayer2, FlvPlayer, H264Player, HkcarwsPlayer, HkwsPlayer, HlsPlayer, IccwsPlayer, IframePlayer, Mp4Player, RslPlayer, VtxHlsPlayer, VtxwhepPlayer, VtxwsPlayer, Web34Player, WebrtcPlayer, WfsPlayer, YsyPlayer, } from '../player/index';\nimport { getPlayerParams, guidGenerator } from '../utils';\nimport { useFullscreen, useSetState } from 'ahooks';\n// import { Space } from 'antd';\nimport Space from 'antd/lib/space';\nimport moment from 'moment';\nconst LivePlayer = (props, selfRef) => {\n var _a;\n const { empty, url, beenHasVideo, beenHasAudio, deviceIp, devicePort, userName, password, channelName = '', enableAgent = false, width = '100%', height = '100%', captureName, type = 'flv', hkType, channelNum, deviceId = '', deviceName = '', streamType, deviceCode, cloudParams, showInfo = false, info = [], screenshot, loaded, reload, onClose, showMarker = false, markerText, markerDense = false, } = props;\n const messages = getLocaleMessages();\n const ref = useRef(null);\n const wrapRef = useRef(null);\n const controlsRef = useRef(null);\n const playerRef = useRef();\n const [isFullscreen, { toggleFullscreen }] = useFullscreen(wrapRef);\n const [state, setState] = useSetState({\n play: false,\n error: false,\n loading: false,\n id: 'vtx_hk_player_' + guidGenerator(),\n volume: 0,\n showCloudPanel: false,\n playRecordId: '',\n });\n const isYsy = type === 'ysy';\n const showVolumeControl = beenHasAudio || isYsy;\n const showCaptureControl = !!screenshot || isYsy;\n const showCloudControl = isYsy\n ? !!cloudParams && cloudParams.type !== 'none'\n : (cloudParams === null || cloudParams === void 0 ? void 0 : cloudParams.type) !== 'none';\n useImperativeHandle(selfRef, () => {\n return {\n player: playerRef.current,\n resize: () => {\n const player = playerRef.current;\n player && url && player.resize();\n },\n saveRecordFetch,\n };\n });\n useEffect(() => {\n var _a;\n const container = ref.current;\n if (!url || !container || empty) {\n (_a = playerRef.current) === null || _a === void 0 ? void 0 : _a.destroy();\n return;\n }\n const playerParams = getPlayerParams(type, url, enableAgent, true);\n const transType = type || playerParams.type;\n let player = null;\n (() => __awaiter(void 0, void 0, void 0, function* () {\n // 如果是icc_ws类型,需要获取token\n if (type === 'icc_ws') {\n const token = yield API.getToken({\n deviceId,\n });\n localStorage.setItem('accessToken', token);\n }\n if (type === 'ysy') {\n const token = yield API.getTokenYsy({\n deviceId,\n });\n localStorage.setItem('accessToken', token);\n }\n let PLAYER = null;\n switch (transType) {\n case 'flv':\n PLAYER = FlvPlayer;\n break;\n case 'hls':\n PLAYER = HlsPlayer;\n break;\n case 'vtxhls':\n PLAYER = VtxHlsPlayer;\n break;\n case 'vtxwhep':\n PLAYER = VtxwhepPlayer;\n break;\n case 'hk_ws':\n PLAYER = HkwsPlayer;\n break;\n case 'hkcar_ws':\n PLAYER = HkcarwsPlayer;\n break;\n case 'vtx_ws':\n PLAYER = VtxwsPlayer;\n break;\n case 'web3.4':\n case 'web3.0':\n PLAYER = Web34Player;\n break;\n case 'icc_ws':\n PLAYER = IccwsPlayer;\n break;\n case 'webrtc':\n PLAYER = WebrtcPlayer;\n break;\n case 'wfs':\n PLAYER = WfsPlayer;\n break;\n case 'h264':\n PLAYER = H264Player;\n break;\n case 'bd':\n PLAYER = BdPlayer;\n break;\n case 'bd2':\n PLAYER = BdPlayer2;\n break;\n case 'mp4':\n PLAYER = Mp4Player;\n break;\n case 'iframe':\n PLAYER = IframePlayer;\n break;\n case 'rsl':\n PLAYER = RslPlayer;\n break;\n case 'ysy':\n PLAYER = YsyPlayer;\n break;\n default:\n break;\n }\n if (PLAYER) {\n player = yield new PLAYER({\n url,\n deviceIp,\n deviceId,\n devicePort,\n userName,\n password,\n streamType,\n deviceCode,\n channelNum,\n enableAgent,\n container,\n beenHasAudio,\n type,\n hkType,\n reload: () => {\n if (typeof reload === 'function') {\n reload();\n }\n },\n onClose: () => {\n if (typeof onClose === 'function') {\n onClose();\n }\n },\n });\n playerRef.current = player;\n setState({ loading: true, error: false });\n player &&\n player\n .play()\n .then(() => {\n saveRecordFetch();\n setState({ play: true, error: false });\n })\n .catch(() => setState({ error: true }))\n .finally(() => {\n setState({ loading: false });\n loaded && loaded();\n });\n }\n }))();\n return () => {\n player && (player === null || player === void 0 ? void 0 : player.destroy());\n saveRecordFetch();\n setState({ error: false, loading: false, play: false });\n };\n }, [url, empty]);\n // 保存播放记录\n const saveRecordFetch = () => {\n saveRecord({\n id: state.playRecordId,\n channelNum,\n channelName,\n deviceId,\n deviceName,\n recordType: 'MONITOR',\n startTime: moment().format('YYYY-MM-DD HH:mm:ss'),\n endTime: state.playRecordId ? moment().format('YYYY-MM-DD HH:mm:ss') : '',\n }).then((res) => {\n setState({\n playRecordId: res === null || res === void 0 ? void 0 : res.id,\n });\n });\n };\n const handleCapture = (e) => {\n const player = playerRef.current;\n player && player.capture(captureName || messages.player.captureName, screenshot);\n e.stopPropagation();\n };\n const handleFullScreen = (e) => {\n toggleFullscreen();\n const player = playerRef.current;\n player && player.resize();\n e.stopPropagation();\n };\n return !empty ? (_jsxs(\"div\", Object.assign({ className: \"vtx-live-player\", ref: wrapRef, style: { width, height } }, { children: [_jsx(\"div\", { ref: ref, style: { height: '100%', width: '100%' }, id: state.id }), showMarker && (_jsx(\"div\", Object.assign({ className: \"vtx-player-marker\" }, { children: new Array(100).fill('1').map((_, index) => (_jsx(\"div\", Object.assign({ className: \"marker\", style: {\n width: markerDense ? '50%' : '45%',\n lineHeight: markerDense ? 5 : 10,\n } }, { children: markerText || messages.player.watermark }), index))) }))), state.error && _jsx(ErrorState, { onClick: reload }), state.loading && _jsx(LoadingState, {}), state.showCloudPanel && (_jsx(CloudControlPanel, Object.assign({}, cloudParams, { localControl: ((_a = playerRef.current) === null || _a === void 0 ? void 0 : _a.ptzControl)\n ? (action, command) => playerRef.current.ptzControl(action, command)\n : undefined }))), _jsx(InfoPanel, { showInfo: showInfo, info: info }), type !== 'ysy' && (_jsx(\"div\", Object.assign({ className: \"controls\", ref: controlsRef }, { children: _jsxs(Space, Object.assign({ className: \"right\", size: 12, align: \"center\" }, { children: [showVolumeControl && (_jsx(VolumeControl, { player: playerRef.current, container: controlsRef.current })), showCaptureControl && _jsx(CaptureIcon, { onClick: handleCapture }), beenHasVideo && channelNum && deviceId && (_jsx(TalkControl, { player: playerRef.current, channelNum: channelNum, deviceId: deviceId })), showCloudControl && (_jsx(CloudControlIcon, { active: state.showCloudPanel, onClick: () => setState({ showCloudPanel: !state.showCloudPanel }) })), isFullscreen ? (_jsx(ExitFullScreenIcon, { onClick: handleFullScreen })) : (_jsx(FullScreenIcon, { onClick: handleFullScreen }))] })) })))] }))) : null;\n};\n// LivePlayer.displayName = 'live-player';\nexport default forwardRef(LivePlayer);\n"],"mappings":"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","ignoreList":[]}
|