ezuikit-js 0.6.1-beta.0 → 0.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/demos/base-demo/ezuikit.js +111 -156
  2. package/demos/base-demo/hls.html +24 -0
  3. package/demos/base-demo/index.html +1 -4
  4. package/demos/react-demo/package-lock.json +13893 -0
  5. package/ezuikit.js +111 -156
  6. package/package.json +1 -1
  7. package/demos/base-demo/ezuikit_v5.0/Decoder.js +0 -9195
  8. package/demos/base-demo/ezuikit_v5.0/Decoder.wasm +0 -0
  9. package/demos/base-demo/ezuikit_v5.0/ezuikit.js +0 -2334
  10. package/demos/base-demo/ezuikit_v5.0/js/AudioRenderer.js +0 -225
  11. package/demos/base-demo/ezuikit_v5.0/js/SuperRender_10.js +0 -395
  12. package/demos/base-demo/ezuikit_v5.0/js/SystemTransform.js +0 -22
  13. package/demos/base-demo/ezuikit_v5.0/js/SystemTransform.js.mem +0 -0
  14. package/demos/base-demo/ezuikit_v5.0/js/jsPlugin-4.0.0.min.js +0 -26
  15. package/demos/base-demo/ezuikit_v5.0/js/jsPlugin-4.0.1.min.js +0 -26
  16. package/demos/base-demo/ezuikit_v5.0/js/jsPlugin-4.0.2.min.js +0 -26
  17. package/demos/base-demo/ezuikit_v5.0/js/playctrl/AudioRenderer.js +0 -225
  18. package/demos/base-demo/ezuikit_v5.0/js/playctrl/DecodeWorker.js +0 -711
  19. package/demos/base-demo/ezuikit_v5.0/js/playctrl/Decoder.js +0 -1
  20. package/demos/base-demo/ezuikit_v5.0/js/playctrl/JSPlaySDKInterface.js +0 -2518
  21. package/demos/base-demo/ezuikit_v5.0/js/playctrl/SuperRender_10.js +0 -395
  22. package/demos/base-demo/ezuikit_v5.0/js/playctrl/SuperRender_20.js +0 -1
  23. package/demos/base-demo/ezuikit_v5.0/js/transform/SystemTransform.js +0 -22
  24. package/demos/base-demo/ezuikit_v5.0/js/transform/SystemTransform.js.mem +0 -0
  25. package/demos/base-demo/ezuikit_v5.0/js/transform/systemTransform-worker.min.js +0 -1
  26. package/demos/base-demo/ezuikit_v5.0/js/tts-v4.js +0 -343
  27. package/demos/base-demo/ezuikit_v5.0/jsPlugin-2.0.1.min.js +0 -5319
  28. package/demos/base-demo/ezuikit_v5.0/rec/datepicker.js +0 -1522
  29. package/demos/base-demo/ezuikit_v5.0/rec/datepicker.min.css +0 -27
  30. package/demos/base-demo/ezuikit_v5.0/rec/datepicker.zh-CN.js +0 -19
  31. package/demos/base-demo/ezuikit_v5.0/rec/jquery.min.js +0 -2
  32. package/demos/base-demo/ezuikit_v5.0/talk/adapeter.js +0 -5497
  33. package/demos/base-demo/ezuikit_v5.0/talk/janus.js +0 -3507
  34. package/demos/base-demo/ezuikit_v5.0/talk/tts-v4.js +0 -343
  35. package/ezuikit_v5.0/Decoder.js +0 -9195
  36. package/ezuikit_v5.0/Decoder.wasm +0 -0
  37. package/ezuikit_v5.0/ezuikit.js +0 -2334
  38. package/ezuikit_v5.0/js/AudioRenderer.js +0 -225
  39. package/ezuikit_v5.0/js/SuperRender_10.js +0 -395
  40. package/ezuikit_v5.0/js/SystemTransform.js +0 -22
  41. package/ezuikit_v5.0/js/SystemTransform.js.mem +0 -0
  42. package/ezuikit_v5.0/js/jsPlugin-4.0.0.min.js +0 -26
  43. package/ezuikit_v5.0/js/jsPlugin-4.0.1.min.js +0 -26
  44. package/ezuikit_v5.0/js/jsPlugin-4.0.2.min.js +0 -26
  45. package/ezuikit_v5.0/js/playctrl/AudioRenderer.js +0 -225
  46. package/ezuikit_v5.0/js/playctrl/DecodeWorker.js +0 -711
  47. package/ezuikit_v5.0/js/playctrl/Decoder.js +0 -1
  48. package/ezuikit_v5.0/js/playctrl/JSPlaySDKInterface.js +0 -2518
  49. package/ezuikit_v5.0/js/playctrl/SuperRender_10.js +0 -395
  50. package/ezuikit_v5.0/js/playctrl/SuperRender_20.js +0 -1
  51. package/ezuikit_v5.0/js/transform/SystemTransform.js +0 -22
  52. package/ezuikit_v5.0/js/transform/SystemTransform.js.mem +0 -0
  53. package/ezuikit_v5.0/js/transform/systemTransform-worker.min.js +0 -1
  54. package/ezuikit_v5.0/js/tts-v4.js +0 -343
  55. package/ezuikit_v5.0/jsPlugin-2.0.1.min.js +0 -5319
  56. package/ezuikit_v5.0/rec/datepicker.js +0 -1522
  57. package/ezuikit_v5.0/rec/datepicker.min.css +0 -27
  58. package/ezuikit_v5.0/rec/datepicker.zh-CN.js +0 -19
  59. package/ezuikit_v5.0/rec/jquery.min.js +0 -2
  60. package/ezuikit_v5.0/talk/adapeter.js +0 -5497
  61. package/ezuikit_v5.0/talk/janus.js +0 -3507
  62. package/ezuikit_v5.0/talk/tts-v4.js +0 -343
