@volcengine/veplayer 2.1.0 → 2.2.0-rc.0

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/umd/veplayer.d.ts CHANGED
@@ -3697,7 +3697,16 @@ interface Rtm {
3697
3697
  * @default 1000
3698
3698
  */
3699
3699
  retryDelay?: number;
3700
+ /** {zh}
3701
+ * @brief 是否开启自动降级。
3702
+ * @default true
3703
+ */
3700
3704
  enableFallback?: boolean;
3705
+ /** {zh}
3706
+ * @brief 是否开启自动转码。
3707
+ * @default false
3708
+ */
3709
+ enableRTMAutoTranscode?: boolean;
3701
3710
  }
3702
3711
  /**
3703
3712
  * @list option
@@ -6644,7 +6653,16 @@ declare namespace live {
6644
6653
  * @default 1000
6645
6654
  */
6646
6655
  retryDelay?: number;
6656
+ /** {zh}
6657
+ * @brief 是否开启自动降级。
6658
+ * @default true
6659
+ */
6647
6660
  enableFallback?: boolean;
6661
+ /** {zh}
6662
+ * @brief 是否开启自动转码。
6663
+ * @default false
6664
+ */
6665
+ enableRTMAutoTranscode?: boolean;
6648
6666
  }
6649
6667
  /**
6650
6668
  * @list option
@@ -18384,6 +18384,41 @@ var __publicField = (obj, key, value) => {
18384
18384
  return Rtm.isSupportedH264();
18385
18385
  return false;
18386
18386
  }
18387
+ const appendSearchParams = (url, searchParams) => {
18388
+ var _a, _b;
18389
+ const urlObject = getUrlObject(url);
18390
+ if (!url || !urlObject) {
18391
+ return url ?? "";
18392
+ }
18393
+ const withoutProtocol = url.startsWith("//");
18394
+ for (const key in searchParams) {
18395
+ const value = searchParams[key];
18396
+ if (urlObject == null ? void 0 : urlObject.searchParams.has(key)) {
18397
+ (_a = urlObject == null ? void 0 : urlObject.searchParams) == null ? void 0 : _a.set(key, value);
18398
+ } else {
18399
+ (_b = urlObject == null ? void 0 : urlObject.searchParams) == null ? void 0 : _b.append(key, value);
18400
+ }
18401
+ }
18402
+ url = urlObject.toString();
18403
+ if (withoutProtocol) {
18404
+ return url == null ? void 0 : url.replace(location.protocol, "");
18405
+ }
18406
+ return url;
18407
+ };
18408
+ const getUrlObject = (url) => {
18409
+ if (!url) {
18410
+ return;
18411
+ }
18412
+ const withoutProtocol = url.startsWith("//");
18413
+ if (withoutProtocol) {
18414
+ url = location.protocol + url;
18415
+ }
18416
+ try {
18417
+ return new URL(url);
18418
+ } catch (error2) {
18419
+ return;
18420
+ }
18421
+ };
18387
18422
  const rtmStrategy = {
18388
18423
  options: {},
18389
18424
  module: DynamicModule.PluginRtm
@@ -18399,7 +18434,12 @@ var __publicField = (obj, key, value) => {
18399
18434
  var _a;
18400
18435
  let backupStrategy;
18401
18436
  const { url } = options;
18402
- const { fallbackUrl, enableFallback = true, ...ret } = options.rtm || {};
18437
+ const {
18438
+ fallbackUrl,
18439
+ enableFallback = true,
18440
+ enableRTMAutoTranscode,
18441
+ ...ret
18442
+ } = options.rtm || {};
18403
18443
  const actualFallbackUrl = !enableFallback ? "" : !fallbackUrl && url ? generateFallbackUrl(url) : fallbackUrl;
18404
18444
  const backupType = actualFallbackUrl && util.getStreamType(actualFallbackUrl);
18405
18445
  if (backupType === "flv" && util.isMseSupported(Codec.H264)) {
@@ -18442,6 +18482,7 @@ var __publicField = (obj, key, value) => {
18442
18482
  return {
18443
18483
  options: {
18444
18484
  ...(backupStrategy == null ? void 0 : backupStrategy.options) || {},
18485
+ url: enableRTMAutoTranscode ? appendSearchParams(url, { enableRTMAutoTranscode: "true" }) : void 0,
18445
18486
  _RTMdegrade: void 0,
18446
18487
  rts: {
18447
18488
  retryCount: 0,
@@ -21112,24 +21153,12 @@ var __publicField = (obj, key, value) => {
21112
21153
  return userId;
21113
21154
  };
21114
21155
  const generateUrlWithSessionId = (url) => {
21115
- var _a, _b;
21116
- if (!url) {
21117
- return "";
21118
- }
21119
- const withoutProtocol = url.startsWith("//");
21120
- if (withoutProtocol) {
21121
- url = location.protocol + url;
21156
+ const urlObject = getUrlObject(url);
21157
+ if (!urlObject) {
21158
+ return url ?? "";
21122
21159
  }
21123
- try {
21124
- const urlObject = new URL(url);
21125
- if (!((_a = urlObject == null ? void 0 : urlObject.searchParams) == null ? void 0 : _a.get("_session_id"))) {
21126
- (_b = urlObject == null ? void 0 : urlObject.searchParams) == null ? void 0 : _b.append("_session_id", generateSessionId());
21127
- }
21128
- url = urlObject.toString();
21129
- } catch (error2) {
21130
- }
21131
- if (withoutProtocol) {
21132
- return url == null ? void 0 : url.replace(location.protocol, "");
21160
+ if (!(urlObject == null ? void 0 : urlObject.searchParams.get("_session_id"))) {
21161
+ return appendSearchParams(url, { _session_id: generateSessionId() });
21133
21162
  }
21134
21163
  return url;
21135
21164
  };
@@ -21230,7 +21259,7 @@ var __publicField = (obj, key, value) => {
21230
21259
  user_id: this._userId,
21231
21260
  device_id: this._deviceId,
21232
21261
  ext: {
21233
- veplayer_version: "2.1.0",
21262
+ veplayer_version: "2.2.0-rc.0",
21234
21263
  flv_version: "3.0.10-alpha.4",
21235
21264
  hls_version: "3.0.10-alpha.4",
21236
21265
  rts_version: "0.2.0-alpha.5"
@@ -3697,7 +3697,16 @@ interface Rtm {
3697
3697
  * @default 1000
3698
3698
  */
