IPlayer 播放接口
简介
ESIPlayer 是一套通用播放器接口。 ESVideoPlayer 、ESAudioPlayer 、ESAudioPlayerService 、ESPlayerManager等播放组件都基于此接口进行实现。
注意:使用快应用内置的播放器,例如 ESVideoPlayer、ESAudioPlayer、ESAudioPlayerService等播放组件,都需要集成 ESIPlayer 并进行初始化。
集成
第一步、package.json添加依赖库
@extscreen/es3-player
第二步、集成ESPlayer
在main.ts中集成
import { createESPlayer } from "@extscreen/es3-player";
const player = createESPlayer();
app.use(player);
第三步、初始化
在App.vue中或者使用之前
import { useESPlayer } from "@extscreen/es3-player";
import type { ESPlayerConfiguration, ESPlayerDisplay } from "@extscreen/es3-player";
const playerManager = useESPlayer()
const playerDisplay: ESPlayerDisplay = {
screenWidth: device.getScreenWidth(),//屏幕的宽度
screenHeight: device.getScreenHeight(),//屏幕的高度
}
const config: ESPlayerConfiguration = {
debug: true,
display: playerDisplay,
device: {
deviceType: runtime.getRuntimeDeviceType() ?? ''//设备类型
}
}
playerManager.init(config)
API
DataStructure
ESMediaSource
媒资资源
| Name | Description | Type | Default |
|---|---|---|---|
| id | 媒资资源唯一标识符 | number / string | — |
| uri | 媒资资源地址 | any | — |
| definition | 媒资资源清晰度 | ESPlayerDefinition | — |
| interceptors | 媒资资源拦截器 | Array<ESIPlayerInterceptor> | — |
| metadata | 媒资资源信息 | ESMediaMetadata | — |
ESMediaSourceList
媒资资源列表
| Name | Description | Type | Default |
|---|---|---|---|
| index | 默认播放媒资资源的索引 | number | — |
| list | 媒资资源列表 | Array<ESMediaSource> | — |
| interceptors | 媒资资源列表拦截器 | Array<ESIPlayerInterceptor> | — |
| metadata | 媒资资源信息 | ESMediaMetadata | — |
| position | 媒资资源播放位置 | ESPlayerPosition | — |
Attributes
| Name | Description | Type | Default |
|---|---|---|---|
| playerType | 播放器类型 | number | -1 |
| playMediaSourceAuto | 是否自动播放媒资数据源 | boolean | true |
| backgroundColor | 播放器背景颜色 | string | transparent |
| playerWidth | 播放器宽度 | number | 1920 |
| playerHeight | 播放器高度 | number | 1080 |
| playerZIndex | 播放器z-index | number | 1 |
Events
| Name | Description | Type |
|---|---|---|
| onPlayerInitialized | 播放器初始化事件 | Function |
| onPlayerPlayMediaSourceList | 播放媒资资源列表事件 | Function |
| onPlayerPlayMediaSource | 播放媒资资源事件 | Function |
| onPlayerInterceptSuccess | 播放拦截器成功事件 | Function |
| onPlayerInterceptError | 播放拦截器错误事件 | Function |
| onPlayerSizeChanged | 播放器尺寸变化事件 | Function |
| onPlayerPreparing | 播放器准备中事件 | Function |
| onPlayerPrepared | 播放器准备好事件 | Function |
| onPlayerBufferStart | 播放器开始缓冲事件 | Function |
| onPlayerBufferEnd | 播放器缓冲结束事件 | Function |
| onPlayerPlaying | 播放器开始播放事件 | Function |
| onPlayerProgressChanged | 播放进度事件 | Function |
| onPlayerDurationChanged | 播放总长度事件 | Function |
| onPlayerSeekStart | 播放器开始快进事件 | Function |
| onPlayerSeekCompleted | 播放器快进结束事件 | Function |
| onPlayerPaused | 播放器暂停播放事件 | Function |
| onPlayerResumed | 播放器恢复播放事件 | Function |
| onPlayerStopped | 播放器停止播放事件 | Function |
| onPlayerCompleted | 播放器播放完毕事件 | Function |
| onPlayerError | 播放错误事件 | Function |
| onPlayerInfo | 播放信息事件 | Function |
| onPlayerNoMediaSourceCanPlay | 无媒资资源可播放事件 | Function |
| onPlayerVolumeChanged | 播放器音量变化事件 | Function |
| onPlayerLeftVolumeChanged | 播放器左声道音量变化事件 | Function |
| onPlayerRightVolumeChanged | 播放器右声道音量变化事件 | Function |
| onPlayerDefinitionListChanged | 播放器媒资清晰度列表事件 | Function |
| onPlayerDefinitionChanged | 播放器媒资清晰度事件 | Function |
| onPlayerPlayRateListChanged | 播放速率列表事件 | Function |
| onPlayerPlayRateChanged | 播放速率事件 | Function |
| onPlayerDecodeListChanged | 播放器解码方式列表事件 | Function |
| onPlayerDecodeChanged | 播放器解码方式事件 | Function |
| onPlayerAspectRatioListChanged | 画面比例列表事件 | Function |
| onPlayerAspectRatioChanged | 画面比例事件 | Function |
| onPlayerPlayMediaSourceListModeListChanged | 播放媒资资源列表模式列表事件 | Function |
| onPlayerPlayMediaSourceListModeChanged | 播放媒资资源列表模式事件 | Function |
| onPlayerRenderListChanged | 渲染模式列表事件 | Function |
| onPlayerRenderChanged | 渲染模式事件 | Function |
| onPlayerViewSizeChanged | 播放器尺寸变化事件 | Function |
| onPlayerViewChanged | 播放器视图变化事件 | Function |
| onPlayerClickable | 播放器视图可点击事件 | Function |
Exposes
| Name | Description | Type |
|---|---|---|
| initialize | 初始化 | Function |
| isInitialized | 判断播放管理器是否初始化 | Function |
| setVisible | 设置播放管理器是否可见 | Function |
| playMediaSourceList | 播放媒资资源列表 | Function |
| playMediaSourceByIndex | 根据媒资资源索引进行播放 | Function |
| playMediaSourceById | 根据媒资资源唯一标识符进行播放 | Function |
| playMediaSource | 播放媒资资源 | Function |
| playNextMediaSource | 播放下一个媒资资源 | Function |
| playPreviousMediaSource | 播放上一个媒资资源 | Function |
| getMediaSourceList | 获取正在播放的媒资资源列表 | Function |
| getMediaSource | 根据媒资资源索引获取媒资资源 | Function |
| getPlayingMediaSourceIndex | 获取正在播放的媒资资源的索引 | Function |
| getPlayingMediaSourceList | 获取正在播放的媒资资源列表 | Function |
| getPlayingMediaSource | 获取正在播放的媒资资源 | Function |
| play | 播放器的播放方法 | Function |
| start | 播放器的开始播放方法 | Function |
| pause | 播放器的暂停播放方法 | Function |
| resume | 恢复播放器播放 | Function |
| stop | 停止播放器播放 | Function |
| reset | 重置播放器 | Function |
| release | 回收播放器资源 | Function |
| seekTo | 播放快进 | Function |
| getDuration | 获取播放总时长 | Function |
| getCurrentPosition | 获取当前播放的进度 | Function |
| setSize | 设置播放器的尺寸 | Function |
| setPlayRate | 设置播放速率 | Function |
| setPlayMode | 设置播放模式 | Function |
| setDefinition | 设置播放媒资清晰度 | Function |
| setCache | 设置播放缓存策略 | Function |
| setDecode | 设置播放解码方式 | Function |
| setRender | 设置播放渲染方式 | Function |
| setAspectRatio | 设置播放画面比例 | Function |
| getLeftVolume | 获取左声道音量 | Function |
| getRightVolume | 获取右声道音量 | Function |
| setLeftVolume | 设置左声道音量 | Function |
| setRightVolume | 设置右声道音量 | Function |
| setVolume | 设置左右声道音量 | Function |
| getVolume | 获取音量 | Function |
| setStopped | 设置播放管理器的停止状态 | Function |
| setEnabled | 设置播放管理器的可用状态 | Function |
| setProgressCallback | 设置播放进度回调 | Function |
| setDurationCallback | 设置播放总进度回调 | Function |
| invalidate | 刷新播放视图 | Function |