@@ -319,13 +319,15 @@ var HLS = /*#__PURE__*/function () {
319
319
 
320
320
  _classCallCheck$1(this, HLS);
321
321
 
322
- addJs("https://open.ys7.com/sdk/js/2.0/js/hls.min.js", function () {
322
+ addJs("https://open.ys7.com/assets/ezuikit_v3.4/js/hls.js", function () {
323
323
  console.log("加载hls.min.js成功", window.Hls);
324
324
  console.log("isSupportHls", window.Hls.isSupported());
325
325
 
326
326
  if (window.Hls.isSupported()) {
327
327
  _this.initHLS(videoId, url);
328
328
  }
329
+ }, function () {
330
+ return !!window.Hls;
329
331
  });
330
332
  }
331
333
 
@@ -31912,9 +31914,40 @@ var matchTemplate = function matchTemplate(templateName, params) {
31912
31914
  };
31913
31915
 
31914
31916
  var isVersion2Available = function isVersion2Available() {
31917
+ var ua = window.navigator.userAgent.toLowerCase(); //获取用户端信息
31918
+
31919
+ var info = {
31920
+ sa: /version.*safari/.test(ua),
31921
+ //匹配Safari浏览器
31922
+ ch: /chrome/.test(ua),
31923
+ //匹配Chrome浏览器
31924
+ ff: /gecko/.test(ua) && !/webkit/.test(ua) //匹配Firefox浏览器
31925
+
31926
+ };
31915
31927
  var isMobile = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);
31916
- var isSharedArrayBuffer = window.SharedArrayBuffer;
31917
- return isSharedArrayBuffer && !isMobile;
31928
+
31929
+ if (isMobile) {
31930
+ return false;
31931
+ } else if (info.ch) {
31932
+ var getChromeVersion = function getChromeVersion() {
31933
+ var arr = window.navigator.userAgent.split(' ');
31934
+ var chromeVersion = '';
31935
+
31936
+ for (var i = 0; i < arr.length; i++) {
31937
+ if (/chrome/i.test(arr[i])) chromeVersion = arr[i];
31938
+ }
31939
+
31940
+ if (chromeVersion) {
31941
+ return Number(chromeVersion.split('/')[1].split('.')[0]);
31942
+ } else {
31943
+ return false;
31944
+ }
31945
+ };
31946
+
31947
+ return getChromeVersion() > 91 && !!window.SharedArrayBuffer;
31948
+ }
31949
+
31950
+ return false;
31918
31951
  };
31919
31952
 
31920
31953
  var EZUIKitPlayer = /*#__PURE__*/function () {
@@ -31960,11 +31993,7 @@ var EZUIKitPlayer = /*#__PURE__*/function () {
31960
31993
  this.staticPath = isVersion2Available() ? "https://open.ys7.com/assets/ezuikit_v5.0" : "https://open.ys7.com/assets/ezuikit_v4.0";
31961
31994
 
31962
31995
  if (typeof params.staticPath === 'string') {
31963
- if (params.staticPath.startsWith("http")) {
31964
- this.staticPath = params.staticPath;
31965
- } else {
31966
- this.staticPath = window.location.protocol + '//' + window.location.host + params.staticPath;
31967
- }
31996
+ this.staticPath = params.staticPath;
31968
31997
  }
31969
31998
 
31970
31999
  if (typeof params.audio !== 'undefined') {
@@ -31987,7 +32016,7 @@ var EZUIKitPlayer = /*#__PURE__*/function () {
31987
32016
 
31988
32017
  if (isVersion2Available()) {
31989
32018
  console.log("启用多线程解析视频");
31990
- pluginUrl = "".concat(this.staticPath, "/jsPlugin-2.0.1.min.js");
32019
+ pluginUrl = "".concat(this.staticPath, "/jsPlugin-2.0.0.min.js");
31991
32020
  } else {
31992
32021
  // 是否引导用户开启谷歌实验室 Google Labs 特性
31993
32022
  //enableSharedArrayBufferGuide
@@ -32130,18 +32159,6 @@ var EZUIKitPlayer = /*#__PURE__*/function () {
32130
32159
  _params$height = params.height,
32131
32160
  height = _params$height === void 0 ? 400 : _params$height;
32132
32161
 
32133
- if (!params.width || !params.height) {
32134
- var videoDOMBounding = document.getElementById(id).getBoundingClientRect();
32135
-
32136
- if (!params.width && videoDOMBounding.width > 0) {
32137
- width = videoDOMBounding.width;
32138
- }
32139
-
32140
- if (!params.height && videoDOMBounding.height > 0) {
32141
- height = videoDOMBounding.height;
32142
- }
32143
- }
32144
-
32145
32162
  if (!document.getElementById("".concat(id, "-wrap"))) {
32146
32163
  var wapDom = document.createElement("div");
32147
32164
  wapDom.id = "".concat(id, "-wrap");
@@ -32166,63 +32183,12 @@ var EZUIKitPlayer = /*#__PURE__*/function () {
32166
32183
  iMaxSplit: 1,
32167
32184
  iCurrentSplit: 1,
32168
32185
  szBasePath: "",
32169
- staticPath: _this2.staticPath,
32186
+ staticPath: params.staticPath,
32170
32187
  oStyle: {
32171
32188
  border: "none",
32172
32189
  background: "#000000"
32173
32190
  }
32174
- }); // 增加视频容器
32175
-
32176
- var pluginStatus = new Status(_this2, id);
32177
- pluginStatus.loadingStart(id);
32178
- pluginStatus.loadingSetText({
32179
- text: '初始化播放器完成'
32180
32191
  });
32181
- _this2.env = {
32182
- domain: "https://open.ys7.com"
32183
- };
32184
-
32185
- if (typeof params.env !== 'undefined') {
32186
- _this2.env = Object.assign(_this2.env, params.env);
32187
- }
32188
-
32189
- if (typeof params.handleTalkSuccess !== 'undefined') {
32190
- _this2.handleTalkSuccess = params.handleTalkSuccess;
32191
- }
32192
-
32193
- if (typeof params.handleTalkError !== 'undefined') {
32194
- _this2.handleTalkError = params.handleTalkError;
32195
- }
32196
-
32197
- _this2.errorHander = new Code();
32198
- _this2.jSPlugin = jSPlugin;
32199
-
32200
- if (_this2.themeId && !window.EZUIKit[params.id].state.EZUIKitPlayer.themeInit) {
32201
- _this2.Theme = new Theme(_this2, id);
32202
- window.EZUIKit[params.id].state.EZUIKitPlayer.themeInit = true;
32203
- }
32204
-
32205
- _this2.pluginStatus = pluginStatus;
32206
- var checkTimer = setInterval(function () {
32207
- if (_this2.jSPlugin.Module && _this2.jSPlugin.Module._JSPlayM4_GetSDKVersion && _this2.jSPlugin.Module._JSPlayM4_GetSDKVersion()) {
32208
- clearInterval(checkTimer);
32209
-
32210
- if (typeof _this2.params.handleInitSuccess === 'function') {
32211
- _this2.params.handleInitSuccess({
32212
- retcode: 0,
32213
- id: _this2.params.id,
32214
- type: "handleInitSuccess"
32215
- });
32216
- }
32217
-
32218
- resolve({
32219
- meta: {
32220
- retcode: 200,
32221
- msg: "初始化成功"
32222
- }
32223
- });
32224
- }
32225
- }, 50);
32226
32192
  } else {
32227
32193
  jSPlugin = new window.JSPlugin({
32228
32194
  szId: id,
@@ -32232,102 +32198,95 @@ var EZUIKitPlayer = /*#__PURE__*/function () {
32232
32198
  iMaxSplit: 1,
32233
32199
  iCurrentSplit: 1,
32234
32200
  szBasePath: "",
32235
- staticPath: _this2.staticPath,
32201
+ staticPath: params.staticPath,
32236
32202
  oStyle: {
32237
32203
  border: "none",
32238
32204
  background: "#000000"
32239
32205
  }
32240
32206
  });
32241
- jSPlugin.EventCallback = {
32242
- loadEventHandler: function loadEventHandler() {},
32243
- zoomEventResponse: function
32244
- /*iMode, aPoint*/
32245
- zoomEventResponse() {//电子放大回调
32246
- },
32247
- windowEventSelect: function windowEventSelect(iWndIndex) {//插件选中窗口回调
32248
- },
32249
- pluginErrorHandler: function pluginErrorHandler(iWndIndex, iErrorCode, oError) {
32250
- //插件错误回调
32251
- console.log(iWndIndex, iErrorCode, oError);
32207
+ }
32252
32208
 
32253
- if (iErrorCode === 1003) {
32254
- console.log("断流");
32209
+ jSPlugin.EventCallback = {
32210
+ loadEventHandler: function loadEventHandler() {},
32211
+ zoomEventResponse: function
32212
+ /*iMode, aPoint*/
32213
+ zoomEventResponse() {//电子放大回调
32214
+ },
32215
+ windowEventSelect: function windowEventSelect(iWndIndex) {//插件选中窗口回调
32216
+ },
32217
+ pluginErrorHandler: function pluginErrorHandler(iWndIndex, iErrorCode, oError) {
32218
+ //插件错误回调
32219
+ console.log(iWndIndex, iErrorCode, oError);
32255
32220
 
32256
- _this2.pluginStatus.loadingSetText({
32257
- text: "连接断开,请重试",
32258
- color: 'red'
32259
- });
32221
+ if (iErrorCode === 1003) {
32222
+ console.log("断流");
32260
32223
 
32261
- if (typeof _this2.params.handleError === 'function') {
32262
- _this2.params.handleError({
32263
- msg: "连接断开,请重试",
32264
- retcode: 1003,
32265
- id: _this2.params.id,
32266
- type: "handleError"
32267
- });
32268
- }
32224
+ _this2.pluginStatus.loadingSetText({
32225
+ text: "连接断开,请重试",
32226
+ color: 'red'
32227
+ });
32228
+
32229
+ if (typeof _this2.params.handleError === 'function') {
32230
+ _this2.params.handleError({
32231
+ msg: "连接断开,请重试",
32232
+ retcode: 1003,
32233
+ id: _this2.params.id,
32234
+ type: "handleError"
32235
+ });
32269
32236
  }
32270
- },
32271
- windowEventOver: function windowEventOver(iWndIndex) {},
32272
- windowEventOut: function windowEventOut(iWndIndex) {},
32273
- windowEventUp: function windowEventUp(iWndIndex) {},
32274
- windowFullCcreenChange: function windowFullCcreenChange(bFull) {},
32275
- firstFrameDisplay: function firstFrameDisplay(iWndIndex, iWidth, iHeight) {
32276
- console.log(iWidth, iHeight);
32277
- jSPlugin.JS_SetCanFullScreen(false);
32278
-
32279
- _this2.pluginStatus.loadingClear();
32280
- },
32281
- performanceLack: function performanceLack() {},
32282
- mouseEvent: function mouseEvent(iMouseEventType, iMouseX, iMouseY) {}
32283
- }; // 增加视频容器
32284
-
32285
- var pluginStatus = new Status(_this2, id);
32286
- pluginStatus.loadingStart(id);
32287
- pluginStatus.loadingSetText({
32288
- text: '初始化播放器完成'
32289
- });
32290
- _this2.env = {
32291
- domain: "https://open.ys7.com"
32292
- };
32237
+ }
32238
+ },
32239
+ windowEventOver: function windowEventOver(iWndIndex) {},
32240
+ windowEventOut: function windowEventOut(iWndIndex) {},
32241
+ windowEventUp: function windowEventUp(iWndIndex) {},
32242
+ windowFullCcreenChange: function windowFullCcreenChange(bFull) {},
32243
+ firstFrameDisplay: function firstFrameDisplay(iWndIndex, iWidth, iHeight) {
32244
+ console.log(iWidth, iHeight);
32245
+ jSPlugin.JS_SetCanFullScreen(false);
32246
+
32247
+ _this2.pluginStatus.loadingClear();
32248
+ },
32249
+ performanceLack: function performanceLack() {},
32250
+ mouseEvent: function mouseEvent(iMouseEventType, iMouseX, iMouseY) {}
32251
+ }; // 增加视频容器
32252
+
32253
+ var pluginStatus = new Status(_this2, id);
32254
+ pluginStatus.loadingStart(id);
32255
+ pluginStatus.loadingSetText({
32256
+ text: '初始化播放器完成'
32257
+ });
32258
+ _this2.env = {
32259
+ domain: "https://open.ys7.com"
32260
+ };
32293
32261
 
32294
- if (typeof params.env !== 'undefined') {
32295
- _this2.env = Object.assign(_this2.env, params.env);
32296
- }
32262
+ if (typeof params.env !== 'undefined') {
32263
+ _this2.env = Object.assign(_this2.env, params.env);
32264
+ }
32297
32265
 
32298
- if (typeof params.handleTalkSuccess !== 'undefined') {
32299
- _this2.handleTalkSuccess = params.handleTalkSuccess;
32300
- }
32266
+ if (typeof params.handleTalkSuccess !== 'undefined') {
32267
+ _this2.handleTalkSuccess = params.handleTalkSuccess;
32268
+ }
32301
32269
 
32302
- if (typeof params.handleTalkError !== 'undefined') {
32303
- _this2.handleTalkError = params.handleTalkError;
32304
- }
32270
+ if (typeof params.handleTalkError !== 'undefined') {
32271
+ _this2.handleTalkError = params.handleTalkError;
32272
+ }
32305
32273
 
32306
- _this2.errorHander = new Code();
32307
- _this2.jSPlugin = jSPlugin;
32274
+ _this2.errorHander = new Code();
32275
+ _this2.jSPlugin = jSPlugin;
32308
32276
 
32309
- if (_this2.themeId && !window.EZUIKit[params.id].state.EZUIKitPlayer.themeInit) {
32310
- _this2.Theme = new Theme(_this2, id);
32311
- window.EZUIKit[params.id].state.EZUIKitPlayer.themeInit = true;
32312
- }
32277
+ if (_this2.themeId && !window.EZUIKit[params.id].state.EZUIKitPlayer.themeInit) {
32278
+ _this2.Theme = new Theme(_this2, id);
32279
+ window.EZUIKit[params.id].state.EZUIKitPlayer.themeInit = true;
32280
+ }
32313
32281
 
32314
- _this2.pluginStatus = pluginStatus; // 待需要改造plugin,异步判断;
32282
+ _this2.pluginStatus = pluginStatus; // 待需要改造plugin,异步判断;
32315
32283
 
32316
- if (typeof _this2.params.handleInitSuccess === 'function') {
32317
- _this2.params.handleInitSuccess({
32318
- retcode: 0,
32319
- id: _this2.params.id,
32320
- type: "handleInitSuccess"
32321
- });
32284
+ resolve({
32285
+ meta: {
32286
+ retcode: 200,
32287
+ msg: "初始化成功"
32322
32288
  }
32323
-
32324
- resolve({
32325
- meta: {
32326
- retcode: 200,
32327
- msg: "初始化成功"
32328
- }
32329
- });
32330
- }
32289
+ });
32331
32290
  };
32332
32291
 
32333
32292
  var initDecoderPromise = new Promise(initDecoder);
@@ -32775,10 +32734,6 @@ var EZUIKitPlayer = /*#__PURE__*/function () {
32775
32734
  value: function play(options) {
32776
32735
  var _this5 = this;
32777
32736
 
32778
- if (this.jSPlugin.bPlay) {
32779
- return false;
32780
- }
32781
-
32782
32737
  this.pluginStatus.setPlayStatus({
32783
32738
  play: false,
32784
32739
  loading: true
@@ -0,0 +1,24 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+
4
+ <head>
5
+ <meta charset="UTF-8">
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
7
+ <title>Document</title>
8
+ <script src="./ezuikit.js"></script>
9
+ </head>
10
+
11
+ <body>
12
+ <div className="demo">
13
+ <h2>视频模式使用示例:</h2>
14
+ <video id="hlsId" autoplay controls style="width: 600px;height:400px"></video>
15
+ <video id="hlsId2" autoplay controls style="width: 600px;height:400px"></video>
16
+ </div>
17
+ <script>
18
+ var hlsDemo = new EZUIKit.HLS("hlsId","https://open.ys7.com/v3/openlive/C78957921_1_2.m3u8?expire=1687488306&id=461844489422516224&t=96ea4ce49d2ea4f2f65d045edbe8fa1a51ef9fac6f38e150052bc64a91c27db7&ev=100");
19
+
20
+ var hlsDemo2 = new EZUIKit.HLS("hlsId2","https://open.ys7.com/v3/openlive/G39444019_1_2.m3u8?expire=1687487466&id=461840962679742464&t=c076d5a5ad56090e919a6a2500b96169c20a77874cce866a87a7d65e493e6f2f&ev=100");
21
+ </script>
22
+ </body>
23
+
24
+ </html>
@@ -11,7 +11,7 @@
11
11
  <body>
12
12
  <div className="demo">
13
13
  <h2>视频模式使用示例:</h2>
14
- <div id="video-container" style="width:600px;height: 400px;">
14
+ <div id="video-container" style="width:600px;">
15
15
  </div>
16
16
  <div>
17
17
  <button onClick="play()">play</button>
@@ -37,12 +37,9 @@
37
37
  playr = new EZUIKit.EZUIKitPlayer({
38
38
  id: 'video-container', // 视频容器ID
39
39
  accessToken: accessToken,
40
- autoplay:false,
41
40
  url: 'ezopen://open.ys7.com/G39444019/1.live',
42
41
  template: 'simple', // simple - 极简版;standard-标准版;security - 安防版(预览回放);voice-语音版; theme-可配置主题;
43
42
  plugin: ['talk'], // 加载插件,talk-对讲
44
- staticPath: "/ezuikit_v5.0",
45
- // staticPath:"http://127.0.0.1:8080/ezuikit_v5.0",
46
43
  width: 600,
47
44
  height: 400,
48
45
  });