@volcengine/veplayer 1.9.6-rc.0 → 1.9.6-rc.10

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/index.d.ts CHANGED
@@ -1371,8 +1371,10 @@ export declare type IPlayerOptions = {
1371
1371
  };
1372
1372
  /**
1373
1373
  * @brief mobile端交互配置。
1374
- * @list Options
1375
- * @kind property
1374
+ * @hidden
1375
+ */
1376
+ /** {en}
1377
+ * @hidden
1376
1378
  */
1377
1379
  export interface IMobileConfig {
1378
1380
  /**
@@ -1481,8 +1483,10 @@ export interface IMobileConfig {
1481
1483
  }
1482
1484
  /**
1483
1485
  * @brief 播放器中间切换暂停/播放的按钮。
1484
- * @list Options
1485
- * @kind property
1486
+ * @hidden
1487
+ */
1488
+ /** {en}
1489
+ * @hidden
1486
1490
  */
1487
1491
  export interface IStartConfig {
1488
1492
  /**
@@ -2101,7 +2105,7 @@ export interface ISubtitleInfoList {
2101
2105
  Version: string;
2102
2106
  Vid: string;
2103
2107
  }
2104
- export interface IThumbInfoList {
2108
+ export interface IThumbInfoItem {
2105
2109
  CaptureNum: number;
2106
2110
  CellHeight: number;
2107
2111
  CellWidth: number;
@@ -2121,9 +2125,20 @@ export interface IBarrageMaskInfo {
2121
2125
  Bitrate: number;
2122
2126
  HeadLen: number;
2123
2127
  }
2128
+ export interface DashAdaptiveInfo {
2129
+ AdaptiveType: string;
2130
+ BackupPlayUrl: string;
2131
+ MainPlayUrl: string;
2132
+ }
2133
+ export interface ABRInfo {
2134
+ AbrFormat: string;
2135
+ BackupPlayUrl: string;
2136
+ MainPlayUrl: string;
2137
+ }
2124
2138
  export interface IGetPlayInfoRes {
2125
2139
  Vid: string;
2126
- AdaptiveInfo?: any;
2140
+ AdaptiveInfo?: DashAdaptiveInfo;
2141
+ AdaptiveBitrateStreamingInfo?: ABRInfo;
2127
2142
  BarrageMaskInfo?: IBarrageMaskInfo;
2128
2143
  BarrageMaskUrl: string;
2129
2144
  Duration: number;
@@ -2133,7 +2148,7 @@ export interface IGetPlayInfoRes {
2133
2148
  PosterUrl: string;
2134
2149
  Status: number;
2135
2150
  SubtitleInfoList: ISubtitleInfoList[];
2136
- ThumbInfoList: IThumbInfoList[];
2151
+ ThumbInfoList: IThumbInfoItem[];
2137
2152
  TotalCount: number;
2138
2153
  Version: number;
2139
2154
  }
@@ -2409,6 +2424,16 @@ export interface Stream extends Partial<IPlayInfoListItem> {
2409
2424
  * @brief 多语言词典中对应的 key。比如 `lineTextKey: LINE_ONE`。
2410
2425
  */
2411
2426
  lineTextKey?: string;
2427
+ /**
2428
+ * @brief 该码流视频的宽度,单位为 px
2429
+ * @default -
2430
+ */
2431
+ width?: number;
2432
+ /**
2433
+ * @brief 该码流视频的高度,单位为 px
2434
+ * @default -
2435
+ */
2436
+ height?: number;
2412
2437
  /**
2413
2438
  * @brief 码流的平均码率
2414
2439
  * @default -
@@ -2511,7 +2536,7 @@ export declare type Url = string | Array<{
2511
2536
  * @brief 播放器实例化配置。
2512
2537
  */
2513
2538
  /** {en}
2514
- * @brief Player Instance Configuration
2539
+ * @brief Player instantiation configuration.
2515
2540
  */
2516
2541
  export interface IPlayerConfig extends IPlayerOptions {
2517
2542
  /** {zh}
@@ -2519,6 +2544,9 @@ export interface IPlayerConfig extends IPlayerOptions {
2519
2544
  * @default false
2520
2545
  * @hidden
2521
2546
  */
2547
+ /** {en}
2548
+ * @hidden
2549
+ */
2522
2550
  isLive?: boolean;
2523
2551
  /** {zh}
2524
2552
  * @brief 播放器容器 ID。播放器将被插入在该容器中。
@@ -2796,6 +2824,9 @@ export interface IPlayerConfig extends IPlayerOptions {
2796
2824
  * @default 无
2797
2825
  * @hidden 直播目前没用到
2798
2826
  */
2827
+ /** {en}
2828
+ * @hidden
2829
+ */
2799
2830
  commonStyle?: ICommonStyle;
2800
2831
  /** {zh}
2801
2832
  * @brief 是否开启音乐播放模式。开启后,您可还通过 `music` 参数对音乐播放器进行配置。取值如下:
@@ -2812,6 +2843,9 @@ export interface IPlayerConfig extends IPlayerOptions {
2812
2843
  * @type {boolean}
2813
2844
  * @memberof IPlayerConfig
2814
2845
  */
2846
+ /** {en}
2847
+ * @hidden
2848
+ */
2815
2849
  enableContextmenu?: boolean;
2816
2850
  /** {zh}
2817
2851
  * @brief 是否关闭 `video` 标签的事件冒泡。取值如下:
@@ -2829,54 +2863,95 @@ export interface IPlayerConfig extends IPlayerOptions {
2829
2863
  */
2830
2864
  enableMenu?: boolean;
2831
2865
  /**
2832
- * @brief 是否关闭pc端单击播放器区域切换播放/暂停
2866
+ * @brief 是否禁用 PC 端点击播放器区域切换播放和暂停功能。
2833
2867
  * @default false
2868
+ * @hidden
2869
+ */
2870
+ /** {en}
2871
+ * @brief Whether to disable the ability to toggle play and pause by clicking on the player area on PC.
2872
+ * @hidden
2834
2873
  */
2835
2874
  closeVideoClick?: boolean;
2836
2875
  /**
2837
2876
  * @brief pc端: 是否关闭双击播放器进入全屏的能力
2838
2877
  * mobile端: 是否关闭双击切换暂停/播放的能力
2839
2878
  * @default pc端: true, mobile端: false
2879
+ * @hidden
2880
+ */
2881
+ /** {en}
2882
+ * @hidden
2840
2883
  */
2841
2884
  closeVideoDblclick?: boolean;
2842
2885
  /**
2843
2886
  * @brief 是否关闭播放器自动失焦(只在pc端生效)
2844
2887
  * @default false
2888
+ * @hidden
2889
+ */
2890
+ /** {en}
2891
+ * @hidden
2845
2892
  */
2846
2893
  closeDelayBlur?: boolean;
2847
2894
  /**
2848
2895
  * @brief 播放器focus状态自动消失延迟时长,单位为ms
2849
2896
  * @default pc端: 2000, mobile端: 3000
2897
+ * @hidden
2898
+ */
2899
+ /** {en}
2900
+ * @hidden
2850
2901
  */
2851
2902
  inactive?: number;
2852
2903
  /**
2853
2904
  * @brief 用户鼠标离开播放器区域之后,控制栏隐藏延时时间,如果想要鼠标移出播放器区域就隐藏,则配置为0(只在pc端生效)
2854
2905
  * @default 0
2906
+ * @hidden
2907
+ */
2908
+ /** {en}
2909
+ * @hidden
2855
2910
  */
2856
2911
  leavePlayerTime?: number;
2857
2912
  /**
2858
2913
  * @brief 是否关闭play时触发player焦点状态
2859
2914
  * @default pc端:true, mobile端:false
2915
+ * @hidden
2916
+ */
2917
+ /** {en}
2918
+ * @hidden
2860
2919
  */
2861
2920
  closePlayVideoFocus?: boolean;
2862
2921
  /**
2863
2922
  * @brief 是否关闭pause时触发player焦点状态,会强制呼出控制栏
2864
2923
  * @default false
2924
+ * @hidden
2925
+ */
2926
+ /** {en}
2927
+ * @hidden
2865
2928
  */
2866
2929
  closePauseVideoFocus?: boolean;
2867
2930
  /**
2868
2931
  * @brief 是否需要在退出全屏后滚动定位到全屏之前的位置。(一般安卓下退出全屏后页面会滚动)
2869
2932
  * @default false
2933
+ * @hidden
2934
+ */
2935
+ /** {en}
2936
+ * @hidden
2870
2937
  */
2871
2938
  needFullscreenScroll?: boolean;
2872
2939
  /**
2873
2940
  * @brief 移动端交互插件配置
2874
2941
  * @default -
2942
+ * @hidden
2943
+ */
2944
+ /** {en}
2945
+ * @hidden
2875
2946
  */
2876
2947
  mobile?: IMobileConfig;
2877
2948
  /**
2878
2949
  * @brief 播放器中间切换暂停/播放的按钮插件配置
2879
2950
  * @default -
2951
+ * @hidden
2952
+ */
2953
+ /** {en}
2954
+ * @hidden
2880
2955
  */
2881
2956
  start?: IStartConfig;
2882
2957
  /** {zh}
@@ -2920,11 +2995,17 @@ export interface IPlayerConfig extends IPlayerOptions {
2920
2995
  * @brief 默认配置
2921
2996
  * @hidden
2922
2997
  */
2998
+ /** {en}
2999
+ * @hidden
3000
+ */
2923
3001
  defaultConfig?: IDefaultConfig;
2924
3002
  /** {zh}
2925
3003
  * @hidden
2926
3004
  * @brief 模拟mobile
2927
3005
  */
3006
+ /** {en}
3007
+ * @hidden
3008
+ */
2928
3009
  isMobile?: boolean;
2929
3010
  /** {zh}
2930
3011
  * @brief UMD 依赖备用地址。用于依赖的 CDN 发生网络错误时的降级备用地址。支持的依赖如下:
@@ -3002,6 +3083,9 @@ export interface IPlayerConfig extends IPlayerOptions {
3002
3083
  * @brief 播放源过期的回调函数。可用来更新播放源数据。
3003
3084
  * @default -
3004
3085
  */
3086
+ /** {en}
3087
+ * @hidden
3088
+ */
3005
3089
  onMediaExpired?: () => Promise<SourceConfig>;
3006
3090
  /** {zh}
3007
3091
  * @brief 临时播放 Token 过期时的回调函数,可用来更新临时播放 Token。
@@ -3013,12 +3097,18 @@ export interface IPlayerConfig extends IPlayerOptions {
3013
3097
  * @brief 禁用点播日志配置检测,默认开启,如果未配置line_app_id则会播放报错
3014
3098
  * @default -
3015
3099
  */
3100
+ /** {en}
3101
+ * @hidden
3102
+ */
3016
3103
  disableVodLogOptsCheck?: boolean;
3017
3104
  /** {zh}
3018
3105
  * @hidden
3019
3106
  * @brief 是否打开日志打印
3020
3107
  * @default false
3021
3108
  */
3109
+ /** {en}
3110
+ * @hidden
3111
+ */
3022
3112
  debug?: boolean;
3023
3113
  /** {zh}
3024
3114
  * @brief 播放器报错信息。支持配置播放异常时显示的异常文案、图片以及是否提供刷新按钮等。
@@ -3031,6 +3121,9 @@ export interface IPlayerConfig extends IPlayerOptions {
3031
3121
  * @default -
3032
3122
  * @hidden
3033
3123
  */
3124
+ /** {en}
3125
+ * @hidden
3126
+ */
3034
3127
  rtm?: IRtmConfig;
3035
3128
  /** {zh}
3036
3129
  * @brief 弹幕及面板配置。支持配置弹幕文字大小、透明度、展示区域等参数。
@@ -3047,6 +3140,9 @@ export interface IPlayerConfig extends IPlayerOptions {
3047
3140
  * @brief DASH 播放配置项
3048
3141
  * @default -
3049
3142
  */
3143
+ /** {en}
3144
+ * @hidden
3145
+ */
3050
3146
  DASHPlugin?: Partial<IDashPluginConfig>;
3051
3147
  /** {zh}
3052
3148
  * @brief HLS 加密播放配置。
@@ -3063,12 +3159,33 @@ export interface IPlayerConfig extends IPlayerOptions {
3063
3159
  * @brief mp4加密播放配置项
3064
3160
  * @default -
3065
3161
  */
3162
+ /** {en}
3163
+ * @hidden
3164
+ */
3066
3165
  Mp4EncryptPlayer?: Partial<IMp4EncryptPlayerConfig> | boolean;
3067
3166
  /** {zh}
3068
3167
  * @brief 自适应码率配置。
3069
3168
  * @default -
3070
3169
  */
3071
3170
  autoBitrateOpts?: IAutoBitrateOpts;
3171
+ /** {zh}
3172
+ * @brief Range拆分(动态Buffer)
3173
+ * @default -
3174
+ * @hidden
3175
+ */
3176
+ /** {en}
3177
+ * @hidden
3178
+ */
3179
+ adaptRange?: IAdaptRange;
3180
+ /** {zh}
3181
+ * @brief 视频时长。
3182
+ * @default -
3183
+ * @hidden
3184
+ */
3185
+ /** {en}
3186
+ * @hidden
3187
+ */
3188
+ duration?: number;
3072
3189
  /** {zh}
3073
3190
  * @brief 外挂字幕配置。
3074
3191
  * @default -
@@ -3116,6 +3233,9 @@ export declare type SourceConfig = Pick<IPlayerConfig, "url" | "playList" | "get
3116
3233
  /** {zh}
3117
3234
  * @hidden
3118
3235
  */
3236
+ /** {en}
3237
+ * @hidden
3238
+ */
3119
3239
  export interface IDefaultConfig {
3120
3240
  /** {zh}
3121
3241
  * @brief “点播”还是“直播”
@@ -3255,17 +3375,20 @@ export interface IPlayAuthTokenConfig {
3255
3375
  /**
3256
3376
  * @brief 商业DRM 获取license的token
3257
3377
  * @default -
3378
+ * @hidden
3258
3379
  */
3259
3380
  thirdPartyDrmAuthToken?: string;
3260
3381
  /**
3261
3382
  * @brief 商业DRM,获取fairplay证书的地址
3262
3383
  * @default -
3384
+ * @hidden
3263
3385
  */
3264
3386
  serverCertificatePath?: string;
3265
3387
  /**
3266
3388
  * @brief 商业DRM播放时,是否开启防录屏检测
3267
3389
  * @notice 如果开启后检测到当前环境不支持,则报错
3268
3390
  * @default true
3391
+ * @hidden
3269
3392
  */
3270
3393
  unRecord?: boolean;
3271
3394
  /** {zh}
@@ -3598,12 +3721,16 @@ declare enum StrategyNames {
3598
3721
  /**
3599
3722
  * 预加载
3600
3723
  */
3601
- PRELOAD = "preload"
3724
+ PRELOAD = "preload",
3725
+ /**
3726
+ * Range拆分-动态Buffer
3727
+ */
3728
+ ADAPT_RANGE = "adaptRange"
3602
3729
  }
3603
3730
  /**{zh}
3604
3731
  * @hidden
3605
3732
  * h265策略配置
3606
- * @detail detail
3733
+ * @detail Options
3607
3734
  */
3608
3735
  export declare type IH265Config = {
3609
3736
  /**
@@ -3617,7 +3744,11 @@ export declare type IH265Config = {
3617
3744
  } & VeStrategyH265Config;
3618
3745
  /**{zh}
3619
3746
  * 预加载初始配置
3620
- * @detail detail
3747
+ * @detail Options
3748
+ * @hidden
3749
+ */
3750
+ /** {en}
3751
+ * @hidden
3621
3752
  */
3622
3753
  export declare type IPreloadConfig = {
3623
3754
  /**
@@ -3655,12 +3786,33 @@ export declare type IPreloadConfig = {
3655
3786
  disabled?: boolean;
3656
3787
  };
3657
3788
  /**{zh}
3658
- * 高级能力(策略)配置
3789
+ * Range拆分(动态Buffer)策略初始配置
3659
3790
  * @detail detail
3791
+ * @hidden
3792
+ */
3793
+ /** {en}
3794
+ * @hidden
3795
+ */
3796
+ export declare type IAdaptRangeConfig = {
3797
+ /**
3798
+ * 预加载依赖Module
3799
+ */
3800
+ Strategy?: any;
3801
+ /**
3802
+ * 是否禁用Range拆分策略
3803
+ */
3804
+ disabled?: boolean;
3805
+ };
3806
+ /**{zh}
3807
+ * 高级能力(策略)配置
3808
+ * @detail Options
3809
+ * @hidden
3810
+ */
3811
+ /** {en}
3812
+ * @hidden
3660
3813
  */
3661
3814
  export declare type StrategyConfigOptions = {
3662
3815
  /**
3663
- * @hidden
3664
3816
  * h265策略配置
3665
3817
  */
3666
3818
  [StrategyNames.H265]?: boolean | IH265Config;
@@ -3668,10 +3820,18 @@ export declare type StrategyConfigOptions = {
3668
3820
  * 预加载配置
3669
3821
  */
3670
3822
  [StrategyNames.PRELOAD]?: boolean | IPreloadConfig;
3823
+ /**
3824
+ * Range拆分(动态Buffer)
3825
+ */
3826
+ [StrategyNames.ADAPT_RANGE]?: boolean | IAdaptRangeConfig;
3671
3827
  };
3672
3828
  /**{zh}
3673
3829
  * 播放器预初始化配置
3674
- * @detail detail
3830
+ * @detail Options
3831
+ * @hidden
3832
+ */
3833
+ /** {en}
3834
+ * @hidden
3675
3835
  */
3676
3836
  export declare type StrategyInitOptions = {
3677
3837
  /**
@@ -3697,7 +3857,8 @@ export declare type StrategyInitOptions = {
3697
3857
  };
3698
3858
  /**{zh}
3699
3859
  * 预加载实例,通过预加载实例可执行一些高级方法
3700
- * @detail detail
3860
+ * @detail Options
3861
+ * @hidden
3701
3862
  */
3702
3863
  export declare type PreloaderManager = {
3703
3864
  /**
@@ -3733,7 +3894,8 @@ declare enum PreloaderStatus {
3733
3894
  }
3734
3895
  /**{zh}
3735
3896
  * 预加载配置更新
3736
- * @detail detail
3897
+ * @detail Options
3898
+ * @hidden
3737
3899
  */
3738
3900
  export declare type IPreloadUpdateConfig = {
3739
3901
  /**
@@ -3747,7 +3909,11 @@ export declare type IPreloadUpdateConfig = {
3747
3909
  };
3748
3910
  /**{zh}
3749
3911
  * 预加载视频资源
3750
- * @detail detail
3912
+ * @detail Options
3913
+ * @hidden
3914
+ */
3915
+ /** {en}
3916
+ * @hidden
3751
3917
  */
3752
3918
  export declare type IPreloadStream = {
3753
3919
  /**
@@ -3812,12 +3978,83 @@ declare class VeStrategyWrapper {
3812
3978
  prepare(): Promise<boolean>;
3813
3979
  getDeviceId(): string;
3814
3980
  isReady(): boolean;
3815
- getStrategyRecommendations(): StrategyRecommendation;
3816
- getStrategyRecommendationsAsync(): Promise<StrategyRecommendation>;
3981
+ getStrategyRecommendations(options?: any, commonOptions?: any): StrategyRecommendation;
3982
+ getStrategyRecommendationsAsync(options?: any, commonOptions?: any): Promise<StrategyRecommendation>;
3817
3983
  isHevcRecommended(): boolean;
3818
3984
  private initPreloaderConfig;
3819
3985
  }
3820
3986
  declare const _default: VeStrategyWrapper;
3987
+ export declare type IRes = IGetPlayInfoRes & {
3988
+ Data: IGetPlayInfoRes & {
3989
+ VideoID?: string;
3990
+ };
3991
+ };
3992
+ export interface IDefItem extends Stream {
3993
+ vid: string;
3994
+ lineId?: number;
3995
+ lineName?: string;
3996
+ url: string;
3997
+ streamType: string;
3998
+ backupUrl: string;
3999
+ backUrlList: string[];
4000
+ fileType?: "video" | "audio" | "evideo" | "eaudio";
4001
+ format: string;
4002
+ bitrate?: number;
4003
+ size?: number;
4004
+ kid?: string;
4005
+ vwidth?: number;
4006
+ vheight?: number;
4007
+ }
4008
+ export interface VideoInfoRes {
4009
+ playList: IDefItem[];
4010
+ type?: string;
4011
+ poster: string;
4012
+ vid: string;
4013
+ duration: number;
4014
+ dashOpts: IRes | {
4015
+ Data: IRes;
4016
+ };
4017
+ thumbs: IThumbInfoItem[];
4018
+ barrageMaskUrl: string;
4019
+ enableAdaptive?: boolean;
4020
+ adaptiveBitrateStreamingInfo?: ABRInfo;
4021
+ }
4022
+ declare function isMSESupport(mime?: string): boolean;
4023
+ export interface IAdaptRangeDefaultOptions {
4024
+ maxTargetCacheDur: number;
4025
+ minTargetCacheDur: number;
4026
+ rangeMaxDuration: number;
4027
+ rangeMinDuration: number;
4028
+ cacheSafeFactor: number;
4029
+ estPTcontrol: boolean;
4030
+ estPlayTime: number;
4031
+ minBandwidth: number;
4032
+ minDangerThreshold: number;
4033
+ rangeControl: boolean;
4034
+ rangeMinSize: number;
4035
+ safeFactor: number;
4036
+ targetCacheControl: boolean;
4037
+ }
4038
+ declare abstract class AbstractBaseAdapter {
4039
+ isLive: boolean;
4040
+ playerData: PlayerData;
4041
+ streamType: string;
4042
+ constructor(options: {
4043
+ configs: IPlayerConfig;
4044
+ playerData: PlayerData;
4045
+ streamType: string;
4046
+ });
4047
+ abstract canOpenAbr(vidPlayInfo?: VideoInfoRes): boolean;
4048
+ abstract applyAbrPluginConfig(_finalOptions: any, _autoBitrateOpts: any): void;
4049
+ abstract prepareAbrModule(_playerData: any, _sdkUmdLoader: any): void;
4050
+ abstract needAbrAutoDefinition(): boolean;
4051
+ abstract setAbrDefaultDefiWithAuto(): boolean;
4052
+ abstract generatePlaylistFromServer(res: VideoInfoRes): Stream[];
4053
+ abstract canAdaptRangeEnable(): boolean;
4054
+ abstract adaptRangeDefaultOptions(): IAdaptRangeDefaultOptions | undefined;
4055
+ abstract applyAdaptRangePluginConfig(_finalOptions: any, _adaptRangeOptions: any): void;
4056
+ abstract applyAdaptRangeStrategy(_finalOptions: any, _adaptRangeOptions: any): void;
4057
+ }
3821
4058
  declare class PlayerData {
3822
4059
  id?: string;
3823
4060
  root?: HTMLElement;
@@ -3861,18 +4098,27 @@ declare class PlayerData {
3861
4098
  urlExpireDiff: number;
3862
4099
  urlCheckExpireInterval: number;
3863
4100
  };
4101
+ private isAutoBitrateEnable;
4102
+ adapter: AbstractBaseAdapter;
3864
4103
  isBusinessDrm: boolean;
3865
4104
  isEncrypt: boolean;
3866
4105
  dashOpts: {
3867
4106
  Data: IGetPlayInfoRes;
3868
4107
  };
3869
- constructor(configs: IPlayerConfig);
4108
+ sdk: VePlayer;
4109
+ constructor(configs: IPlayerConfig, sdk: VePlayer);
3870
4110
  /**
3871
4111
  * 初始化播放数据
3872
4112
  * @param configs { IPlayerConfig } 播放器配置
3873
4113
  */
3874
4114
  initPlayData(configs: IPlayerConfig): void;
3875
4115
  initPlaylistAndGetCurrent(configs: IPlayerConfig): Stream;
4116
+ checkAutoBitratePlayList(): boolean;
4117
+ getABRStreamInfo(streamType: any, originDefaultStream: any): {
4118
+ defaultDefinition: string;
4119
+ defaultStream: any;
4120
+ playList: Stream[];
4121
+ };
3876
4122
  isCurrentH265(): boolean;
3877
4123
  getCurrentByDefaultConfig(): Stream;
3878
4124
  initCurrent(currentStreams: Stream): void;
@@ -3889,12 +4135,13 @@ declare class PlayerData {
3889
4135
  * @description: 获取当前直播url
3890
4136
  */
3891
4137
  getCurrentUrl(): Url;
4138
+ getTargetStreamType(stream?: Stream): string;
3892
4139
  /**
3893
4140
  * @description: 获取当前的streamType
3894
4141
  */
3895
4142
  getCurrentStreamType(): string;
3896
4143
  getStreamType(): string;
3897
- isOpenABR(streamType?: string): boolean;
4144
+ isOpenABR(): boolean;
3898
4145
  showRealDefinition(): boolean;
3899
4146
  isAutoDefinition(def: any): boolean;
3900
4147
  isPlayAutoDefinition(def?: string): boolean;
@@ -3947,8 +4194,8 @@ declare class PlayerData {
3947
4194
  * 更新playList
3948
4195
  */
3949
4196
  updatePlayList(): void;
4197
+ isVidPlay(): boolean;
3950
4198
  }
3951
- declare function isMSESupport(mime?: string): boolean;
3952
4199
  /**
3953
4200
  * @hidden
3954
4201
  * @brief 移动端交互面板配置
@@ -3998,6 +4245,7 @@ declare enum UmdKeys {
3998
4245
  VeStrategy = "vestrategy",
3999
4246
  VeStrategyH265 = "vestrategy_h265",
4000
4247
  VeStrategyPreload = "vestrategy_preload",
4248
+ VeStrategyAdaptRange = "vestrategy_adapt_range",
4001
4249
  DashAbralgo = "DashAbralgo",
4002
4250
  Preloader = "preloader"
4003
4251
  }
@@ -4081,6 +4329,9 @@ declare class VePlayer {
4081
4329
  * @type {PlayerData}
4082
4330
  * @memberof VePlayer
4083
4331
  */
4332
+ /** {en}
4333
+ * @hidden
4334
+ */
4084
4335
  playerData: PlayerData;
4085
4336
  /** {zh}
4086
4337
  * @brief 播放器内核实例,详情参考{@link https://www.volcengine.com/docs/4/1249083 播放器内核}。
@@ -4094,6 +4345,9 @@ declare class VePlayer {
4094
4345
  * @type {*}
4095
4346
  * @memberof VePlayer
4096
4347
  */
4348
+ /** {en}
4349
+ * @hidden
4350
+ */
4097
4351
  mountingDom: Element;
4098
4352
  /** {zh}
4099
4353
  * @hidden
@@ -4101,6 +4355,9 @@ declare class VePlayer {
4101
4355
  * @type {*}
4102
4356
  * @memberof VePlayer
4103
4357
  */
4358
+ /** {en}
4359
+ * @hidden
4360
+ */
4104
4361
  playerContainer: any;
4105
4362
  /** {zh}
4106
4363
  * @hidden
@@ -4108,6 +4365,9 @@ declare class VePlayer {
4108
4365
  * @type {*}
4109
4366
  * @memberof VePlayer
4110
4367
  */
4368
+ /** {en}
4369
+ * @hidden
4370
+ */
4111
4371
  mobilePanel: any;
4112
4372
  /** {zh}
4113
4373
  *
@@ -4165,6 +4425,7 @@ declare class VePlayer {
4165
4425
  * @memberof VePlayer
4166
4426
  */
4167
4427
  sdkUmdLoader: umdLoader;
4428
+ private adapter;
4168
4429
  /**
4169
4430
  * @hidden
4170
4431
  */
@@ -4183,33 +4444,35 @@ declare class VePlayer {
4183
4444
  * @memberof VePlayer
4184
4445
  */
4185
4446
  static sdkVersion: string;
4186
- /**{zh}
4187
- * @brief 播放器预初始化配置
4447
+ /** {zh}
4448
+ * @brief 播放策略预初始化配置
4188
4449
  * @param options 初始化配置,详情见{@link StrategyInitOptions}
4189
4450
  */
4190
4451
  static prepare(options: StrategyInitOptions): Promise<void>;
4191
- /**{zh}
4452
+ /** {zh}
4192
4453
  * @brief 设置预加载模式
4193
4454
  * @param preloadScene 预加载模式,详情见{@link PreloadScene}
4194
4455
  * @param options 预加载配置更新,详情见{@link IPreloadUpdateConfig}
4195
4456
  */
4196
4457
  static setPreloadScene(preloadScene: PreloadScene, options?: IPreloadUpdateConfig): void;
4197
- /**{zh}
4198
- * @brief 获取预加载实例,可通过预加载实例执行高级方法,需在VePlayer.prepare Promise执行完成之后才能获取到预加载实例
4199
- * @returns 预加载实例,详情见{@link PreloaderManager}
4458
+ /** {zh}
4459
+ * @hidden
4460
+ * @brief 获取预加载实例,可通过预加载实例执行高级方法,需在 `VePlayer.prepare` 的 Promise 执行完成之后才能获取到预加载实例。
4461
+ * @returns 预加载实例,详见 {@link PreloaderManager}
4200
4462
  */
4201
4463
  static get preloader(): PreloaderManager | undefined;
4202
- /**{zh}
4203
- * @brief 获取当前预加载实例状态
4204
- * @returns 预加载实例状态,详情见{@link PreloaderStatus}
4464
+ /** {zh}
4465
+ * @hidden
4466
+ * @brief 获取当前预加载实例状态。
4467
+ * @returns 预加载实例状态,详见 {@link PreloaderStatus}
4205
4468
  */
4206
4469
  static get preloaderStatus(): PreloaderStatus;
4207
- /**{zh}
4470
+ /** {zh}
4208
4471
  * @brief 添加待预加载视频列表
4209
4472
  * @param list 待预加载视频列表,详情见{@link IPreloadStream[]}。
4210
4473
  */
4211
4474
  static addPreloadList(list: IPreloadStream[]): void;
4212
- /**{zh}
4475
+ /** {zh}
4213
4476
  * @brief 设置待预加载视频列表,替换当前已设置的待预加载列表
4214
4477
  * @param list 待预加载视频列表,详情见{@link IPreloadStream[]}
4215
4478
  */
@@ -4318,6 +4581,9 @@ declare class VePlayer {
4318
4581
  *
4319
4582
  * @memberof VePlayer
4320
4583
  */
4584
+ /** {en}
4585
+ * @hidden
4586
+ */
4321
4587
  renderDom(): void;
4322
4588
  /** {zh}
4323
4589
  * @hidden
@@ -4325,6 +4591,9 @@ declare class VePlayer {
4325
4591
  * @return {*}
4326
4592
  * @memberof VePlayer
4327
4593
  */
4594
+ /** {en}
4595
+ * @hidden
4596
+ */
4328
4597
  renderPoster(): void;
4329
4598
  /**
4330
4599
  * @brief 获取西瓜的definition的配置,用于在创建player或者在playNext()时传入definition,
@@ -4338,6 +4607,9 @@ declare class VePlayer {
4338
4607
  * @return {*}
4339
4608
  * @memberof VePlayer
4340
4609
  */
4610
+ /** {en}
4611
+ * @hidden
4612
+ */
4341
4613
  createPlayer(): Promise<PlayerCore>;
4342
4614
  /** {zh}
4343
4615
  * @hidden
@@ -4346,6 +4618,9 @@ declare class VePlayer {
4346
4618
  * @return {void}
4347
4619
  * @memberof VePlayer
4348
4620
  */
4621
+ /** {en}
4622
+ * @hidden
4623
+ */
4349
4624
  setPluginConfig(finalOptions: IPlayerConfig): void;
4350
4625
  /** {zh}
4351
4626
  * @hidden
@@ -4353,6 +4628,9 @@ declare class VePlayer {
4353
4628
  * @param {string} url 地址
4354
4629
  * @memberof VePlayer
4355
4630
  */
4631
+ /** {en}
4632
+ * @hidden
4633
+ */
4356
4634
  detectCodec(url: string): Promise<void>;
4357
4635
  /** {zh}
4358
4636
  * @hidden
@@ -4361,6 +4639,9 @@ declare class VePlayer {
4361
4639
  * @return {*}
4362
4640
  * @memberof VePlayer
4363
4641
  */
4642
+ /** {en}
4643
+ * @hidden
4644
+ */
4364
4645
  setDefaultConfigOptions(options: any): void;
4365
4646
  /** {zh}
4366
4647
  * @brief 获取当前播放视频数据
@@ -4368,6 +4649,9 @@ declare class VePlayer {
4368
4649
  * @return {any}
4369
4650
  * @memberof VePlayer
4370
4651
  */
4652
+ /** {en}
4653
+ * @hidden
4654
+ */
4371
4655
  getCurrentPlayerConfig(): {
4372
4656
  type?: "vod" | "live";
4373
4657
  isLive?: boolean;
@@ -4476,6 +4760,9 @@ declare class VePlayer {
4476
4760
  * @param {*} pluginName
4477
4761
  * @param {*} IsShow
4478
4762
  */
4763
+ /** {en}
4764
+ * @hidden
4765
+ */
4479
4766
  changePluginsIcon(pluginName: any, IsShow: any): void;
4480
4767
  /** {zh}
4481
4768
  * @hidden
@@ -4485,18 +4772,23 @@ declare class VePlayer {
4485
4772
  * @return {*}
4486
4773
  * @memberof VePlayer
4487
4774
  */
4775
+ /** {en}
4776
+ * @hidden
4777
+ */
4488
4778
  getSdkPlugin(name: any): any;
4489
4779
  /** {zh}
4490
4780
  * @brief 播放时更换临时播放 Token,以更换视频源。
4491
4781
  * @memberof VePlayer
4492
4782
  * @param config 临时播放 Token 配置。
4493
4783
  * @param isNewVideo 是否为新视频。为 `false` 时,更换后,会从更换前的时间点继续播放。
4784
+ * @notes 此接口不支持切换火山引擎私有加密 Token。
4494
4785
  */
4495
4786
  switchAuthToken(config: IPlayAuthTokenConfig, isNewVideo?: boolean): Promise<void>;
4496
4787
  /** {zh}
4497
4788
  * @brief 更新临时播放 Token。
4498
4789
  * @memberof VePlayer
4499
- * @notes 播放前临时播放 Token 过期(收到 `play_auth_token_expired` 事件或者 `onTokenExpired` 回调触发)时,调用此方法更新临时播放 Token。
4790
+ * @notes - 播放前临时播放 Token 过期(收到 `play_auth_token_expired` 事件或者 `onTokenExpired` 回调触发)时,调用此方法更新临时播放 Token。
4791
+ * - 此接口不支持切换火山引擎私有加密 Token。
4500
4792
  * @param config 临时播放 Token 配置。
4501
4793
  */
4502
4794
  updateAuthToken(config: IPlayAuthTokenConfig): Promise<void>;
@@ -4518,9 +4810,7 @@ declare class VePlayer {
4518
4810
  * @notes 更换后,会从更换前的时间点继续播放。
4519
4811
  * @param url 视频播放地址。
4520
4812
  */
4521
- switchURL(url: Url, options?: {
4522
- seamless?: boolean;
4523
- }): Promise<void>;
4813
+ switchURL(url: Url): Promise<void>;
4524
4814
  /** {zh}
4525
4815
  * @memberof VePlayer
4526
4816
  * @brief 针对不同格式的视频,重建播放器内核播放下一个视频。
@@ -4528,12 +4818,16 @@ declare class VePlayer {
4528
4818
  * @param config 播放器配置。
4529
4819
  * @param isNewVideo 是否为新视频,默认为 `true`。为 `false` 时表示是同一个视频更换 token。更换后,会从更换前的时间点继续播放。
4530
4820
  */
4821
+ /** {en}
4822
+ * @hidden
4823
+ */
4531
4824
  next(config: IPlayerConfig, isNewVideo?: boolean): Promise<void>;
4532
4825
  /** {zh}
4533
4826
  * @brief 播放下一视频。
4534
4827
  * @return{Promise<any>}
4535
4828
  * @memberof VePlayer
4536
- * @notes 成功更换视频源后,默认是暂停状态,如果设置了自动播放,则会自动播放。
4829
+ * @notes - 成功更换视频源后,默认是暂停状态。如果设置了自动播放,则会自动播放。
4830
+ * - 此接口不支持切换火山引擎私有加密视频。
4537
4831
  * @param config 播放器实例化配置。
4538
4832
  * @param isNewVideo 是否为新视频。为 `false` 时,更换后,会从更换前的时间点继续播放。
4539
4833
  */
@@ -4552,6 +4846,9 @@ declare class VePlayer {
4552
4846
  * @return {*}
4553
4847
  * @memberof VePlayer
4554
4848
  */
4849
+ /** {en}
4850
+ * @hidden
4851
+ */
4555
4852
  getPlayerInstance(): PlayerCore;
4556
4853
  /** {zh}
4557
4854
  * @hidden
@@ -4559,6 +4856,9 @@ declare class VePlayer {
4559
4856
  * @return {*}
4560
4857
  * @memberof VePlayer
4561
4858
  */
4859
+ /** {en}
4860
+ * @hidden
4861
+ */
4562
4862
  getSoftDecodingOption(isOpenSoftDecoding: boolean, url: string, type: string): Promise<{
4563
4863
  mediaType?: string;
4564
4864
  innerDegrade?: number;
@@ -4571,6 +4871,9 @@ declare class VePlayer {
4571
4871
  * @brief 获取h265软解播放时的播放列表
4572
4872
  * @memberof VePlayer
4573
4873
  */
4874
+ /** {en}
4875
+ * @hidden
4876
+ */
4574
4877
  setH265SoftPlayList(): void;
4575
4878
  /** {zh}
4576
4879
  * @brief 切换清晰度