@volcengine/veplayer 1.8.2-rc.0 → 1.8.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/index.d.ts +200 -59
  2. package/index.min.js +2 -2
  3. package/package.json +1 -1
package/index.d.ts CHANGED
@@ -6,14 +6,46 @@ import EventEmitter from 'eventemitter3';
6
6
  import Player from 'xgplayer';
7
7
  import { BasePlugin, I18N, IXGI18nText, Plugin } from 'xgplayer';
8
8
 
9
- declare enum POSITIONS {
9
+ /**
10
+ * @brief 插件按钮位置
11
+ */
12
+ export declare const enum POSITIONS {
13
+ /**
14
+ * @brief 播放器根节点
15
+ */
10
16
  ROOT = "root",
17
+ /**
18
+ * @brief 播放器根节点左侧
19
+ */
11
20
  ROOT_LEFT = "rootLeft",
21
+ /**
22
+ * @brief 播放器根节点右侧
23
+ */
12
24
  ROOT_RIGHT = "rootRight",
25
+ /**
26
+ * @brief 播放器根节点顶部
27
+ */
13
28
  ROOT_TOP = "rootTop",
29
+ /**
30
+ * @brief 播控栏左侧
31
+ */
14
32
  CONTROLS_LEFT = "controlsLeft",
33
+ /**
34
+ * @brief 播控栏左侧
35
+ */
36
+ CONTROLS_RIGTH = "controlsRight",
37
+ /**
38
+ * @brief 播控栏右侧
39
+ */
15
40
  CONTROLS_RIGHT = "controlsRight",
16
- CONTROLS_CENTER = "controlsCenter"
41
+ /**
42
+ * @brief 播控栏中间
43
+ */
44
+ CONTROLS_CENTER = "controlsCenter",
45
+ /** @hidden
46
+ * @brief 播控栏左侧
47
+ */
48
+ CONTROLS = "controls"
17
49
  }
18
50
  /**
19
51
  * @brief 发错错误时的UI表现配置
@@ -98,7 +130,7 @@ export interface TipsTextConfig {
98
130
  export interface IRtmConfig {
99
131
  /**
100
132
  * sdp接口请求超时等待时间, 单位 ms
101
- * 默认值: 5000
133
+ * @default 5000
102
134
  *
103
135
  * @type {number}
104
136
  * @memberof IRtmConfig
@@ -106,7 +138,7 @@ export interface IRtmConfig {
106
138
  loadTimeout?: number;
107
139
  /**
108
140
  * sdp接口请求失败时重试间隔时间, 单位 ms
109
- * 默认值:1000
141
+ * @default 1000
110
142
  *
111
143
  * @type {number}
112
144
  * @memberof IRtmConfig
@@ -114,7 +146,7 @@ export interface IRtmConfig {
114
146
  retryDelay?: number;
115
147
  /**
116
148
  * sdp接口请求失败时的重试次数
117
- * 默认值:0
149
+ * @default 0
118
150
  *
119
151
  * @type {number}
120
152
  * @memberof IRtmConfig
@@ -122,7 +154,7 @@ export interface IRtmConfig {
122
154
  retryCount?: number;
123
155
  /**
124
156
  * rtc播放video不会触发waiting,通过timeupdate事件模拟,两次timeupdate事件触发间隔时间大于此值时模拟waiting事件触发 , 单位 ms
125
- * 默认值:300
157
+ * @default 300
126
158
  *
127
159
  * @type {number}
128
160
  * @memberof IRtmConfig
@@ -130,7 +162,7 @@ export interface IRtmConfig {
130
162
  stallInterval?: number;
131
163
  /**
132
164
  * rtc起播建联失败时降级到flv或hls播放, 指定时开启降级,不指定建联失败对外抛error
133
- * 默认值:''
165
+ * @default ''
134
166
  *
135
167
  * @type {string}
136
168
  * @memberof IRtmConfig
@@ -138,7 +170,7 @@ export interface IRtmConfig {
138
170
  backupURL?: string;
139
171
  /**
140
172
  * 降级到flv或者hls时需要的播放插件, 配合 backupURL使用
141
- * 默认值:null
173
+ * @default null
142
174
  *
143
175
  * @type {('hls' | 'flv')}
144
176
  * @memberof IRtmConfig
@@ -206,6 +238,10 @@ export interface IMaskConfig {
206
238
  maskOffset?: number;
207
239
  interval?: number;
208
240
  }
241
+ /**
242
+ * @hidden
243
+ * @brief 语言类型
244
+ */
209
245
  export interface Lang {
210
246
  zh: string;
211
247
  en: string;
@@ -254,10 +290,10 @@ export interface DanmuItem {
254
290
  */
255
291
  duration?: number;
256
292
  /**
257
- * 弹幕样式
293
+ * @brief 弹幕样式
258
294
  * @example
259
295
  * ``` javascript
260
- * style : {
296
+ * {
261
297
  * color: '#ff9500',
262
298
  * fontSize: '20px',
263
299
  * padding: '2px 11px'
@@ -1071,24 +1107,68 @@ declare class PlayList {
1071
1107
  setStyle(style: any): void;
1072
1108
  destroy(): void;
1073
1109
  }
1110
+ /**
1111
+ * @brief 播放列表展示面板触发动作类型
1112
+ *
1113
+ */
1074
1114
  export declare const enum TOGGLE_MODES {
1115
+ /**
1116
+ * @brief 鼠标点击
1117
+ */
1075
1118
  CLICK = "click",
1119
+ /**
1120
+ * @brief 鼠标悬浮
1121
+ */
1076
1122
  HOVER = "hover"
1077
1123
  }
1078
1124
  /**
1079
1125
  * @list Options
1080
1126
  * @brief 播放列表项配置,支持 DirectUrl 和 Vid + playAuthToken 两种播放模式。
1127
+ * @notes 列表数据由外部提供,播放器内部不直接获取播放列表数据。
1081
1128
  * @kind property
1082
1129
  */
1083
1130
  export interface IPlayListItem {
1131
+ /**
1132
+ * @brief 视频地址
1133
+ * @notice `playAuthToken` 为空时,此参数必传。
1134
+ * @default -
1135
+ */
1084
1136
  url?: string;
1137
+ /**
1138
+ * @brief 播放临时安全凭证,由业务的 AppServer 签发。
1139
+ * @notice `url` 为空时,此参数必传。
1140
+ * @default -
1141
+ */
1085
1142
  playAuthToken?: string;
1143
+ /**
1144
+ * @brief 视频的唯一 ID。不传则取视频所在列表数组的序号。
1145
+ * @default -
1146
+ */
1086
1147
  vid: string;
1148
+ /**
1149
+ * @brief 封面图地址。
1150
+ * @default -
1151
+ */
1087
1152
  poster?: string;
1153
+ /**
1154
+ * @brief 视频标题。
1155
+ * @default -
1156
+ */
1088
1157
  title?: string;
1158
+ /**
1159
+ * @brief 视频时长,单位s
1160
+ * @default -
1161
+ */
1162
+ duration?: number;
1089
1163
  }
1090
1164
  declare enum EPlayMode {
1165
+ /**
1166
+ * @brief 顺序播放
1167
+ */
1091
1168
  ORDER = "order",
1169
+ /**
1170
+ * @brief 列表循环
1171
+ */
1092
1172
  LOOP = "loop"
1093
1173
  }
1094
1174
  /**
@@ -1099,6 +1179,7 @@ declare enum EPlayMode {
1099
1179
  export interface IPlayListConfig {
1100
1180
  /**
1101
1181
  * @brief 图标位置
1182
+ * @notice 此参数同时影响“打开/关闭播放列表”和“播放下一个”两个按钮的位置。
1102
1183
  * @default controlsLeft 控制栏左侧
1103
1184
  */
1104
1185
  position?: string;
@@ -1114,6 +1195,8 @@ export interface IPlayListConfig {
1114
1195
  list: IPlayListItem[];
1115
1196
  /**
1116
1197
  * @brief 循环模式
1198
+ * - order:不循环播放,即列表中最后一个视频播放完成后就停止播放。
1199
+ * - loop:列表循环,即列表中最后一个视频播放完成后将自动开始重新播放列表中的第一个视频。
1117
1200
  * @default order
1118
1201
  */
1119
1202
  mode?: EPlayMode;
@@ -1261,7 +1344,17 @@ declare enum CodecType {
1261
1344
  declare enum RTMCodec {
1262
1345
  H264 = "h264"
1263
1346
  }
1347
+ /**
1348
+ * @brief region 类型
1349
+ */
1264
1350
  export declare type TRegionType = "cn" | "mya" | "va" | "sg";
1351
+ /**
1352
+ * @brief 音乐循环模式
1353
+ * - order 顺序播放
1354
+ * - sloop 单曲循环
1355
+ * - loop 列表循环
1356
+ * - random 列表随机
1357
+ */
1265
1358
  export declare type PlayModeType = "order" | "sloop" | "loop" | "random";
1266
1359
  export interface IMusicListItem {
1267
1360
  /**
@@ -1438,13 +1531,14 @@ export interface Stream extends Partial<IPlayInfoList> {
1438
1531
  lineId?: number | string;
1439
1532
  /**
1440
1533
  * 多语言词典中对应的key, 比如 lineTextKey: LINE_ONE
1441
- *
1534
+ * @example
1535
+ * ```
1442
1536
  * languages: {
1443
1537
  * zh: {
1444
1538
  * LINE_ONE: '线路一'
1445
1539
  * }
1446
1540
  * }
1447
- *
1541
+ * ```
1448
1542
  * 则线路切换选项中显示“线路一”
1449
1543
  *
1450
1544
  * @type {string}
@@ -1511,6 +1605,11 @@ export interface IPlayerConfig extends IPlayerOptions {
1511
1605
  * @default -
1512
1606
  */
1513
1607
  url?: string;
1608
+ /**
1609
+ * @brief 视频点播媒资中的视频vid,推荐填写,以方便跟踪播放质量
1610
+ * @default -
1611
+ */
1612
+ vid?: string;
1514
1613
  /** {zh}
1515
1614
  * @brief vid播放配置项
1516
1615
  * @notes 需要业务方服务端通过vid生成临时playAuthToken
@@ -1750,7 +1849,9 @@ export interface IPlayerConfig extends IPlayerOptions {
1750
1849
  * - `landscape`:横屏
1751
1850
  * - `portrait`:竖屏
1752
1851
  * - `landscape|portrait`:跟随手机自动旋转
1753
- * @default mobile:`landscape|portrait`,pc:-
1852
+ * @default
1853
+ * - mobile:`landscape|portrait`
1854
+ * - pc:-
1754
1855
  */
1755
1856
  "x5-video-orientation"?: "landscape" | "portrait" | "landscape|portrait";
1756
1857
  /** {zh}
@@ -1972,10 +2073,8 @@ export interface IPlayerConfig extends IPlayerOptions {
1972
2073
  playListPlugin?: IPlayListConfig;
1973
2074
  }
1974
2075
  /**
1975
- * 初始配置
1976
- *
1977
- * @export
1978
- * @interface IDefaultConfig
2076
+ * @brief初始配置
2077
+ * @hidden
1979
2078
  */
1980
2079
  export interface IDefaultConfig {
1981
2080
  /**
@@ -2223,36 +2322,66 @@ export interface IAutoBitrateOptsConfig {
2223
2322
  */
2224
2323
  export interface IMemoryPlayConfig {
2225
2324
  /**
2226
- * 存储标识id
2325
+ * @brief 存储标识id
2326
+ * @default options.vid || options.url
2227
2327
  *
2228
2328
  * @type {number | string}
2229
2329
  * @memberof IMemoryPlayConfig
2230
2330
  */
2231
2331
  memoryId: number | string;
2232
2332
  /**
2233
- * 设置时间函数
2333
+ * @brief 设置时间函数
2334
+ * @default -
2234
2335
  *
2235
2336
  * @type {(id: number | string, time: number) => unknown}
2236
2337
  * @memberof IMemoryPlayConfig
2237
2338
  */
2238
2339
  saveTime: (id: number | string, time: number) => unknown;
2239
2340
  /**
2240
- * 获取最后一次播放时间函数
2241
- *
2242
- * @type {(id: number | string) => number | Promise<number>}
2243
- * @memberof IMemoryPlayConfig
2341
+ * @brief 获取最后一次播放时间函数
2342
+ * @default -
2244
2343
  */
2245
2344
  getTime: (id: number | string) => number | Promise<number>;
2246
2345
  }
2346
+ /**
2347
+ * @brief 插件按钮位置
2348
+ */
2247
2349
  export declare const enum POSITIONS {
2350
+ /**
2351
+ * @brief 播放器根节点
2352
+ */
2248
2353
  ROOT = "root",
2354
+ /**
2355
+ * @brief 播放器根节点左侧
2356
+ */
2249
2357
  ROOT_LEFT = "rootLeft",
2358
+ /**
2359
+ * @brief 播放器根节点右侧
2360
+ */
2250
2361
  ROOT_RIGHT = "rootRight",
2362
+ /**
2363
+ * @brief 播放器根节点顶部
2364
+ */
2251
2365
  ROOT_TOP = "rootTop",
2366
+ /**
2367
+ * @brief 播控栏左侧
2368
+ */
2252
2369
  CONTROLS_LEFT = "controlsLeft",
2370
+ /**
2371
+ * @brief 播控栏左侧
2372
+ */
2253
2373
  CONTROLS_RIGTH = "controlsRight",
2374
+ /**
2375
+ * @brief 播控栏右侧
2376
+ */
2254
2377
  CONTROLS_RIGHT = "controlsRight",
2378
+ /**
2379
+ * @brief 播控栏中间
2380
+ */
2255
2381
  CONTROLS_CENTER = "controlsCenter",
2382
+ /** @hidden
2383
+ * @brief 播控栏左侧
2384
+ */
2256
2385
  CONTROLS = "controls"
2257
2386
  }
2258
2387
  export interface IIconPluginConfig {
@@ -2418,6 +2547,10 @@ export interface IPoster {
2418
2547
  */
2419
2548
  fillMode?: "fixWidth" | "fixHeight" | "cover" | "contain";
2420
2549
  }
2550
+ /**
2551
+ * @brief api map
2552
+ * @hidden
2553
+ */
2421
2554
  export interface ApiMapConfig {
2422
2555
  playDomain: string;
2423
2556
  backupPlayDomain?: string;
@@ -2425,6 +2558,10 @@ export interface ApiMapConfig {
2425
2558
  declare enum StrategyNames {
2426
2559
  H265 = "h265"
2427
2560
  }
2561
+ /**
2562
+ * @hidden
2563
+ * @brief 策略配置项
2564
+ */
2428
2565
  export declare type StrategyConfigOptions = {
2429
2566
  [StrategyNames.H265]?: boolean | {
2430
2567
  Strategy?: any;
@@ -2551,6 +2688,10 @@ declare class PlayerData {
2551
2688
  setVodTeaId(): void;
2552
2689
  }
2553
2690
  declare function isMSESupport(mime?: string): boolean;
2691
+ /**
2692
+ * @hidden
2693
+ * @brief 移动端交互面板配置
2694
+ */
2554
2695
  export interface IConfig {
2555
2696
  mode?: number;
2556
2697
  isAutoChange?: boolean;
@@ -2596,6 +2737,10 @@ declare enum UmdKeys {
2596
2737
  VeStrategy = "vestrategy",
2597
2738
  VeStrategyH265 = "vestrategy_h265"
2598
2739
  }
2740
+ /**
2741
+ * @hidden
2742
+ * @breif umdmap 配置
2743
+ */
2599
2744
  export declare type UMDMap = Record<UmdKeys, {
2600
2745
  name: string;
2601
2746
  pluginName?: string;
@@ -2636,6 +2781,19 @@ declare class umdLoader {
2636
2781
  */
2637
2782
  loadPlugins(pluginName: UmdKeys, successCallback?: () => void): Promise<any>;
2638
2783
  }
2784
+ /**
2785
+ * @hidden
2786
+ */
2787
+ export declare type PlayerCore = Player & {
2788
+ sdk?: VePlayer;
2789
+ changePluginsIcon?: (name: any, isShow: any) => void;
2790
+ playerData?: PlayerData;
2791
+ playerType?: string;
2792
+ playerVersion?: string;
2793
+ panel?: MobilePlayerPanel;
2794
+ emitExpireTimestamp?: number;
2795
+ vodLogger?: VodLogger;
2796
+ };
2639
2797
  declare class VePlayer {
2640
2798
  /**
2641
2799
  * @brief 播放相关配置数据
@@ -2645,20 +2803,11 @@ declare class VePlayer {
2645
2803
  */
2646
2804
  playerData: PlayerData;
2647
2805
  /**
2648
- * @brief 播放器内核实例
2806
+ * @brief 播放器内核实例, 详情参考{@link https://www.volcengine.com/docs/4/109909#%E6%92%AD%E6%94%BE%E5%99%A8%E5%86%85%E6%A0%B8 播放内核}
2649
2807
  * @type {*}
2650
2808
  * @memberof VePlayer
2651
2809
  */
2652
- player: Player & {
2653
- sdk?: VePlayer;
2654
- changePluginsIcon?: (name: any, isShow: any) => void;
2655
- playerData?: PlayerData;
2656
- playerType?: string;
2657
- playerVersion?: string;
2658
- panel?: MobilePlayerPanel;
2659
- emitExpireTimestamp?: number;
2660
- vodLogger?: VodLogger;
2661
- };
2810
+ player: PlayerCore;
2662
2811
  /**
2663
2812
  * @hidden
2664
2813
  *
@@ -2757,11 +2906,17 @@ declare class VePlayer {
2757
2906
  * @hidden
2758
2907
  */
2759
2908
  static isMSESupported: typeof isMSESupport;
2909
+ /**
2910
+ * @hidden
2911
+ */
2760
2912
  static isRTMSupported: typeof import("@byted/xgplayer-rts").RtsPlugin.isSupported;
2761
2913
  /**
2762
2914
  * @hidden
2763
2915
  */
2764
2916
  static veStrategy: typeof VeStrategy;
2917
+ /**
2918
+ * @brief sdk版本
2919
+ */
2765
2920
  static sdkVersion: string;
2766
2921
  /**
2767
2922
  * @hidden
@@ -2772,6 +2927,10 @@ declare class VePlayer {
2772
2927
  targetProfileLevel?: string;
2773
2928
  }) => Promise<boolean>;
2774
2929
  private vodLogCommon;
2930
+ /**
2931
+ * @brief 构造函数
2932
+ * @param configs sdk配置
2933
+ */
2775
2934
  constructor(configs: IPlayerConfig);
2776
2935
  /**
2777
2936
  *
@@ -2879,16 +3038,7 @@ declare class VePlayer {
2879
3038
  * @return {*}
2880
3039
  * @memberof VePlayer
2881
3040
  */
2882
- createPlayer(): Promise<Player & {
2883
- sdk?: VePlayer;
2884
- changePluginsIcon?: (name: any, isShow: any) => void;
2885
- playerData?: PlayerData;
2886
- playerType?: string;
2887
- playerVersion?: string;
2888
- panel?: MobilePlayerPanel;
2889
- emitExpireTimestamp?: number;
2890
- vodLogger?: VodLogger;
2891
- }>;
3041
+ createPlayer(): Promise<PlayerCore>;
2892
3042
  /**
2893
3043
  * @hidden
2894
3044
  *
@@ -2913,8 +3063,8 @@ declare class VePlayer {
2913
3063
  */
2914
3064
  setDefaultConfigOptions(options: any): void;
2915
3065
  /**
2916
- * 获取当前播放视频数据
2917
- *
3066
+ * @brief 获取当前播放视频数据
3067
+ * @hidden
2918
3068
  * @return {any}
2919
3069
  * @memberof VePlayer
2920
3070
  */
@@ -3043,7 +3193,7 @@ declare class VePlayer {
3043
3193
  switchAuthToken(config: IPlayAuthTokenConfig, isNewVideo?: boolean): Promise<void>;
3044
3194
  /**
3045
3195
  * @brief 更新playAuthToken的方法,用来更新视频地址
3046
- * @param { IPlayAuthTokenConfig } config
3196
+ * @param { IPlayAuthTokenConfig } config playAuthToken配置
3047
3197
  * @memberof VePlayer
3048
3198
  */
3049
3199
  updateAuthToken(config: IPlayAuthTokenConfig): Promise<void>;
@@ -3104,16 +3254,7 @@ declare class VePlayer {
3104
3254
  * @return {*}
3105
3255
  * @memberof VePlayer
3106
3256
  */
3107
- getPlayerInstance(): Player & {
3108
- sdk?: VePlayer;
3109
- changePluginsIcon?: (name: any, isShow: any) => void;
3110
- playerData?: PlayerData;
3111
- playerType?: string;
3112
- playerVersion?: string;
3113
- panel?: MobilePlayerPanel;
3114
- emitExpireTimestamp?: number;
3115
- vodLogger?: VodLogger;
3116
- };
3257
+ getPlayerInstance(): PlayerCore;
3117
3258
  /**
3118
3259
  * @hidden
3119
3260
  *
@@ -3959,7 +4100,7 @@ export declare const Events: {
3959
4100
  */
3960
4101
  CANCEL_UNMUTE: string;
3961
4102
  /**
3962
- * 处罚刷新
4103
+ * 刷新按钮点击
3963
4104
  */
3964
4105
  REFRESH_CLICK: string;
3965
4106
  /**
@@ -4546,7 +4687,7 @@ export declare const Event: {
4546
4687
  */
4547
4688
  CANCEL_UNMUTE: string;
4548
4689
  /**
4549
- * 处罚刷新
4690
+ * 刷新按钮点击
4550
4691
  */
4551
4692
  REFRESH_CLICK: string;
4552
4693
  /**