Module Events
1. Player Info Change Event
The player module stores the player's status information. Listen for player status changes through this event.
Event: PlayerEvents.PlayerInfoChange
Callback Parameters: Object object, detailed type description as follows
| Property | Description | Type |
|---|---|---|
playerInfo |
Player information | PlayerStoreInfo |
Example:
watchCore.player.eventEmitter.on(PlayerEvents.PlayerInfoChange, (data) => {
const playerInfo = data.playerInfo;
console.log('播放状态', playerInfo.playStatus);
});
2. Player Warm-up Info Update
The warm-up information initialization has a certain delay. Developers can listen for the completion of warm-up information initialization and obtain the warm-up information through this event.
Event: PlayerEvents.PlayerWarmUpSettingChange
Callback Parameters: Object object, detailed type description as follows
| Property | Description | Type |
|---|---|---|
warmUpSetting |
Warm-up information | PlayerWarmUpSetting |
Example:
watchCore.player.eventEmitter.on(PlayerEvents.PlayerWarmUpSettingChange, () => {
const setting = watchCore.player.getPlayerWarmUpSetting();
console.log('暖场类型', setting.warmUpType);
console.log('暖场图片地址', setting.warmUpImg);
console.log('暖场视频地址', setting.warmUpVideo);
});
3. Player Initialization Complete
When creating a player by calling the setupPlayer method of the player module, listen for the player initialization completion event via the PlayerInited event. After this event is triggered, the player's API can be called.
Event: PlayerEvents.PlayerInited
Example:
// 创建播放器
watchCore.player.setupPlayer({
container: 'NodeElement',
});
watchCore.player.eventEmitter.on(PlayerEvents.PlayerInited, () => {
console.log('播放器初始化完成');
const playerInfo = watchCore.player.getPlayerInfo();
console.log(playerInfo.playerInited); // true
});
4. Player Play Event
The play event is triggered after the user clicks play or plays via the API. Developers can also synchronize the playback status through the PlayerEvents.PlayerInfoChange event.
Event: PlayerEvents.PlayerPlaying
Example:
watchCore.player.eventEmitter.on(PlayerEvents.PlayerPlaying, () => {
console.log('播放了');
});
5. Player Pause Event
The pause event is triggered after the user clicks pause or pauses via the API. Developers can also synchronize the playback status through the PlayerEvents.PlayerInfoChange event.
Event: PlayerEvents.PlayerPause
Example:
watchCore.player.eventEmitter.on(PlayerEvents.PlayerPause, () => {
console.log('暂停了');
});
6. Volume Change
This event is triggered when the volume changes.
Event: PlayerEvents.VolumeChange
Callback Parameters: Object object, detailed type description as follows
| Property | Description | Type |
|---|---|---|
currentVolume |
Current volume | number |
Example:
watchCore.player.eventEmitter.on(PlayerEvents.VolumeChange, () => {
const currentVolume = watchCore.player.getCurrentVolume();
console.log('当前音量', currentVolume);
});
7. Line Switch
This event is triggered when switching lines.
Event: PlayerEvents.LineChange
Callback Parameters: Object object, detailed type description as follows
| Property | Description | Type |
|---|---|---|
currentLine |
Current line | number |
Example:
watchCore.player.eventEmitter.on(PlayerEvents.LineChange, () => {
const currentLine = watchCore.player.getCurrentLine();
console.log('当前线路', currentLine);
});
8. Quality Level Switch
This event is triggered when switching quality levels.
Event: PlayerEvents.QualityLevelChange
Callback Parameters: Object object, detailed type description as follows
| Property | Description | Type |
|---|---|---|
currentQualityLevel |
Current quality level | number |
Example:
watchCore.player.eventEmitter.on(PlayerEvents.QualityLevelChange, () => {
const currentLevel = watchCore.player.getCurrentQualityLevel();
console.log('当前清晰度', currentLevel);
});
9. Playback Rate Change
This event is triggered when switching playback speed.
Event: PlayerEvents.RateChange
Callback Parameters: Object object, detailed type description as follows
| Property | Description | Type |
|---|---|---|
currentRate |
Current playback speed | number |
Example:
watchCore.player.eventEmitter.on(PlayerEvents.RateChange, () => {
const currentRate = watchCore.player.getCurrentRate();
console.log('当前倍速', currentRate);
});
10. Player Danmaku Change
This event is triggered when the player's danmaku display status changes.
Event: PlayerEvents.BarrageStatusChange
Callback Parameters: Object object, detailed type description as follows
| Property | Description | Type |
|---|---|---|
barrageShow |
Whether to show danmaku | boolean |
Example:
watchCore.player.eventEmitter.on(PlayerEvents.BarrageStatusChange, () => {
const playerInfo = watchCore.player.getPlayerInfo();
console.log('弹幕显示状态', playerInfo.barrageShow);
});
11. Trigger Danmaku Settings Popup
Danmaku settings on mobile need to be implemented by the page. This event is used to listen for the viewer clicking the player's danmaku settings button. After this event is triggered, display the danmaku settings overlay.
Event: PlayerEvents.BarrageSettingClick
Example:
watchCore.player.eventEmitter.on(PlayerEvents.BarrageSettingClick, () => {
console.log('显示弹幕设置面板');
});
12. Playback Time Change
Event: PlayerEvents.TimeUpdate
Callback Parameters: Object object, detailed type description as follows
| Property | Description | Type |
|---|---|---|
currentTime |
Current playback time, unit: seconds | number |
durationTime |
Total playback duration, unit: seconds | number |
13. Playback End
Event: PlayerEvents.PlaybackOver
14. Playback Resume Event
Event: PlayerEvents.HistoryPlay
Callback Parameters: Object object, detailed type description as follows
| Property | Description | Type |
|---|---|---|
historyTime |
Resume time, unit: seconds | number |
15. Low Latency Playback Error
Listen for low latency playback errors via the LowLatencyError event. Switch to normal latency mode after an error occurs.
Event: PlayerEvents.LowLatencyError
Example:
watchCore.player.eventEmitter.on(PlayerEvents.LowLatencyError, () => {
toast.error('播放无延迟异常,已帮您切换到正常延迟模式');
// TODO 重建播放器并使用正常延迟
});
16. Toggle Player Fullscreen
Event: PlayerEvents.ToggleFullScreen
Callback Parameters: Object object, detailed type description as follows
| Property | Description | Type |
|---|---|---|
isPlayerFullscreen |
Whether the player is fullscreen | boolean |
17. Video Resolution Change
Event: PlayerEvents.PlayerResolutionChange
Callback Parameters: Object object, detailed type description as follows
| Property | Description | Type |
|---|---|---|
width |
Video width | number |
height |
Video height | number |
