@volcengine/veplayer 2.6.0-rc.4 → 2.6.0-rc.5

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.
@@ -491,7 +491,14 @@ declare enum Level {
491
491
  /** {en}
492
492
  * @brief Error.
493
493
  */
494
- Error = "Error"
494
+ Error = "Error",
495
+ /** {zh}
496
+ * @brief 提示。
497
+ */
498
+ /** {en}
499
+ * @brief Warn.
500
+ */
501
+ Warn = "Warn"
495
502
  }
496
503
  declare enum ErrorCode {
497
504
  /** {zh}
@@ -1530,13 +1537,13 @@ interface VePlayerBaseOptions extends Omit<PlayerOptions, "autoplay" | "i18n"> {
1530
1537
  */
1531
1538
  interface Fullscreen {
1532
1539
  /** {zh}
1533
- * @brief 切换全屏时,是否旋转为横屏播放,通常在移动端使用。如果开启横屏播放,切换全屏时,将在竖屏状态下把播放器旋转 90 度,实现横屏效果。该配置优先级高于 useCssFullscreen。
1534
- * - `true`:使用旋转横屏;
1535
- * - `false`:不使用旋转横屏。
1540
+ * @brief 切换全屏时,是否旋转为横屏播放,通常在移动端使用。如果开启横屏播放,切换全屏时,将在竖屏状态下把播放器旋转 90 度,实现横屏效果。该配置优先级低于 useCssFullscreen。
1541
+ * - `true`:使用旋转横屏;
1542
+ * - `false`:不使用旋转横屏。
1536
1543
  * @default false
1537
1544
  */
1538
1545
  /** {en}
1539
- * @brief Whether to play the video in landscape mode when the video enters full-screen mode. This feature is usually used on mobile devices. Once enabled, when the video enters fullscreen mode, the player will be rotated from portrait mode by 90 degrees to landscape mode. This property has a higher priority over `useCssFullscreen`.
1546
+ * @brief Whether to play the video in landscape mode when the video enters full-screen mode. This feature is usually used on mobile devices. Once enabled, when the video enters fullscreen mode, the player will be rotated from portrait mode by 90 degrees to landscape mode. This property has a lower priority than `useCssFullscreen`.
1540
1547
  * - `true`: Enable.
1541
1548
  * - `false`: Disable.
1542
1549
  * @default false
@@ -1632,15 +1639,16 @@ type PrepareResult = {
1632
1639
  options?: Partial<VePlayerBaseOptions>;
1633
1640
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
1634
1641
  plugins?: any[];
1642
+ useSrc?: boolean;
1635
1643
  };
1636
1644
  type PreparePlugins = (url: string) => Promise<PrepareResult> | undefined;
1637
1645
  /** {zh}
1638
1646
  * @detail option
1639
- * @brief 视频的实际编码格式。如果您在degradation 设置了 SoftFirst 属性(即硬解不支持降级软解),建议您传入该参数,省去探测实际编码格式的操作。
1647
+ * @brief 视频的实际编码格式。如果您在 degradation 设置了 SoftFirst 属性(即硬解不支持降级软解),建议您传入该参数,省去探测实际编码格式的操作。
1640
1648
  */
1641
1649
  /** {en}
1642
1650
  * @detail option
1643
- * @brief The actual codec of the video.
1651
+ * @brief The actual codec of the video. If you set the SoftFirst property in degradation (that is, hard solutions do not support downgrading soft solutions), it is recommended that you pass this parameter to save the operation of probing the actual encoding format.
1644
1652
  */
1645
1653
  declare enum Codec {
1646
1654
  /** {zh}
@@ -2315,16 +2323,17 @@ declare class VePlayerBase {
2315
2323
  * @hidden
2316
2324
  */
2317
2325
  prepare(url: string): Promise<{
2318
- plugins: any[];
2326
+ plugins: any[] | undefined;
2319
2327
  options: Partial<VePlayerBaseOptions> | undefined;
2328
+ isSameProtocol: boolean | "";
2329
+ useSrc: boolean | undefined;
2320
2330
  }>;
2321
2331
  private _handleFallback;
2322
2332
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
2323
2333
  private _transformEvent;
2324
2334
  private _switch;
2335
+ private _switchDifferentProtocolUrl;
2325
2336
  private _switchUrl;
2326
- // 获取需要卸载和需要注册的播放插件
2327
- private _diffPlugins;
2328
2337
  private _callBeforePlayerInitForUrl;
2329
2338
  }
2330
2339
  declare const enum State {
@@ -2352,6 +2361,7 @@ declare enum DynamicModule {
2352
2361
  PluginFlv = "plugin:flv",
2353
2362
  PluginMp4 = "plugin:mp4",
2354
2363
  PluginHls = "plugin:hls",
2364
+ PluginHlsJs = "plugin:hlsjs",
2355
2365
  PluginShaka = "plugin:shaka",
2356
2366
  PluginRtm = "plugin:rtm",
2357
2367
  PluginXgvideo = "plugin:xgvideo",
@@ -2364,6 +2374,7 @@ type ModulesMap = {
2364
2374
  [DynamicModule.PluginFlv]: Exports;
2365
2375
  [DynamicModule.PluginMp4]: Exports;
2366
2376
  [DynamicModule.PluginHls]: Exports;
2377
+ [DynamicModule.PluginHlsJs]: Exports;
2367
2378
  [DynamicModule.PluginShaka]: Exports;
2368
2379
  [DynamicModule.PluginRtm]: Exports;
2369
2380
  [DynamicModule.PluginXgvideo]: Exports;
@@ -2852,7 +2863,14 @@ declare namespace strategy {
2852
2863
  /** {en}
2853
2864
  * @brief Error.
2854
2865
  */
2855
- Error = "Error"
2866
+ Error = "Error",
2867
+ /** {zh}
2868
+ * @brief 提示。
2869
+ */
2870
+ /** {en}
2871
+ * @brief Warn.
2872
+ */
2873
+ Warn = "Warn"
2856
2874
  }
2857
2875
  enum ErrorCode {
2858
2876
  /** {zh}
@@ -3895,13 +3913,13 @@ declare namespace strategy {
3895
3913
  */
3896
3914
  interface Fullscreen {
3897
3915
  /** {zh}
3898
- * @brief 切换全屏时,是否旋转为横屏播放,通常在移动端使用。如果开启横屏播放,切换全屏时,将在竖屏状态下把播放器旋转 90 度,实现横屏效果。该配置优先级高于 useCssFullscreen。
3899
- * - `true`:使用旋转横屏;
3900
- * - `false`:不使用旋转横屏。
3916
+ * @brief 切换全屏时,是否旋转为横屏播放,通常在移动端使用。如果开启横屏播放,切换全屏时,将在竖屏状态下把播放器旋转 90 度,实现横屏效果。该配置优先级低于 useCssFullscreen。
3917
+ * - `true`:使用旋转横屏;
3918
+ * - `false`:不使用旋转横屏。
3901
3919
  * @default false
3902
3920
  */
3903
3921
  /** {en}
3904
- * @brief Whether to play the video in landscape mode when the video enters full-screen mode. This feature is usually used on mobile devices. Once enabled, when the video enters fullscreen mode, the player will be rotated from portrait mode by 90 degrees to landscape mode. This property has a higher priority over `useCssFullscreen`.
3922
+ * @brief Whether to play the video in landscape mode when the video enters full-screen mode. This feature is usually used on mobile devices. Once enabled, when the video enters fullscreen mode, the player will be rotated from portrait mode by 90 degrees to landscape mode. This property has a lower priority than `useCssFullscreen`.
3905
3923
  * - `true`: Enable.
3906
3924
  * - `false`: Disable.
3907
3925
  * @default false
@@ -3997,15 +4015,16 @@ declare namespace strategy {
3997
4015
  options?: Partial<VePlayerBaseOptions>;
3998
4016
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
3999
4017
  plugins?: any[];
4018
+ useSrc?: boolean;
4000
4019
  };
4001
4020
  type PreparePlugins = (url: string) => Promise<PrepareResult> | undefined;
4002
4021
  /** {zh}
4003
4022
  * @detail option
4004
- * @brief 视频的实际编码格式。如果您在degradation 设置了 SoftFirst 属性(即硬解不支持降级软解),建议您传入该参数,省去探测实际编码格式的操作。
4023
+ * @brief 视频的实际编码格式。如果您在 degradation 设置了 SoftFirst 属性(即硬解不支持降级软解),建议您传入该参数,省去探测实际编码格式的操作。
4005
4024
  */
4006
4025
  /** {en}
4007
4026
  * @detail option
4008
- * @brief The actual codec of the video.
4027
+ * @brief The actual codec of the video. If you set the SoftFirst property in degradation (that is, hard solutions do not support downgrading soft solutions), it is recommended that you pass this parameter to save the operation of probing the actual encoding format.
4009
4028
  */
4010
4029
  enum Codec {
4011
4030
  /** {zh}
@@ -4082,6 +4101,7 @@ declare namespace strategy {
4082
4101
  readonly "plugin:flv": "veplayer.plugin.flv.[env].[ext]";
4083
4102
  readonly "plugin:mp4": "veplayer.plugin.mp4.[env].[ext]";
4084
4103
  readonly "plugin:hls": "veplayer.plugin.hls.[env].[ext]";
4104
+ readonly "plugin:hlsjs": "veplayer.plugin.hlsjs.[env].[ext]";
4085
4105
  readonly "plugin:shaka": "veplayer.plugin.shaka.[env].[ext]";
4086
4106
  readonly "plugin:rtm": "veplayer.plugin.rtm.[env].[ext]";
4087
4107
  readonly "plugin:xgvideo": "veplayer.plugin.xgvideo.[env].[ext]";
@@ -4113,6 +4133,7 @@ declare namespace strategy {
4113
4133
  PluginFlv = "plugin:flv",
4114
4134
  PluginMp4 = "plugin:mp4",
4115
4135
  PluginHls = "plugin:hls",
4136
+ PluginHlsJs = "plugin:hlsjs",
4116
4137
  PluginShaka = "plugin:shaka",
4117
4138
  PluginRtm = "plugin:rtm",
4118
4139
  PluginXgvideo = "plugin:xgvideo",
@@ -4125,6 +4146,7 @@ declare namespace strategy {
4125
4146
  [DynamicModule.PluginFlv]: Exports;
4126
4147
  [DynamicModule.PluginMp4]: Exports;
4127
4148
  [DynamicModule.PluginHls]: Exports;
4149
+ [DynamicModule.PluginHlsJs]: Exports;
4128
4150
  [DynamicModule.PluginShaka]: Exports;
4129
4151
  [DynamicModule.PluginRtm]: Exports;
4130
4152
  [DynamicModule.PluginXgvideo]: Exports;
@@ -4165,22 +4187,16 @@ declare namespace strategy {
4165
4187
  module: R;
4166
4188
  afterLoad?: (module: ModulesMap[R]) => void;
4167
4189
  }
4168
- type StrategyCreator<T, R extends keyof ModulesMap = any> = (options?: T) => Strategy<T, R>;
4190
+ type StrategyCreator<T, R extends keyof ModulesMap = any> = (options?: T, ...res: any) => Strategy<T, R>;
4169
4191
  const createFlvMseStrategy: StrategyCreator<VePlayerBaseOptions, DynamicModule.PluginFlv>;
4170
- const createHlsMseStrategy: StrategyCreator<VePlayerBaseOptions, DynamicModule.PluginHls>;
4192
+ const createFlvMssStrategy: StrategyCreator<VePlayerBaseOptions, DynamicModule.PluginFlv>;
4193
+ const createHlsMseStrategy: StrategyCreator<VePlayerBaseOptions, DynamicModule.PluginHlsJs | DynamicModule.PluginHls>;
4171
4194
  const createSoftDecodeH264Strategy: StrategyCreator<VePlayerBaseOptions, DynamicModule.PluginXgvideo>;
4172
4195
  const createSoftDecodeH265Strategy: StrategyCreator<VePlayerBaseOptions, DynamicModule.PluginXgvideo>;
4173
4196
  function getCodec(options: VePlayerBaseOptions): Promise<"unknown" | Codec>;
4174
4197
  function detectCodec(url: string): Promise<"unknown" | Codec>;
4175
4198
  function isSoftDecode(options: VePlayerBaseOptions, currentCodec?: Codec | "unknown"): Promise<boolean>;
4176
4199
  function combineOptions<T = VePlayerBaseOptions>(strategyList: (Strategy<T> | undefined)[]): Partial<T>;
4177
- const getFlvStrategy: (options: VePlayerBaseOptions) => Promise<{
4178
- options?: undefined;
4179
- plugins?: undefined;
4180
- } | {
4181
- options: Partial<VePlayerBaseOptions>;
4182
- plugins: any[];
4183
- }>;
4184
4200
  const getHlsStrategy: (options: VePlayerBaseOptions) => Promise<{
4185
4201
  options?: undefined;
4186
4202
  plugins?: undefined;
@@ -4192,21 +4208,29 @@ declare namespace strategy {
4192
4208
  declare function getStreamType(url: string): "unknown" | "hls" | "flv" | "rtm" | "mp4" | "dash";
4193
4209
  /** {zh}
4194
4210
  * @detail api
4195
- * @brief 当前浏览器是否支持播放编码格式。
4196
- * @param codec 编码格式。
4197
- * - `Codec.H264`: 返回当前浏览器是否支持 MediaSource Extends。
4198
- * - `Codec.H265`: 返回当前浏览器是否支持硬解播放 H265。
4211
+ * @brief 检查当前浏览器是否支持 MSE(MediaSource Extends)API,并检查 MSE API 是否支持传入的视频编码信息(MIME 格式)。
4212
+ * :::tip
4213
+ * 使用场景:检查 PC 端浏览器和 Android 端浏览器是否支持传入的编码信息。
4214
+ * :::
4215
+ * @param codec 待检查的媒体类型和编解码信息字符串,使用 MIME 格式表示,例如`video/mp4;codecs="av01.0.01M.08"`。
4216
+ * 您也可以使用如下参数值快速检查是否支持 H.264 和 H.265 视频编码格式。
4217
+ * - `Codec.H264`(默认值):检查 MSE 是否支持 H.264 编码格式,如果支持可满足大部分 H.264 视频播放。
4218
+ * - `Codec.H265`:检查 MSE 是否支持 H.265 编码格式,如果支持可满足大部分 H.265 视频播放。
4199
4219
  * @returns
4200
4220
  */
4201
4221
  /** {en}
4202
4222
  * @detail api
4203
- * @brief Checkes whether the current browser supports the specified encoding format.
4204
- * @param codec The encoding format.
4205
- * - `Codec.H264`: Checks whether the current browser supports MediaSource Extends.
4206
- * - `Codec.H265`: Checks whether the current browser supports H.265 using hardware decoding.
4223
+ * @brief Check whether the current browser supports the MSE (MediaSource Extends) API and check whether the MSE API supports the incoming video encoding information (MIME format).
4224
+ * :::tip
4225
+ * Usage scenario: Check whether the PC-side browser and Android-side browser support the incoming encoding information.
4226
+ * :::
4227
+ * @param codec The media type and codec information string to be checked is represented in MIME format, for example, `video/mp4;codecs="av01.0.01M.08"`.
4228
+ * You can also use the following parameter values to quickly check whether the H.264 and H.265 video coding formats are supported.
4229
+ * - `Codec.H264` (default value): Check if MSE supports the H.264 encoding format. If supported, it can meet the playback requirements of most H.264 videos.
4230
+ * - `Codec.H265`: Check if MSE supports the H.265 encoding format. If supported, it can meet the playback requirements of most H.265 videos.
4207
4231
  * @returns
4208
4232
  */
4209
- declare function isMseSupported(codec?: string): boolean;
4233
+ declare function isMseSupported(codec?: string | undefined): boolean;
4210
4234
  /** {zh}
4211
4235
  * @detail api
4212
4236
  * @brief 当前浏览器是否支持软解。
@@ -4218,10 +4242,38 @@ declare function isMseSupported(codec?: string): boolean;
4218
4242
  * @returns
4219
4243
  */
4220
4244
  declare function isSoftDecodeSupported(): Promise<boolean>;
4245
+ /** {zh}
4246
+ * @detail api
4247
+ * @brief 判断当前浏览器是否支持 MMS(ManagedMediaSource) API,并检查 MMS API 是否支持传入的视频编码信息(MIME 格式)。
4248
+ * :::tip
4249
+ * - 使用场景:检查 iOS 端 Safari 浏览器和 Chrome 浏览器是否支持传入的编码信息。
4250
+ * - Safari 17.1 以上版本浏览器开始支持 MMS。
4251
+ * :::
4252
+ * @returns
4253
+ * @param codec 待检查的媒体类型和编解码信息字符串,使用 MIME 格式表示,例如`video/mp4;codecs="av01.0.01M.08"`。
4254
+ * 您也可以使用如下参数值快速检查是否支持 H.264 和 H.265 视频编码格式。
4255
+ * - `Codec.H264`(默认值):检查 MMS 是否支持 H.264 编码格式,如果支持可满足大部分 H.264 视频播放。
4256
+ * - `Codec.H265`:检查 MMS 是否支持 H.265 编码格式。如果支持可满足大部分 H.265 视频播放。
4257
+ */
4258
+ /** {en}
4259
+ * @detail api
4260
+ * @returns
4261
+ * @brief Check whether the current browser supports the MMS (ManagedMediaSource) API and check whether the MMS API supports the incoming video encoding information (MIME format).
4262
+ * :::tip
4263
+ * - Usage scenario: Check whether the Safari browser and Chrome browser on the iOS side support the incoming encoding information.
4264
+ * - Browsers with iOS 17.1 or above start to support MMS.
4265
+ * :::
4266
+ * @param codec The media type and codec information string to be checked is represented in MIME format, for example, `video/mp4;codecs="av01.0.01M.08"`.
4267
+ * You can also use the following parameter values to quickly check whether the H.264 and H.265 video coding formats are supported.
4268
+ * - `Codec.H264` (default value): Check if MMS supports the H.264 encoding format. If supported, it can meet the playback requirements of most H.264 videos.
4269
+ * - `Codec.H265`: Check if MMS supports the H.265 encoding format. If supported, it can meet the playback requirements of most H.265 videos.
4270
+ */
4271
+ declare function isMMSSupported(codec?: string | undefined): any;
4221
4272
  declare const util: {
4222
4273
  getStreamType: typeof getStreamType;
4223
4274
  isMseSupported: typeof isMseSupported;
4224
4275
  isSoftDecodeSupported: typeof isSoftDecodeSupported;
4276
+ isMMSSupported: typeof isMMSSupported;
4225
4277
  appendSearchParams: (url?: string | undefined, searchParams?: Record<string, string> | undefined) => string;
4226
4278
  getUrlObject: (url?: string | undefined) => URL | undefined;
4227
4279
  createDom(el?: string | undefined, tpl?: string | undefined, attrs?: {
@@ -4464,7 +4516,14 @@ declare namespace error {
4464
4516
  /** {en}
4465
4517
  * @brief Error.
4466
4518
  */
4467
- Error = "Error"
4519
+ Error = "Error",
4520
+ /** {zh}
4521
+ * @brief 提示。
4522
+ */
4523
+ /** {en}
4524
+ * @brief Warn.
4525
+ */
4526
+ Warn = "Warn"
4468
4527
  }
4469
4528
  enum ErrorCode {
4470
4529
  /** {zh}
@@ -4910,6 +4969,20 @@ declare namespace event {
4910
4969
  ABR_SWITCH_START: string;
4911
4970
  ABR_SWITCH_SUCCESS: string;
4912
4971
  ABR_SWITCH_FAILED: string;
4972
+ AD_FIRST_QUARTILE: string;
4973
+ AD_MIDPOINT: string;
4974
+ AD_THIRD_QUARTILE: string;
4975
+ AD_CLICK: string;
4976
+ AD_IMPRESSION: string;
4977
+ AD_RESUME: string;
4978
+ AD_START: string;
4979
+ AD_PLAY: string;
4980
+ AD_PAUSE: string;
4981
+ AD_TIME_UPDATE: string;
4982
+ AD_SKIPPED: string;
4983
+ AD_ERROR: string;
4984
+ AD_COMPLETE: string;
4985
+ AD_ALL_COMPLETED: string;
4913
4986
  };
4914
4987
  const Events: {
4915
4988
  SEI: string;
@@ -4938,6 +5011,20 @@ declare namespace event {
4938
5011
  ABR_SWITCH_START: string;
4939
5012
  ABR_SWITCH_SUCCESS: string;
4940
5013
  ABR_SWITCH_FAILED: string;
5014
+ AD_FIRST_QUARTILE: string;
5015
+ AD_MIDPOINT: string;
5016
+ AD_THIRD_QUARTILE: string;
5017
+ AD_CLICK: string;
5018
+ AD_IMPRESSION: string;
5019
+ AD_RESUME: string;
5020
+ AD_START: string;
5021
+ AD_PLAY: string;
5022
+ AD_PAUSE: string;
5023
+ AD_TIME_UPDATE: string;
5024
+ AD_SKIPPED: string;
5025
+ AD_ERROR: string;
5026
+ AD_COMPLETE: string;
5027
+ AD_ALL_COMPLETED: string;
4941
5028
  REPLAY: string;
4942
5029
  ERROR: string;
4943
5030
  PLAY: string;
@@ -5172,7 +5259,7 @@ interface LoggerConfig {
5172
5259
  /** {en}
5173
5260
  * @brief The SDK application ID. You can access it by logging in to the BytePlus MediaLive console and navigating to [SDK Management](https://console.byteplus.com/live/main/sdk).
5174
5261
  */
5175
- appId: string;
5262
+ appId?: string;
5176
5263
  /** {zh}
5177
5264
  * @brief 应用名称。
5178
5265
  * @default 无
@@ -5206,7 +5293,7 @@ interface LoggerConfig {
5206
5293
  */
5207
5294
  deviceId?: string;
5208
5295
  /** {zh}
5209
- * @brief 报错时是否在报错面板显示当前用户id信息。
5296
+ * @brief 报错时是否在报错面板显示当前用户 ID 信息。
5210
5297
  * @default true
5211
5298
  */
5212
5299
  /** {en}
@@ -5236,23 +5323,25 @@ interface LiveVePlayerOptions extends VePlayerBaseOptions {
5236
5323
  */
5237
5324
  rtm?: Rtm;
5238
5325
  /** {zh}
5239
- * @brief 为播放器设置 FLV 拉流配置。FLV 格式流相关配置仅适用于支持 MSE 播放的 PC 端浏览器和安卓端浏览器。
5326
+ * @brief 为播放器设置 FLV 拉流配置。
5327
+ * @listtip FLV 拉流格式流相关配置适用于支持 MSE 播放的 PC 端浏览器、安卓端浏览器和支持 MMS API 的 iOS 浏览器。
5240
5328
  */
5241
5329
  /** {en}
5242
- * @brief Configurations for playing an FLV stream. You can only play FLV streams with web browsers on PC and Android devices, and the browsers need to support Media Source Extensions (MSE) playback.
5330
+ * @brief Configurations for playing an FLV stream.
5331
+ * @listtip FLV pull stream format stream configurations are applicable to PC browsers, Android browsers that support MSE playback, and iOS browsers that support MMS API.
5243
5332
  */
5244
5333
  flv?: Flv;
5245
5334
  /** {zh}
5246
- * @brief 为播放器设置 HLS 拉流配置。HLS 格式流相关配置仅适用于支持 MSE 播放的 PC 端浏览器和安卓端浏览器。
5247
- * @listtip
5248
- * - PC 端该配置默认生效;
5249
- * - 移动端仅在 `enableMSE` 设置为 `true` 且支持 MSE 的浏览器中生效。
5335
+ * @brief 为播放器设置 HLS 拉流配置。
5336
+ * @listtip - HLS 格式流相关配置仅适用于支持 MSE API的 PC 端浏览器和安卓端浏览器。
5337
+ * - PC 端该配置默认生效;
5338
+ * - 移动端仅在 `enableMSE` 设置为 `true` 且支持 MSE 的浏览器中生效。
5250
5339
  */
5251
5340
  /** {en}
5252
- * @brief Configurations for playing an HLS stream. You can only play HLS streams with web browsers on PC and Android devices, and the browsers need to support Media Source Extensions (MSE) playback.
5253
- * @listtip
5254
- * - This configuration takes effect by default on PC;
5255
- * - For mobile devices, the configuration takes effect only when `enableMSE` is set to `true` for the browser.
5341
+ * @brief Configurations for playing an HLS stream.
5342
+ * @listtip - The HLS format stream configuration is only applicable to PC browsers and Android browsers that support the MSE API.
5343
+ * - This configuration takes effect by default on PC;
5344
+ * - For mobile devices, the configuration takes effect only when `enableMSE` is set to `true` for the browser.
5256
5345
  */
5257
5346
  hls?: Hls;
5258
5347
  /** {zh}
@@ -5288,7 +5377,7 @@ interface LiveVePlayerOptions extends VePlayerBaseOptions {
5288
5377
  * @default 无
5289
5378
  */
5290
5379
  /** {en}
5291
- * @brief A list of built-in plug-ins to be disabled.
5380
+ * @brief A list of built-in plug-ins to be disabled. For the access method, please refer to [Plugin descriptions](https://docs.byteplus.com/en/docs/byteplus-media-live/docs-d8idjfeza4#disabling-plugins).
5292
5381
  */
5293
5382
  ignores?: string[];
5294
5383
  /** {zh}
@@ -5296,7 +5385,7 @@ interface LiveVePlayerOptions extends VePlayerBaseOptions {
5296
5385
  * @default 无
5297
5386
  */
5298
5387
  /** {en}
5299
- * @brief The plug-in icon.
5388
+ * @brief The plug-in icon. For the access method, please refer to [Plugin descriptions](https://docs.byteplus.com/en/docs/byteplus-media-live/docs-d8idjfeza4#replacing-plugin-icons).
5300
5389
  */
5301
5390
  icons?: any;
5302
5391
  /** {zh}
@@ -5318,14 +5407,14 @@ interface LiveVePlayerOptions extends VePlayerBaseOptions {
5318
5407
  interface Abr {
5319
5408
  /** {zh}
5320
5409
  * @brief 是否开启 FLV 拉流时的自适应码率(ABR)功能,默认为开启。
5321
- * - true: 开启
5322
- * - false: 关闭
5410
+ * - `true`: 开启;
5411
+ * - `false`: 关闭。
5323
5412
  * @default true
5324
5413
  */
5325
5414
  /** {en}
5326
5415
  * @brief Enable or disable the Adaptive Bitrate (ABR) feature. The default setting is enabled.
5327
- * - true: Enable;
5328
- * - false: Disable.
5416
+ * - `true`: Enable;
5417
+ * - `false`: Disable.
5329
5418
  */
5330
5419
  enable?: boolean;
5331
5420
  /** {zh}
@@ -5344,14 +5433,14 @@ interface Abr {
5344
5433
  downTip?: boolean;
5345
5434
  /** {zh}
5346
5435
  * @brief 是否开始调试模式,默认为关闭。
5347
- * - true: 开启;
5348
- * - false: 关闭。
5436
+ * - `true`: 开启;
5437
+ * - `false`: 关闭。
5349
5438
  * @default false
5350
5439
  */
5351
5440
  /** {en}
5352
5441
  * @brief Whether to start debug mode, default is false.
5353
- * - true: Enable,
5354
- * - false: Disable.
5442
+ * - `true`: Enable,
5443
+ * - `false`: Disable.
5355
5444
  * @default false
5356
5445
  */
5357
5446
  debug?: boolean;
@@ -5586,7 +5675,7 @@ interface AdConfig {
5586
5675
  * @brief Ad client that will be used to display advertisements
5587
5676
  * - `google-ima`:Use the Google IMA SDK
5588
5677
  */
5589
- adType: "google-ima";
5678
+ adType: "google-ima" | "ssai";
5590
5679
  /** {en}
5591
5680
  * @brief Property enabling SCTE-35 tag in hls manifest
5592
5681
  * - false: SCTE-35 disabled
@@ -5594,6 +5683,14 @@ interface AdConfig {
5594
5683
  * @default false
5595
5684
  */
5596
5685
  enableSCTE35?: boolean;
5686
+ /**
5687
+ * @hidden
5688
+ */
5689
+ replayForSCTE35?: {
5690
+ enable?: boolean;
5691
+ // duration 剩下超过多久才会重播
5692
+ minDurationOffset?: number;
5693
+ };
5597
5694
  /** {en}
5598
5695
  * @brief Configurations for Google IMA SDK
5599
5696
  * @listtip Required when adType is `google-ima`
@@ -5659,16 +5756,16 @@ interface Rtm {
5659
5756
  retryDelay?: number;
5660
5757
  /** {zh}
5661
5758
  * @brief 播放器发起 RTM 拉流请求时,是否开启自动转码。
5662
- * - true:开启
5663
- * - false:关闭
5759
+ * - `true`:开启;
5760
+ * - `false`:关闭。
5664
5761
  * @listtip
5665
5762
  * 如有使用 RTM 拉流自动转码的需求,请先创建工单联系[技术支持](https://console.volcengine.com/workorder/create?step=2&SubProductID=P00000076)进行配置。
5666
5763
  * @default false
5667
5764
  */
5668
5765
  /** {en}
5669
5766
  * @brief Whether to enable automatic transcoding when the player requests to pull an RTM stream.
5670
- * - true: Enable
5671
- * - false: Disable
5767
+ * - `true`: Enable;
5768
+ * - `false`: Disable.
5672
5769
  * @listtip
5673
5770
  * If you want to use the automatic transcoding feature when playing an RTM stream, contact your [technical support](https://www.byteplus.com/en/support).
5674
5771
  * @default false
@@ -5682,6 +5779,39 @@ interface Rtm {
5682
5779
  * @brief Specify the recent time length for network evaluation in milliseconds. The default is 1000, which means evaluating the network conditions over the last 1000 milliseconds.
5683
5780
  */
5684
5781
  networkEvaluateInterval?: number;
5782
+ /** {zh}
5783
+ * @brief 暂停后重新拉流的处理方式是否为无缝替换。
5784
+ * - `true`:是,重新拉流期间不会出现黑屏现象。
5785
+ * - `false`:否,重新拉流期间会出现黑屏现象。
5786
+ * @default false
5787
+ * @listtip Safari 浏览器在进行 RTM 拉流时不支持使用此配置。
5788
+ */
5789
+ /** {en}
5790
+ * @brief Whether the processing method for re-pulling the stream after pausing is seamless replacement.
5791
+ * - `true`: Yes, there will be no black screen phenomenon during re-pulling the stream.
5792
+ * - `false`: No, there will be a black screen phenomenon during re-pulling the stream.
5793
+ * :::tip
5794
+ * Safari browsers do not support using this configuration when performing RTM stream pulling.
5795
+ * :::
5796
+ * @default false
5797
+ */
5798
+ seamlesslyReload?: boolean;
5799
+ /** {zh}
5800
+ * @brief 暂停播放后的断联时间,单位为秒,默认不断联。
5801
+ * @listtip Safari 浏览器在进行 RTM 拉流时,如果出现断联,重新拉流时会出现短暂黑屏或加载情况。
5802
+ */
5803
+ /** {en}
5804
+ * @brief The disconnection time after pausing playback is in seconds. By default, there is no disconnection.
5805
+ * @listtip When Safari browser performs RTM streaming, if there is a disconnection, there will be a short black screen or loading situation when re-streaming.
5806
+ */
5807
+ disconnectTime?: number;
5808
+ /** {zh}
5809
+ * @hidden
5810
+ */
5811
+ /** {en}
5812
+ * @hidden
5813
+ */
5814
+ enableOriginSdpLogger?: boolean;
5685
5815
  }
5686
5816
  /** {zh}
5687
5817
  * @list option
@@ -5721,15 +5851,17 @@ interface Flv {
5721
5851
  loadTimeout?: number;
5722
5852
  /** {zh}
5723
5853
  * @brief 播放器发起 FLV 拉流请求时,是否开启低延时。例如,当您开启低延时且推流端 GOP 设置为 2s 的情况下,FLV 拉流平均端到端延时约为 2s。
5724
- * - true:开启
5725
- * - false:关闭
5854
+ * - `true`:开启;
5855
+ * - `false`:关闭
5726
5856
  * @default false
5857
+ * @listtip 低延迟 FLV 拉流仅在 PC 端浏览器中生效。
5727
5858
  */
5728
5859
  /** {en}
5729
5860
  * @brief Whether to enable low latency when playing an FLV address. For example, if you have enabled low latency, and set GOP to 2 seconds, the average latency will be around 2 seconds.
5730
- * - true: Enable
5731
- * - false: Disable
5861
+ * - `true`: Enable;
5862
+ * - `false`: Disable.
5732
5863
  * @default false
5864
+ * @listtip Low-latency FLV pull-streaming is only effective in PC browsers.
5733
5865
  */
5734
5866
  enableLowLatency?: boolean;
5735
5867
  /** {zh}
@@ -5762,23 +5894,24 @@ interface Flv {
5762
5894
  */
5763
5895
  maxReaderInterval?: number;
5764
5896
  /** {zh}
5765
- * @brief
5766
- * 直播暂停时的断流等待时间,单位为秒,默认值为 0,表示直播暂停时即断流。
5897
+ * @brief 暂停播放后的断联时间,单位为秒,默认值为 0,表示暂停播放后立即断联。
5767
5898
  * @default 0
5768
5899
  */
5769
5900
  /** {en}
5770
- * @brief The waiting time for disconnection during live streaming suspension, measured in seconds. The default value is 0, indicating immediate disconnection when live streaming is suspended.
5901
+ * @brief The disconnection time after pausing playback is in seconds. The default value is 0, indicating immediate disconnection after pausing playback.
5771
5902
  * @default 0
5772
5903
  */
5773
5904
  disconnectTime?: number;
5774
5905
  /** {zh}
5775
- * @brief 断流后重新拉流是否无缝,无缝拉流时重新拉流不会出现黑帧。
5776
- * - `true`:是;
5777
- * - `false`:否。
5906
+ * @brief 暂停后重新拉流的处理方式是否为无缝替换。
5907
+ * - `true`:是,重新拉流期间不会出现黑屏现象。
5908
+ * - `false`:否,重新拉流期间会出现黑屏现象。
5778
5909
  * @default false
5779
5910
  */
5780
5911
  /** {en}
5781
- * @brief Whether re-pulling the stream after disconnection is seamless. When seamless stream pulling, there will be no black frames during re-pulling. - `true`: Yes; - `false`: No.
5912
+ * @brief Whether the processing method for re-pulling the stream after pausing is seamless replacement.
5913
+ * - `true`: Yes, there will be no black screen phenomenon during re-pulling the stream.
5914
+ * - `false`: No, there will be a black screen phenomenon during re-pulling the stream.
5782
5915
  * @default false
5783
5916
  */
5784
5917
  seamlesslyReload?: boolean;
@@ -5801,14 +5934,14 @@ interface LowLatency {
5801
5934
  abrPts?: string | number;
5802
5935
  /** {zh}
5803
5936
  * @brief FLV 低延时模式下,是否开启倍速追帧。
5804
- * - true:开启;
5805
- * - false:关闭。
5937
+ * - `true`:开启;
5938
+ * - `false`:关闭。
5806
5939
  * @default true
5807
5940
  */
5808
5941
  /** {en}
5809
5942
  * @brief Whether to enable speed-up frame chasing in FLV low latency mode.
5810
- * - true: enabled;
5811
- * - false: disabled.
5943
+ * - `true`: enabled;
5944
+ * - `false`: disabled.
5812
5945
  * @default true
5813
5946
  */
5814
5947
  enableFrameChasing?: boolean;
@@ -5875,6 +6008,10 @@ interface Hls {
5875
6008
  * @hidden
5876
6009
  */
5877
6010
  mseLowLatency?: boolean;
6011
+ /**
6012
+ * @hidden
6013
+ */
6014
+ enableHlsJs?: boolean;
5878
6015
  }
5879
6016
  /** {zh}
5880
6017
  * @list option
@@ -6314,6 +6451,7 @@ declare class VePlayerLive extends VePlayerBase {
6314
6451
  * @brief Obtain the duration that has been played, excluding pause and waiting time, with the unit of seconds.
6315
6452
  */
6316
6453
  get playTime(): number;
6454
+ get ad(): any;
6317
6455
  /** {zh}
6318
6456
  * @brief 调用此方法开启直播日志上报。
6319
6457
  */
@@ -6486,6 +6624,35 @@ declare function isRTMSupported(): Promise<boolean>;
6486
6624
  * @returns
6487
6625
  */
6488
6626
  declare function isRTMSupportCodec(codec?: string): Promise<boolean>;
6627
+ /** {zh}
6628
+ * @detail api
6629
+ * @brief 检查当前浏览器是否支持 FLV 格式流的编码信息。
6630
+ * :::tip
6631
+ * - 在 PC 端或 Android 端浏览器调用此方法,实现方法与 isMseSupported 方法实现相同。
6632
+ * - 在 iOS 端浏览器调用此方法,实现与 isMMSSupported 方法实现相同。
6633
+ * :::
6634
+ * @kind property
6635
+ * @returns
6636
+ * @param codec 待检查的媒体类型和编解码信息字符串,使用 MIME 格式表示,例如`video/mp4;codecs="av01.0.01M.08"`。
6637
+ * 您也可以使用如下参数值快速检查是否支持 H.264 和 H.265 视频编码格式。
6638
+ * - `Codec.H264`(默认值):检查是否支持 H.264 编码格式,如果支持可满足大部分 H.264 视频播放。
6639
+ * - `Codec.H265`:检查是否支持 H.265 编码格式。如果支持可满足大部分 H.265 视频播放。
6640
+ */
6641
+ /** {en}
6642
+ * @detail api
6643
+ * @brief Check whether the current browser supports the encoding information of FLV format streams.
6644
+ * :::tip
6645
+ * - When this method is called in a browser on a PC or Android device, it is the same as when the isMseSupported method is called with the default encoding format.
6646
+ * - When this method is called in a browser on an iOS device, it is the same as when the isMMSSupported method is implemented.
6647
+ * :::
6648
+ * @kind property
6649
+ * @returns
6650
+ * @param codec The media type and codec information string to be checked is represented in MIME format, for example, `video/mp4;codecs="av01.0.01M.08"`.
6651
+ * You can also use the following parameter values to quickly check whether the H.264 and H.265 video coding formats are supported.
6652
+ * - `Codec.H264` (default value): Check if the H.264 encoding format is supported. If supported, it can meet the playback requirements of most H.264 videos.
6653
+ * - `Codec.H265`: Check if the H.265 encoding format is supported. If supported, it can meet the playback requirements of most H.265 videos.
6654
+ */
6655
+ declare function isFLVSupported(codec?: string | undefined): boolean;
6489
6656
  declare module MobilePlayerPanelWrapper {
6490
6657
  export { MobilePlayerPanel };
6491
6658
  }
@@ -6651,7 +6818,14 @@ declare namespace live {
6651
6818
  /** {en}
6652
6819
  * @brief Error.
6653
6820
  */
6654
- Error = "Error"
6821
+ Error = "Error",
6822
+ /** {zh}
6823
+ * @brief 提示。
6824
+ */
6825
+ /** {en}
6826
+ * @brief Warn.
6827
+ */
6828
+ Warn = "Warn"
6655
6829
  }
6656
6830
  enum ErrorCode {
6657
6831
  /** {zh}
@@ -8187,6 +8361,20 @@ declare namespace live {
8187
8361
  ABR_SWITCH_START: string;
8188
8362
  ABR_SWITCH_SUCCESS: string;
8189
8363
  ABR_SWITCH_FAILED: string;
8364
+ AD_FIRST_QUARTILE: string;
8365
+ AD_MIDPOINT: string;
8366
+ AD_THIRD_QUARTILE: string;
8367
+ AD_CLICK: string;
8368
+ AD_IMPRESSION: string;
8369
+ AD_RESUME: string;
8370
+ AD_START: string;
8371
+ AD_PLAY: string;
8372
+ AD_PAUSE: string;
8373
+ AD_TIME_UPDATE: string;
8374
+ AD_SKIPPED: string;
8375
+ AD_ERROR: string;
8376
+ AD_COMPLETE: string;
8377
+ AD_ALL_COMPLETED: string;
8190
8378
  REPLAY: string;
8191
8379
  ERROR: string;
8192
8380
  PLAY: string;
@@ -9033,13 +9221,13 @@ declare namespace live {
9033
9221
  */
9034
9222
  interface Fullscreen {
9035
9223
  /** {zh}
9036
- * @brief 切换全屏时,是否旋转为横屏播放,通常在移动端使用。如果开启横屏播放,切换全屏时,将在竖屏状态下把播放器旋转 90 度,实现横屏效果。该配置优先级高于 useCssFullscreen。
9037
- * - `true`:使用旋转横屏;
9038
- * - `false`:不使用旋转横屏。
9224
+ * @brief 切换全屏时,是否旋转为横屏播放,通常在移动端使用。如果开启横屏播放,切换全屏时,将在竖屏状态下把播放器旋转 90 度,实现横屏效果。该配置优先级低于 useCssFullscreen。
9225
+ * - `true`:使用旋转横屏;
9226
+ * - `false`:不使用旋转横屏。
9039
9227
  * @default false
9040
9228
  */
9041
9229
  /** {en}
9042
- * @brief Whether to play the video in landscape mode when the video enters full-screen mode. This feature is usually used on mobile devices. Once enabled, when the video enters fullscreen mode, the player will be rotated from portrait mode by 90 degrees to landscape mode. This property has a higher priority over `useCssFullscreen`.
9230
+ * @brief Whether to play the video in landscape mode when the video enters full-screen mode. This feature is usually used on mobile devices. Once enabled, when the video enters fullscreen mode, the player will be rotated from portrait mode by 90 degrees to landscape mode. This property has a lower priority than `useCssFullscreen`.
9043
9231
  * - `true`: Enable.
9044
9232
  * - `false`: Disable.
9045
9233
  * @default false
@@ -9135,15 +9323,16 @@ declare namespace live {
9135
9323
  options?: Partial<VePlayerBaseOptions>;
9136
9324
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
9137
9325
  plugins?: any[];
9326
+ useSrc?: boolean;
9138
9327
  };
9139
9328
  type PreparePlugins = (url: string) => Promise<PrepareResult> | undefined;
9140
9329
  /** {zh}
9141
9330
  * @detail option
9142
- * @brief 视频的实际编码格式。如果您在degradation 设置了 SoftFirst 属性(即硬解不支持降级软解),建议您传入该参数,省去探测实际编码格式的操作。
9331
+ * @brief 视频的实际编码格式。如果您在 degradation 设置了 SoftFirst 属性(即硬解不支持降级软解),建议您传入该参数,省去探测实际编码格式的操作。
9143
9332
  */
9144
9333
  /** {en}
9145
9334
  * @detail option
9146
- * @brief The actual codec of the video.
9335
+ * @brief The actual codec of the video. If you set the SoftFirst property in degradation (that is, hard solutions do not support downgrading soft solutions), it is recommended that you pass this parameter to save the operation of probing the actual encoding format.
9147
9336
  */
9148
9337
  enum Codec {
9149
9338
  /** {zh}
@@ -9819,16 +10008,17 @@ declare namespace live {
9819
10008
  * @hidden
9820
10009
  */
9821
10010
  prepare(url: string): Promise<{
9822
- plugins: any[];
10011
+ plugins: any[] | undefined;
9823
10012
  options: Partial<VePlayerBaseOptions> | undefined;
10013
+ isSameProtocol: boolean | "";
10014
+ useSrc: boolean | undefined;
9824
10015
  }>;
9825
10016
  private _handleFallback;
9826
10017
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
9827
10018
  private _transformEvent;
9828
10019
  private _switch;
10020
+ private _switchDifferentProtocolUrl;
9829
10021
  private _switchUrl;
9830
- // 获取需要卸载和需要注册的播放插件
9831
- private _diffPlugins;
9832
10022
  private _callBeforePlayerInitForUrl;
9833
10023
  }
9834
10024
  /// <reference types="./loader" />
@@ -9838,6 +10028,7 @@ declare namespace live {
9838
10028
  readonly "plugin:flv": "veplayer.plugin.flv.[env].[ext]";
9839
10029
  readonly "plugin:mp4": "veplayer.plugin.mp4.[env].[ext]";
9840
10030
  readonly "plugin:hls": "veplayer.plugin.hls.[env].[ext]";
10031
+ readonly "plugin:hlsjs": "veplayer.plugin.hlsjs.[env].[ext]";
9841
10032
  readonly "plugin:shaka": "veplayer.plugin.shaka.[env].[ext]";
9842
10033
  readonly "plugin:rtm": "veplayer.plugin.rtm.[env].[ext]";
9843
10034
  readonly "plugin:xgvideo": "veplayer.plugin.xgvideo.[env].[ext]";
@@ -9869,6 +10060,7 @@ declare namespace live {
9869
10060
  PluginFlv = "plugin:flv",
9870
10061
  PluginMp4 = "plugin:mp4",
9871
10062
  PluginHls = "plugin:hls",
10063
+ PluginHlsJs = "plugin:hlsjs",
9872
10064
  PluginShaka = "plugin:shaka",
9873
10065
  PluginRtm = "plugin:rtm",
9874
10066
  PluginXgvideo = "plugin:xgvideo",
@@ -9881,6 +10073,7 @@ declare namespace live {
9881
10073
  [DynamicModule.PluginFlv]: Exports;
9882
10074
  [DynamicModule.PluginMp4]: Exports;
9883
10075
  [DynamicModule.PluginHls]: Exports;
10076
+ [DynamicModule.PluginHlsJs]: Exports;
9884
10077
  [DynamicModule.PluginShaka]: Exports;
9885
10078
  [DynamicModule.PluginRtm]: Exports;
9886
10079
  [DynamicModule.PluginXgvideo]: Exports;
@@ -9916,29 +10109,38 @@ declare namespace live {
9916
10109
  function setBaseUrl(url: string): void;
9917
10110
  function getBaseUrl(): string;
9918
10111
  function load<T extends DynamicModule>(name: T, src?: string): Promise<ModulesMap[T]>;
9919
- const isHls: (url: string) => boolean;
9920
- const isMp4: (url: string) => boolean;
9921
- const isFlv: (url: string) => boolean;
9922
- const isRtm: (url: string) => boolean;
9923
- const isDash: (url: string) => boolean;
10112
+ const isType: any;
10113
+ const isHls: any;
10114
+ const isMp4: any;
10115
+ const isFlv: any;
10116
+ const isRtm: any;
10117
+ const isDash: any;
9924
10118
  function getStreamType(url: string): "unknown" | "hls" | "flv" | "rtm" | "mp4" | "dash";
9925
10119
  /** {zh}
9926
10120
  * @detail api
9927
- * @brief 当前浏览器是否支持播放编码格式。
9928
- * @param codec 编码格式。
9929
- * - `Codec.H264`: 返回当前浏览器是否支持 MediaSource Extends。
9930
- * - `Codec.H265`: 返回当前浏览器是否支持硬解播放 H265。
10121
+ * @brief 检查当前浏览器是否支持 MSE(MediaSource Extends)API,并检查 MSE API 是否支持传入的视频编码信息(MIME 格式)。
10122
+ * :::tip
10123
+ * 使用场景:检查 PC 端浏览器和 Android 端浏览器是否支持传入的编码信息。
10124
+ * :::
10125
+ * @param codec 待检查的媒体类型和编解码信息字符串,使用 MIME 格式表示,例如`video/mp4;codecs="av01.0.01M.08"`。
10126
+ * 您也可以使用如下参数值快速检查是否支持 H.264 和 H.265 视频编码格式。
10127
+ * - `Codec.H264`(默认值):检查 MSE 是否支持 H.264 编码格式,如果支持可满足大部分 H.264 视频播放。
10128
+ * - `Codec.H265`:检查 MSE 是否支持 H.265 编码格式,如果支持可满足大部分 H.265 视频播放。
9931
10129
  * @returns
9932
10130
  */
9933
10131
  /** {en}
9934
10132
  * @detail api
9935
- * @brief Checkes whether the current browser supports the specified encoding format.
9936
- * @param codec The encoding format.
9937
- * - `Codec.H264`: Checks whether the current browser supports MediaSource Extends.
9938
- * - `Codec.H265`: Checks whether the current browser supports H.265 using hardware decoding.
10133
+ * @brief Check whether the current browser supports the MSE (MediaSource Extends) API and check whether the MSE API supports the incoming video encoding information (MIME format).
10134
+ * :::tip
10135
+ * Usage scenario: Check whether the PC-side browser and Android-side browser support the incoming encoding information.
10136
+ * :::
10137
+ * @param codec The media type and codec information string to be checked is represented in MIME format, for example, `video/mp4;codecs="av01.0.01M.08"`.
10138
+ * You can also use the following parameter values to quickly check whether the H.264 and H.265 video coding formats are supported.
10139
+ * - `Codec.H264` (default value): Check if MSE supports the H.264 encoding format. If supported, it can meet the playback requirements of most H.264 videos.
10140
+ * - `Codec.H265`: Check if MSE supports the H.265 encoding format. If supported, it can meet the playback requirements of most H.265 videos.
9939
10141
  * @returns
9940
10142
  */
9941
- function isMseSupported(codec?: string): boolean;
10143
+ function isMseSupported(codec?: string | undefined): boolean;
9942
10144
  /** {zh}
9943
10145
  * @detail api
9944
10146
  * @brief 当前浏览器是否支持软解。
@@ -9950,10 +10152,38 @@ declare namespace live {
9950
10152
  * @returns
9951
10153
  */
9952
10154
  function isSoftDecodeSupported(): Promise<boolean>;
10155
+ /** {zh}
10156
+ * @detail api
10157
+ * @brief 判断当前浏览器是否支持 MMS(ManagedMediaSource) API,并检查 MMS API 是否支持传入的视频编码信息(MIME 格式)。
10158
+ * :::tip
10159
+ * - 使用场景:检查 iOS 端 Safari 浏览器和 Chrome 浏览器是否支持传入的编码信息。
10160
+ * - Safari 17.1 以上版本浏览器开始支持 MMS。
10161
+ * :::
10162
+ * @returns
10163
+ * @param codec 待检查的媒体类型和编解码信息字符串,使用 MIME 格式表示,例如`video/mp4;codecs="av01.0.01M.08"`。
10164
+ * 您也可以使用如下参数值快速检查是否支持 H.264 和 H.265 视频编码格式。
10165
+ * - `Codec.H264`(默认值):检查 MMS 是否支持 H.264 编码格式,如果支持可满足大部分 H.264 视频播放。
10166
+ * - `Codec.H265`:检查 MMS 是否支持 H.265 编码格式。如果支持可满足大部分 H.265 视频播放。
10167
+ */
10168
+ /** {en}
10169
+ * @detail api
10170
+ * @returns
10171
+ * @brief Check whether the current browser supports the MMS (ManagedMediaSource) API and check whether the MMS API supports the incoming video encoding information (MIME format).
10172
+ * :::tip
10173
+ * - Usage scenario: Check whether the Safari browser and Chrome browser on the iOS side support the incoming encoding information.
10174
+ * - Browsers with iOS 17.1 or above start to support MMS.
10175
+ * :::
10176
+ * @param codec The media type and codec information string to be checked is represented in MIME format, for example, `video/mp4;codecs="av01.0.01M.08"`.
10177
+ * You can also use the following parameter values to quickly check whether the H.264 and H.265 video coding formats are supported.
10178
+ * - `Codec.H264` (default value): Check if MMS supports the H.264 encoding format. If supported, it can meet the playback requirements of most H.264 videos.
10179
+ * - `Codec.H265`: Check if MMS supports the H.265 encoding format. If supported, it can meet the playback requirements of most H.265 videos.
10180
+ */
10181
+ function isMMSSupported(codec?: string | undefined): any;
9953
10182
  const util: {
9954
10183
  getStreamType: typeof getStreamType;
9955
10184
  isMseSupported: typeof isMseSupported;
9956
10185
  isSoftDecodeSupported: typeof isSoftDecodeSupported;
10186
+ isMMSSupported: typeof isMMSSupported;
9957
10187
  appendSearchParams: (url?: string | undefined, searchParams?: Record<string, string> | undefined) => string;
9958
10188
  getUrlObject: (url?: string | undefined) => URL | undefined;
9959
10189
  createDom(el?: string | undefined, tpl?: string | undefined, attrs?: {
@@ -10190,6 +10420,8 @@ declare namespace live {
10190
10420
  }
10191
10421
  const EN$0: {
10192
10422
  INVALID_PARAMETER: string;
10423
+ INVALID_LOGGER: string;
10424
+ EMPTY_RTM_FALLBACK_PARAMETER: string;
10193
10425
  FORMAT: string;
10194
10426
  FPS: string;
10195
10427
  BITRATE: string;
@@ -10262,6 +10494,8 @@ declare namespace live {
10262
10494
  };
10263
10495
  const ZH_CN$0: {
10264
10496
  INVALID_PARAMETER: string;
10497
+ INVALID_LOGGER: string;
10498
+ EMPTY_RTM_FALLBACK_PARAMETER: string;
10265
10499
  FORMAT: string;
10266
10500
  FPS: string;
10267
10501
  BITRATE: string;
@@ -10334,6 +10568,10 @@ declare namespace live {
10334
10568
  };
10335
10569
  type TextKey$0 = keyof typeof EN$0;
10336
10570
  const VeError$0: typeof error.VeError;
10571
+ // ve 自定义错误码
10572
+ // 第一位: 1 表示点播,2 表示直播
10573
+ // 第二位: 功能粒度,比如 210 中 1 表示入参参数有问题
10574
+ // 第三位: 某功能下细分,如果细拆成地址有问题就可以用 211 表示。
10337
10575
  enum LiveErrorCode {
10338
10576
  /** {zh}
10339
10577
  * @brief 参数错误
@@ -10343,7 +10581,20 @@ declare namespace live {
10343
10581
  * @brief Parameter errors.
10344
10582
  * @solution Please check whether the required parameters `url` and `playlist` are specified.
10345
10583
  */
10346
- INVALID_PARAMETER = 210
10584
+ INVALID_PARAMETER = 210,
10585
+ /**
10586
+ * @hidden
10587
+ */
10588
+ EMPTY_RTM_FALLBACK_PARAMETER = 211,
10589
+ /** {zh}
10590
+ * @brief 日志错误
10591
+ * @solution 未正确配置质量日志参数, 请参考 https://www.volcengine.com/docs/6469/138655#日志上报 配置。
10592
+ */
10593
+ /** {en}
10594
+ * @brief Log errors.
10595
+ * @solution Log options not configured correctly. Please refer to this document https://docs.byteplus.com/en/docs/byteplus-media-live/docs-feature-implementation#uploading-logs to configure the logs.
10596
+ */
10597
+ INVALID_LOGGER = 220
10347
10598
  }
10348
10599
  const Level$0: typeof error.Level;
10349
10600
  type ErrorInfo$0 = error.ErrorInfo;
@@ -10397,10 +10648,12 @@ declare namespace live {
10397
10648
  MODULE_LOAD_ERROR: error.ErrorCode.MODULE_LOAD_ERROR;
10398
10649
  UNKNOWN: error.ErrorCode.UNKNOWN;
10399
10650
  INVALID_PARAMETER: LiveErrorCode.INVALID_PARAMETER;
10651
+ EMPTY_RTM_FALLBACK_PARAMETER: LiveErrorCode.EMPTY_RTM_FALLBACK_PARAMETER;
10652
+ INVALID_LOGGER: LiveErrorCode.INVALID_LOGGER;
10400
10653
  };
10401
10654
  type ValueOf<T> = T[keyof T];
10402
10655
  const ERRORS: Partial<Record<ValueOf<typeof ErrorCode$0>, error.ErrorInfo<TextKey$0>>>;
10403
- function create$0(errorCode: ValueOf<typeof ErrorCode$0>, i18n?: VeI18n<TextKey$0>): error.VeError<"DEFINITION_FALLBACK_TOAST" | "DEFINITION_SWITCHING" | "ERROR_REFRESH" | "UNMUTE" | "MANIFEST" | "NETWORK" | "NETWORK_TIMEOUT" | "NETWORK_FORBIDDEN" | "NETWORK_NOTFOUND" | "DEMUX" | "REMUX" | "MEDIA" | "MEDIA_ERR_CODEC_NOT_SUPPORTED" | "MEDIA_ERR_URL_EMPTY" | "DRM" | "DRM_LICENSE" | "OTHER" | "RUNTIME" | "MODULE_LOAD_ERROR" | "UNKNOWN" | "ERROR_TYPES" | "HAVE_NOTHING" | "HAVE_METADATA" | "HAVE_CURRENT_DATA" | "HAVE_FUTURE_DATA" | "HAVE_ENOUGH_DATA" | "NETWORK_EMPTY" | "NETWORK_IDLE" | "NETWORK_LOADING" | "NETWORK_NO_SOURCE" | "MEDIA_ERR_ABORTED" | "MEDIA_ERR_NETWORK" | "MEDIA_ERR_DECODE" | "MEDIA_ERR_SRC_NOT_SUPPORTED" | "REPLAY" | "ERROR" | "PLAY_TIPS" | "PAUSE_TIPS" | "PLAYNEXT_TIPS" | "DOWNLOAD_TIPS" | "ROTATE_TIPS" | "RELOAD_TIPS" | "FULLSCREEN_TIPS" | "EXITFULLSCREEN_TIPS" | "CSSFULLSCREEN_TIPS" | "EXITCSSFULLSCREEN_TIPS" | "TEXTTRACK" | "PIP" | "SCREENSHOT" | "LIVE" | "OFF" | "OPEN" | "MINI_DRAG" | "MINISCREEN" | "REFRESH_TIPS" | "REFRESH" | "FORWARD" | "LIVE_TIP" | "GOP" | "INVALID_PARAMETER" | "FORMAT" | "FPS" | "BITRATE" | "RESOLUTION" | "ENCODE_TYPE" | "BUFFER_END" | "CURRENT_TIME" | "DECODE_EFFICIENCY" | "DECODE_COST" | "DECODE_INFO">;
10656
+ function create$0(errorCode: ValueOf<typeof ErrorCode$0>, i18n?: VeI18n<TextKey$0>): error.VeError<"DEFINITION_FALLBACK_TOAST" | "DEFINITION_SWITCHING" | "ERROR_REFRESH" | "UNMUTE" | "MANIFEST" | "NETWORK" | "NETWORK_TIMEOUT" | "NETWORK_FORBIDDEN" | "NETWORK_NOTFOUND" | "DEMUX" | "REMUX" | "MEDIA" | "MEDIA_ERR_CODEC_NOT_SUPPORTED" | "MEDIA_ERR_URL_EMPTY" | "DRM" | "DRM_LICENSE" | "OTHER" | "RUNTIME" | "MODULE_LOAD_ERROR" | "UNKNOWN" | "ERROR_TYPES" | "HAVE_NOTHING" | "HAVE_METADATA" | "HAVE_CURRENT_DATA" | "HAVE_FUTURE_DATA" | "HAVE_ENOUGH_DATA" | "NETWORK_EMPTY" | "NETWORK_IDLE" | "NETWORK_LOADING" | "NETWORK_NO_SOURCE" | "MEDIA_ERR_ABORTED" | "MEDIA_ERR_NETWORK" | "MEDIA_ERR_DECODE" | "MEDIA_ERR_SRC_NOT_SUPPORTED" | "REPLAY" | "ERROR" | "PLAY_TIPS" | "PAUSE_TIPS" | "PLAYNEXT_TIPS" | "DOWNLOAD_TIPS" | "ROTATE_TIPS" | "RELOAD_TIPS" | "FULLSCREEN_TIPS" | "EXITFULLSCREEN_TIPS" | "CSSFULLSCREEN_TIPS" | "EXITCSSFULLSCREEN_TIPS" | "TEXTTRACK" | "PIP" | "SCREENSHOT" | "LIVE" | "OFF" | "OPEN" | "MINI_DRAG" | "MINISCREEN" | "REFRESH_TIPS" | "REFRESH" | "FORWARD" | "LIVE_TIP" | "GOP" | "INVALID_PARAMETER" | "EMPTY_RTM_FALLBACK_PARAMETER" | "INVALID_LOGGER" | "FORMAT" | "FPS" | "BITRATE" | "RESOLUTION" | "ENCODE_TYPE" | "BUFFER_END" | "CURRENT_TIME" | "DECODE_EFFICIENCY" | "DECODE_COST" | "DECODE_INFO">;
10404
10657
  /** {zh}
10405
10658
  * @list option
10406
10659
  * @kind property
@@ -10506,7 +10759,7 @@ declare namespace live {
10506
10759
  /** {en}
10507
10760
  * @brief The SDK application ID. You can access it by logging in to the BytePlus MediaLive console and navigating to [SDK Management](https://console.byteplus.com/live/main/sdk).
10508
10761
  */
10509
- appId: string;
10762
+ appId?: string;
10510
10763
  /** {zh}
10511
10764
  * @brief 应用名称。
10512
10765
  * @default 无
@@ -10540,7 +10793,7 @@ declare namespace live {
10540
10793
  */
10541
10794
  deviceId?: string;
10542
10795
  /** {zh}
10543
- * @brief 报错时是否在报错面板显示当前用户id信息。
10796
+ * @brief 报错时是否在报错面板显示当前用户 ID 信息。
10544
10797
  * @default true
10545
10798
  */
10546
10799
  /** {en}
@@ -10562,6 +10815,7 @@ declare namespace live {
10562
10815
  enable: boolean;
10563
10816
  showUserIdInErrorPanel: boolean;
10564
10817
  };
10818
+ beforeCreate(args: any): void;
10565
10819
  afterCreate(): void;
10566
10820
  destroy(): void;
10567
10821
  close(): void;
@@ -10590,23 +10844,25 @@ declare namespace live {
10590
10844
  */
10591
10845
  rtm?: Rtm;
10592
10846
  /** {zh}
10593
- * @brief 为播放器设置 FLV 拉流配置。FLV 格式流相关配置仅适用于支持 MSE 播放的 PC 端浏览器和安卓端浏览器。
10847
+ * @brief 为播放器设置 FLV 拉流配置。
10848
+ * @listtip FLV 拉流格式流相关配置适用于支持 MSE 播放的 PC 端浏览器、安卓端浏览器和支持 MMS API 的 iOS 浏览器。
10594
10849
  */
10595
10850
  /** {en}
10596
- * @brief Configurations for playing an FLV stream. You can only play FLV streams with web browsers on PC and Android devices, and the browsers need to support Media Source Extensions (MSE) playback.
10851
+ * @brief Configurations for playing an FLV stream.
10852
+ * @listtip FLV pull stream format stream configurations are applicable to PC browsers, Android browsers that support MSE playback, and iOS browsers that support MMS API.
10597
10853
  */
10598
10854
  flv?: Flv;
10599
10855
  /** {zh}
10600
- * @brief 为播放器设置 HLS 拉流配置。HLS 格式流相关配置仅适用于支持 MSE 播放的 PC 端浏览器和安卓端浏览器。
10601
- * @listtip
10602
- * - PC 端该配置默认生效;
10603
- * - 移动端仅在 `enableMSE` 设置为 `true` 且支持 MSE 的浏览器中生效。
10856
+ * @brief 为播放器设置 HLS 拉流配置。
10857
+ * @listtip - HLS 格式流相关配置仅适用于支持 MSE API的 PC 端浏览器和安卓端浏览器。
10858
+ * - PC 端该配置默认生效;
10859
+ * - 移动端仅在 `enableMSE` 设置为 `true` 且支持 MSE 的浏览器中生效。
10604
10860
  */
10605
10861
  /** {en}
10606
- * @brief Configurations for playing an HLS stream. You can only play HLS streams with web browsers on PC and Android devices, and the browsers need to support Media Source Extensions (MSE) playback.
10607
- * @listtip
10608
- * - This configuration takes effect by default on PC;
10609
- * - For mobile devices, the configuration takes effect only when `enableMSE` is set to `true` for the browser.
10862
+ * @brief Configurations for playing an HLS stream.
10863
+ * @listtip - The HLS format stream configuration is only applicable to PC browsers and Android browsers that support the MSE API.
10864
+ * - This configuration takes effect by default on PC;
10865
+ * - For mobile devices, the configuration takes effect only when `enableMSE` is set to `true` for the browser.
10610
10866
  */
10611
10867
  hls?: Hls;
10612
10868
  /** {zh}
@@ -10642,7 +10898,7 @@ declare namespace live {
10642
10898
  * @default 无
10643
10899
  */
10644
10900
  /** {en}
10645
- * @brief A list of built-in plug-ins to be disabled.
10901
+ * @brief A list of built-in plug-ins to be disabled. For the access method, please refer to [Plugin descriptions](https://docs.byteplus.com/en/docs/byteplus-media-live/docs-d8idjfeza4#disabling-plugins).
10646
10902
  */
10647
10903
  ignores?: string[];
10648
10904
  /** {zh}
@@ -10650,7 +10906,7 @@ declare namespace live {
10650
10906
  * @default 无
10651
10907
  */
10652
10908
  /** {en}
10653
- * @brief The plug-in icon.
10909
+ * @brief The plug-in icon. For the access method, please refer to [Plugin descriptions](https://docs.byteplus.com/en/docs/byteplus-media-live/docs-d8idjfeza4#replacing-plugin-icons).
10654
10910
  */
10655
10911
  icons?: any;
10656
10912
  /** {zh}
@@ -10672,14 +10928,14 @@ declare namespace live {
10672
10928
  interface Abr {
10673
10929
  /** {zh}
10674
10930
  * @brief 是否开启 FLV 拉流时的自适应码率(ABR)功能,默认为开启。
10675
- * - true: 开启
10676
- * - false: 关闭
10931
+ * - `true`: 开启;
10932
+ * - `false`: 关闭。
10677
10933
  * @default true
10678
10934
  */
10679
10935
  /** {en}
10680
10936
  * @brief Enable or disable the Adaptive Bitrate (ABR) feature. The default setting is enabled.
10681
- * - true: Enable;
10682
- * - false: Disable.
10937
+ * - `true`: Enable;
10938
+ * - `false`: Disable.
10683
10939
  */
10684
10940
  enable?: boolean;
10685
10941
  /** {zh}
@@ -10698,14 +10954,14 @@ declare namespace live {
10698
10954
  downTip?: boolean;
10699
10955
  /** {zh}
10700
10956
  * @brief 是否开始调试模式,默认为关闭。
10701
- * - true: 开启;
10702
- * - false: 关闭。
10957
+ * - `true`: 开启;
10958
+ * - `false`: 关闭。
10703
10959
  * @default false
10704
10960
  */
10705
10961
  /** {en}
10706
10962
  * @brief Whether to start debug mode, default is false.
10707
- * - true: Enable,
10708
- * - false: Disable.
10963
+ * - `true`: Enable,
10964
+ * - `false`: Disable.
10709
10965
  * @default false
10710
10966
  */
10711
10967
  debug?: boolean;
@@ -10940,7 +11196,7 @@ declare namespace live {
10940
11196
  * @brief Ad client that will be used to display advertisements
10941
11197
  * - `google-ima`:Use the Google IMA SDK
10942
11198
  */
10943
- adType: "google-ima";
11199
+ adType: "google-ima" | "ssai";
10944
11200
  /** {en}
10945
11201
  * @brief Property enabling SCTE-35 tag in hls manifest
10946
11202
  * - false: SCTE-35 disabled
@@ -10948,6 +11204,14 @@ declare namespace live {
10948
11204
  * @default false
10949
11205
  */
10950
11206
  enableSCTE35?: boolean;
11207
+ /**
11208
+ * @hidden
11209
+ */
11210
+ replayForSCTE35?: {
11211
+ enable?: boolean;
11212
+ // duration 剩下超过多久才会重播
11213
+ minDurationOffset?: number;
11214
+ };
10951
11215
  /** {en}
10952
11216
  * @brief Configurations for Google IMA SDK
10953
11217
  * @listtip Required when adType is `google-ima`
@@ -11013,16 +11277,16 @@ declare namespace live {
11013
11277
  retryDelay?: number;
11014
11278
  /** {zh}
11015
11279
  * @brief 播放器发起 RTM 拉流请求时,是否开启自动转码。
11016
- * - true:开启
11017
- * - false:关闭
11280
+ * - `true`:开启;
11281
+ * - `false`:关闭。
11018
11282
  * @listtip
11019
11283
  * 如有使用 RTM 拉流自动转码的需求,请先创建工单联系[技术支持](https://console.volcengine.com/workorder/create?step=2&SubProductID=P00000076)进行配置。
11020
11284
  * @default false
11021
11285
  */
11022
11286
  /** {en}
11023
11287
  * @brief Whether to enable automatic transcoding when the player requests to pull an RTM stream.
11024
- * - true: Enable
11025
- * - false: Disable
11288
+ * - `true`: Enable;
11289
+ * - `false`: Disable.
11026
11290
  * @listtip
11027
11291
  * If you want to use the automatic transcoding feature when playing an RTM stream, contact your [technical support](https://www.byteplus.com/en/support).
11028
11292
  * @default false
@@ -11036,6 +11300,39 @@ declare namespace live {
11036
11300
  * @brief Specify the recent time length for network evaluation in milliseconds. The default is 1000, which means evaluating the network conditions over the last 1000 milliseconds.
11037
11301
  */
11038
11302
  networkEvaluateInterval?: number;
11303
+ /** {zh}
11304
+ * @brief 暂停后重新拉流的处理方式是否为无缝替换。
11305
+ * - `true`:是,重新拉流期间不会出现黑屏现象。
11306
+ * - `false`:否,重新拉流期间会出现黑屏现象。
11307
+ * @default false
11308
+ * @listtip Safari 浏览器在进行 RTM 拉流时不支持使用此配置。
11309
+ */
11310
+ /** {en}
11311
+ * @brief Whether the processing method for re-pulling the stream after pausing is seamless replacement.
11312
+ * - `true`: Yes, there will be no black screen phenomenon during re-pulling the stream.
11313
+ * - `false`: No, there will be a black screen phenomenon during re-pulling the stream.
11314
+ * :::tip
11315
+ * Safari browsers do not support using this configuration when performing RTM stream pulling.
11316
+ * :::
11317
+ * @default false
11318
+ */
11319
+ seamlesslyReload?: boolean;
11320
+ /** {zh}
11321
+ * @brief 暂停播放后的断联时间,单位为秒,默认不断联。
11322
+ * @listtip Safari 浏览器在进行 RTM 拉流时,如果出现断联,重新拉流时会出现短暂黑屏或加载情况。
11323
+ */
11324
+ /** {en}
11325
+ * @brief The disconnection time after pausing playback is in seconds. By default, there is no disconnection.
11326
+ * @listtip When Safari browser performs RTM streaming, if there is a disconnection, there will be a short black screen or loading situation when re-streaming.
11327
+ */
11328
+ disconnectTime?: number;
11329
+ /** {zh}
11330
+ * @hidden
11331
+ */
11332
+ /** {en}
11333
+ * @hidden
11334
+ */
11335
+ enableOriginSdpLogger?: boolean;
11039
11336
  }
11040
11337
  /** {zh}
11041
11338
  * @list option
@@ -11075,15 +11372,17 @@ declare namespace live {
11075
11372
  loadTimeout?: number;
11076
11373
  /** {zh}
11077
11374
  * @brief 播放器发起 FLV 拉流请求时,是否开启低延时。例如,当您开启低延时且推流端 GOP 设置为 2s 的情况下,FLV 拉流平均端到端延时约为 2s。
11078
- * - true:开启
11079
- * - false:关闭
11375
+ * - `true`:开启;
11376
+ * - `false`:关闭
11080
11377
  * @default false
11378
+ * @listtip 低延迟 FLV 拉流仅在 PC 端浏览器中生效。
11081
11379
  */
11082
11380
  /** {en}
11083
11381
  * @brief Whether to enable low latency when playing an FLV address. For example, if you have enabled low latency, and set GOP to 2 seconds, the average latency will be around 2 seconds.
11084
- * - true: Enable
11085
- * - false: Disable
11382
+ * - `true`: Enable;
11383
+ * - `false`: Disable.
11086
11384
  * @default false
11385
+ * @listtip Low-latency FLV pull-streaming is only effective in PC browsers.
11087
11386
  */
11088
11387
  enableLowLatency?: boolean;
11089
11388
  /** {zh}
@@ -11116,23 +11415,24 @@ declare namespace live {
11116
11415
  */
11117
11416
  maxReaderInterval?: number;
11118
11417
  /** {zh}
11119
- * @brief
11120
- * 直播暂停时的断流等待时间,单位为秒,默认值为 0,表示直播暂停时即断流。
11418
+ * @brief 暂停播放后的断联时间,单位为秒,默认值为 0,表示暂停播放后立即断联。
11121
11419
  * @default 0
11122
11420
  */
11123
11421
  /** {en}
11124
- * @brief The waiting time for disconnection during live streaming suspension, measured in seconds. The default value is 0, indicating immediate disconnection when live streaming is suspended.
11422
+ * @brief The disconnection time after pausing playback is in seconds. The default value is 0, indicating immediate disconnection after pausing playback.
11125
11423
  * @default 0
11126
11424
  */
11127
11425
  disconnectTime?: number;
11128
11426
  /** {zh}
11129
- * @brief 断流后重新拉流是否无缝,无缝拉流时重新拉流不会出现黑帧。
11130
- * - `true`:是;
11131
- * - `false`:否。
11427
+ * @brief 暂停后重新拉流的处理方式是否为无缝替换。
11428
+ * - `true`:是,重新拉流期间不会出现黑屏现象。
11429
+ * - `false`:否,重新拉流期间会出现黑屏现象。
11132
11430
  * @default false
11133
11431
  */
11134
11432
  /** {en}
11135
- * @brief Whether re-pulling the stream after disconnection is seamless. When seamless stream pulling, there will be no black frames during re-pulling. - `true`: Yes; - `false`: No.
11433
+ * @brief Whether the processing method for re-pulling the stream after pausing is seamless replacement.
11434
+ * - `true`: Yes, there will be no black screen phenomenon during re-pulling the stream.
11435
+ * - `false`: No, there will be a black screen phenomenon during re-pulling the stream.
11136
11436
  * @default false
11137
11437
  */
11138
11438
  seamlesslyReload?: boolean;
@@ -11155,14 +11455,14 @@ declare namespace live {
11155
11455
  abrPts?: string | number;
11156
11456
  /** {zh}
11157
11457
  * @brief FLV 低延时模式下,是否开启倍速追帧。
11158
- * - true:开启;
11159
- * - false:关闭。
11458
+ * - `true`:开启;
11459
+ * - `false`:关闭。
11160
11460
  * @default true
11161
11461
  */
11162
11462
  /** {en}
11163
11463
  * @brief Whether to enable speed-up frame chasing in FLV low latency mode.
11164
- * - true: enabled;
11165
- * - false: disabled.
11464
+ * - `true`: enabled;
11465
+ * - `false`: disabled.
11166
11466
  * @default true
11167
11467
  */
11168
11468
  enableFrameChasing?: boolean;
@@ -11229,6 +11529,10 @@ declare namespace live {
11229
11529
  * @hidden
11230
11530
  */
11231
11531
  mseLowLatency?: boolean;
11532
+ /**
11533
+ * @hidden
11534
+ */
11535
+ enableHlsJs?: boolean;
11232
11536
  }
11233
11537
  /** {zh}
11234
11538
  * @list option
@@ -11668,6 +11972,7 @@ declare namespace live {
11668
11972
  * @brief Obtain the duration that has been played, excluding pause and waiting time, with the unit of seconds.
11669
11973
  */
11670
11974
  get playTime(): number;
11975
+ get ad(): any;
11671
11976
  /** {zh}
11672
11977
  * @brief 调用此方法开启直播日志上报。
11673
11978
  */
@@ -11817,4 +12122,5 @@ declare namespace live {
11817
12122
  }
11818
12123
  declare const isMseSupported$0: typeof isMseSupported;
11819
12124
  declare const isSoftDecodeSupported$0: typeof isSoftDecodeSupported;
11820
- export { Codec, DecodeType, Degradation, DynamicModule, RTMCodec, ListType, Plugin, ExposedSource, VePlayerLive, util, register, registerPlugin, createLivePlayer, isMseSupported$0 as isMseSupported, isSoftDecodeSupported$0 as isSoftDecodeSupported, isRTMSupported, isRTMSupportCodec, load, POSITIONS, EN, ZH_CN, Sniffer, live };
12125
+ declare const isMMSSupported$0: typeof isMMSSupported;
12126
+ export { Codec, DecodeType, Degradation, DynamicModule, RTMCodec, ListType, Plugin, ExposedSource, VePlayerLive, util, register, registerPlugin, createLivePlayer, isMseSupported$0 as isMseSupported, isSoftDecodeSupported$0 as isSoftDecodeSupported, isRTMSupported, isFLVSupported, isRTMSupportCodec, isMMSSupported$0 as isMMSSupported, load, POSITIONS, EN, ZH_CN, Sniffer, live };