保利威文档中心

幫助中心

模組事件

更新時間:2024-10-10 17:27:10

一、播放器資訊修改事件

播放器模組會儲存播放器的狀態資訊,透過該事件監聽播放器狀態改變。

Event 事件: PlayerEvents.PlayerInfoChange

回調參數: Object 物件,詳細類型說明如下

屬性名 說明 類型
playerInfo 播放器資訊 PlayerStoreInfo

範例:

watchCore.player.eventEmitter.on(PlayerEvents.PlayerInfoChange, (data) => {
  const playerInfo = data.playerInfo;
  console.log('播放状态', playerInfo.playStatus);
});

二、播放器暖場資訊更新

暖場資訊初始化有一定的延遲,開發者可透過該事件監聽暖場資訊初始化完成並取得暖場資訊。

Event 事件: PlayerEvents.PlayerWarmUpSettingChange

回調參數: Object 物件,詳細類型說明如下

屬性名 說明 類型
warmUpSetting 暖場資訊 PlayerWarmUpSetting

範例:

watchCore.player.eventEmitter.on(PlayerEvents.PlayerWarmUpSettingChange, () => {
  const setting = watchCore.player.getPlayerWarmUpSetting();
  console.log('暖场类型', setting.warmUpType);
  console.log('暖场图片地址', setting.warmUpImg);
  console.log('暖场视频地址', setting.warmUpVideo);
});

三、播放器初始化完畢

呼叫播放器模組的 setupPlayer 方法建立播放器時,透過 PlayerInited 事件監聽播放器初始化完成事件,觸發該事件後即可呼叫播放器的 Api。

Event 事件: PlayerEvents.PlayerInited

範例:

// 创建播放器
watchCore.player.setupPlayer({
  container: 'NodeElement',
});

watchCore.player.eventEmitter.on(PlayerEvents.PlayerInited, () => {
  console.log('播放器初始化完成');
  const playerInfo = watchCore.player.getPlayerInfo();
  console.log(playerInfo.playerInited); // true
});

四、播放器播放事件

使用者點擊播放或透過 Api 播放後會回調播放事件,開發者也可透過 PlayerEvents.PlayerInfoChange 事件同步播放狀態。

Event 事件: PlayerEvents.PlayerPlaying

範例:

watchCore.player.eventEmitter.on(PlayerEvents.PlayerPlaying, () => {
  console.log('播放了');
});

五、播放器暫停事件

使用者點擊暫停或透過 Api 暫停後會回調暫停事件,開發者也可透過 PlayerEvents.PlayerInfoChange 事件同步播放狀態。

Event 事件: PlayerEvents.PlayerPause

範例:

watchCore.player.eventEmitter.on(PlayerEvents.PlayerPause, () => {
  console.log('暂停了');
});

六、音量改變

音量改變時觸發該事件。

Event 事件: PlayerEvents.VolumeChange

回調參數: Object 物件,詳細類型說明如下

屬性名 說明 類型
currentVolume 目前音量 number

範例:

watchCore.player.eventEmitter.on(PlayerEvents.VolumeChange, () => {
  const currentVolume = watchCore.player.getCurrentVolume();
  console.log('当前音量', currentVolume);
});

七、線路切換

線路切換時觸發該事件。

Event 事件: PlayerEvents.LineChange

回調參數: Object 物件,詳細類型說明如下

屬性名 說明 類型
currentLine 目前線路 number

範例:

watchCore.player.eventEmitter.on(PlayerEvents.LineChange, () => {
  const currentLine = watchCore.player.getCurrentLine();
  console.log('当前线路', currentLine);
});

八、清晰度級別切換

清晰度切換時觸發該事件。

Event 事件: PlayerEvents.QualityLevelChange

回調參數: Object 物件,詳細類型說明如下

屬性名 說明 類型
currentQualityLevel 目前清晰度級別 number

範例:

watchCore.player.eventEmitter.on(PlayerEvents.QualityLevelChange, () => {
  const currentLevel = watchCore.player.getCurrentQualityLevel();
  console.log('当前清晰度', currentLevel);
});

九、倍速修改

倍速切換時觸發該事件。

Event 事件: PlayerEvents.RateChange

回調參數: Object 物件,詳細類型說明如下

屬性名 說明 類型
currentRate 目前播放倍速 number

範例:

watchCore.player.eventEmitter.on(PlayerEvents.RateChange, () => {
  const currentRate = watchCore.player.getCurrentRate();
  console.log('当前倍速', currentRate);
});

十、播放器彈幕改變

播放器彈幕顯示狀態切換時觸發該事件。

Event 事件: PlayerEvents.BarrageStatusChange

回調參數: Object 物件,詳細類型說明如下

屬性名 說明 類型
barrageShow 是否顯示彈幕 boolean

範例:

watchCore.player.eventEmitter.on(PlayerEvents.BarrageStatusChange, () => {
  const playerInfo = watchCore.player.getPlayerInfo();
  console.log('弹幕显示状态', playerInfo.barrageShow);
});

十一、喚起彈幕設定彈窗

行動裝置下的彈幕設定需要由頁面實作,該事件用於監聽觀眾點擊播放器的彈幕設定按鈕,觸發該事件後顯示彈幕設定遮罩層。

Event 事件: PlayerEvents.BarrageSettingClick

範例:

watchCore.player.eventEmitter.on(PlayerEvents.BarrageSettingClick, () => {
  console.log('显示弹幕设置面板');
});

十二、播放時間改變

Event 事件: PlayerEvents.TimeUpdate

回調參數: Object 物件,詳細類型說明如下

屬性名 說明 類型
currentTime 目前播放時間,單位:秒 number
durationTime 播放總時長,單位:秒 number

十三、回放播放結束

Event 事件: PlayerEvents.PlaybackOver

十四、回放續播事件

Event 事件: PlayerEvents.HistoryPlay

回調參數: Object 物件,詳細類型說明如下

屬性名 說明 類型
historyTime 續播的時間,單位:秒 number

十五、無延遲播放異常

透過 LowLatencyError 事件監聽無延遲播放異常,異常後切換到正常延遲模式。

Event 事件: PlayerEvents.LowLatencyError

範例:

watchCore.player.eventEmitter.on(PlayerEvents.LowLatencyError, () => {
  toast.error('播放无延迟异常,已帮您切换到正常延迟模式');
  // TODO 重建播放器并使用正常延迟
});

十六、切換播放器全螢幕

Event 事件: PlayerEvents.ToggleFullScreen

回調參數: Object 物件,詳細類型說明如下

屬性名 說明 類型
isPlayerFullscreen 是否播放器全螢幕 boolean

十七、影片解析度變化

Event 事件: PlayerEvents.PlayerResolutionChange

回調參數: Object 物件,詳細類型說明如下

屬性名 說明 類型
width 影片寬 number
height 影片高 number
联系客服,在线咨询