4-视频播放
更新時間:2025-08-29 11:30:56
1.播放器
播放器管理器的對外核心類別為PLVPlayerManager,可以透過 SDK 物件的playerManager屬性對其進行存取,playerManager內部的mainMediaPlayer為影片播放的播放器。
2.設定渲染畫面
播放器透過surface類型的 XComponent 元件進行渲染,libraryname 為plvplayer_xcomponent,您可以透過startMainMediaPlayerWithComponent方法將渲染畫面設定給播放器:
XComponent({
id: `plvlw_video_xcomponent`,
type: "surface",
libraryname: "plvplayer_xcomponent"
}) {
}
.onLoad((component) => {
// 设置渲染画面并开始播放
this.sdk.playerManager.startMainMediaPlayerWithComponent(component!)
})
3.播放參數配置
透過呼叫mainMediaPlayer的setPlayerOption()方法設定播放參數
/**
* 设置播放参数
*/
setPlayerOption(options: PLVMediaPlayerOption[])
PLVMediaPlayerOptionEnum類別中提供了一些常用的播放參數,您可以直接引用其中的常數,例如:
// 开启精准seek的参数
PLVMediaPlayerOptionEnum.ENABLE_ACCURATE_SEEK.value("1")
對於重複設定的參數,新設定的參數會覆蓋舊的參數;如果想要清空參數,可以在 value 欄位中傳入空字串
4.播放控制
播放器mainMediaPlayer提供了一系列的播放控制介面,例如:
/**
* 开始播放
*/
start(): void;
/**
* 暂停播放
*/
pause(): void;`
/**
* 跳转播放进度到指定位置
* @param position 指定位置,单位:毫秒
*/
seek(position: number): void;
更多控制操作可以參考IPLVMediaPlayer以及它的父介面IPLVMediaPlayerControl
5.回呼
播放器的狀態、事件回呼可以透過回呼註冊中心進行監聽,包括:
- IPLVMediaPlayerBusinessListenerRegistry:播放器業務回呼註冊中心
- IPLVMediaPlayerEventListenerRegistry:播放器事件回呼註冊中心
- IPLVMediaPlayerStateListenerRegistry:播放器狀態回呼註冊中心
以監聽播放/暫停狀態為例,可以透過以下方式進行監聽:
const playingState: MutableState<PLVMediaPlayerPlayingState> = player.getStateListenerRegistry().playingState;
const observer = playingState.observe((state: PLVMediaPlayerPlayingState) => {
// 处理逻辑
const isPlaying = state === PLVMediaPlayerPlayingState.PLAYING;
});