3699
3699
  retryDelay?: number;
3700
+ /** {zh}
3701
+ * @brief 是否开启自动降级。
3702
+ * @default true
3703
+ */
3700
3704
  enableFallback?: boolean;
3705
+ /** {zh}
3706
+ * @brief 是否开启自动转码。
3707
+ * @default false
3708
+ */
3709
+ enableRTMAutoTranscode?: boolean;
3701
3710
  }
3702
3711
  /**
3703
3712
  * @list option
@@ -6644,7 +6653,16 @@ declare namespace live {
6644
6653
  * @default 1000
6645
6654
  */
6646
6655
  retryDelay?: number;
6656
+ /** {zh}
6657
+ * @brief 是否开启自动降级。
6658
+ * @default true
6659
+ */
6647
6660
  enableFallback?: boolean;
6661
+ /** {zh}
6662
+ * @brief 是否开启自动转码。
6663
+ * @default false
6664
+ */
6665
+ enableRTMAutoTranscode?: boolean;
6648
6666
  }
6649
6667
  /**
6650
6668
  * @list option
@@ -18384,6 +18384,41 @@ var __publicField = (obj, key, value) => {
18384
18384
  return Rtm.isSupportedH264();
18385
18385
  return false;
18386
18386
  }
18387
+ const appendSearchParams = (url, searchParams) => {
18388
+ var _a, _b;
18389
+ const urlObject = getUrlObject(url);
18390
+ if (!url || !urlObject) {
18391
+ return url ?? "";
18392
+ }
18393
+ const withoutProtocol = url.startsWith("//");
18394
+ for (const key in searchParams) {
18395
+ const value = searchParams[key];
18396
+ if (urlObject == null ? void 0 : urlObject.searchParams.has(key)) {
18397
+ (_a = urlObject == null ? void 0 : urlObject.searchParams) == null ? void 0 : _a.set(key, value);
18398
+ } else {
18399
+ (_b = urlObject == null ? void 0 : urlObject.searchParams) == null ? void 0 : _b.append(key, value);
18400
+ }
18401
+ }
18402
+ url = urlObject.toString();
18403
+ if (withoutProtocol) {
18404
+ return url == null ? void 0 : url.replace(location.protocol, "");
18405
+ }
18406
+ return url;
18407
+ };
18408
+ const getUrlObject = (url) => {
18409
+ if (!url) {
18410
+ return;
18411
+ }
18412
+ const withoutProtocol = url.startsWith("//");
18413
+ if (withoutProtocol) {
18414
+ url = location.protocol + url;
18415
+ }
18416
+ try {
18417
+ return new URL(url);
18418
+ } catch (error2) {
18419
+ return;
18420
+ }
18421
+ };
18387
18422
  const rtmStrategy = {
18388
18423
  options: {},
18389
18424
  module: DynamicModule.PluginRtm
@@ -18399,7 +18434,12 @@ var __publicField = (obj, key, value) => {
18399
18434
  var _a;
18400
18435
  let backupStrategy;
18401
18436
  const { url } = options;
18402
- const { fallbackUrl, enableFallback = true, ...ret } = options.rtm || {};
18437
+ const {
18438
+ fallbackUrl,
18439
+ enableFallback = true,
18440
+ enableRTMAutoTranscode,
18441
+ ...ret
18442
+ } = options.rtm || {};
18403
18443
  const actualFallbackUrl = !enableFallback ? "" : !fallbackUrl && url ? generateFallbackUrl(url) : fallbackUrl;
18404
18444
  const backupType = actualFallbackUrl && util.getStreamType(actualFallbackUrl);
18405
18445
  if (backupType === "flv" && util.isMseSupported(Codec.H264)) {
@@ -18442,6 +18482,7 @@ var __publicField = (obj, key, value) => {
18442
18482
  return {
18443
18483
  options: {
18444
18484
  ...(backupStrategy == null ? void 0 : backupStrategy.options) || {},
18485
+ url: enableRTMAutoTranscode ? appendSearchParams(url, { enableRTMAutoTranscode: "true" }) : void 0,
18445
18486
  _RTMdegrade: void 0,
18446
18487
  rts: {
18447
18488
  retryCount: 0,
@@ -21112,24 +21153,12 @@ var __publicField = (obj, key, value) => {
21112
21153
  return userId;
21113
21154
  };
21114
21155
  const generateUrlWithSessionId = (url) => {
21115
- var _a, _b;
21116
- if (!url) {
21117
- return "";
21118
- }
21119
- const withoutProtocol = url.startsWith("//");
21120
- if (withoutProtocol) {
21121
- url = location.protocol + url;
21156
+ const urlObject = getUrlObject(url);
21157
+ if (!urlObject) {
21158
+ return url ?? "";
21122
21159
  }
21123
- try {
21124
- const urlObject = new URL(url);
21125
- if (!((_a = urlObject == null ? void 0 : urlObject.searchParams) == null ? void 0 : _a.get("_session_id"))) {
21126
- (_b = urlObject == null ? void 0 : urlObject.searchParams) == null ? void 0 : _b.append("_session_id", generateSessionId());
21127
- }
21128
- url = urlObject.toString();
21129
- } catch (error2) {
21130
- }
21131
- if (withoutProtocol) {
21132
- return url == null ? void 0 : url.replace(location.protocol, "");
21160
+ if (!(urlObject == null ? void 0 : urlObject.searchParams.get("_session_id"))) {
21161
+ return appendSearchParams(url, { _session_id: generateSessionId() });
21133
21162
  }
21134
21163
  return url;
21135
21164
  };
@@ -21230,7 +21259,7 @@ var __publicField = (obj, key, value) => {
21230
21259
  user_id: this._userId,
21231
21260
  device_id: this._deviceId,
21232
21261
  ext: {
21233
- veplayer_version: "2.1.0",
21262
+ veplayer_version: "2.2.0-rc.0",
21234
21263
  flv_version: "3.0.10-alpha.4",
21235
21264
  hls_version: "3.0.10-alpha.4",
21236
21265
  rts_version: "0.2.0-alpha.5"