TXVodPlayer API 简介
接口概览
基础播放接口
API | 描述 |
以 fileId 或 url 形式播放,传入 TXPlayInfoParams 参数。需要通过 getV2TXLivePremierShareInstance(context).setLicence(url, key) 设置 Licence 后方可成功播放, 否则将播放失败(黑屏),全局仅设置一次即可。若您暂未获取上述 Licence 可单击 播放器 License 进行申请,正式版 License 需购买。 | |
停止播放。 | |
是否正在播放。 | |
暂停播放,停止获取流数据,保留最后一帧画面。 | |
恢复播放,重新获取流数据。 | |
跳转到视频流指定时间点,单位秒,小数点后精确到3位。 | |
获取当前播放位置,单位秒。 | |
获取缓存的总时长,单位秒。 | |
获取总时长,单位秒。 | |
获取可播放时长,单位秒。 | |
获取视频宽度。 | |
获取视频高度。 | |
设置点播是否 startPlay 后自动开始播放,默认自动播放。 | |
设置播放开始时间。 | |
设置是否循环播放。 | |
返回是否循环播放状态。 | |
添加外挂字幕(播放器高级版本才支持)。 | |
返回字幕轨道信息列表(播放器高级版本才支持)。 | |
返回音频轨道信息列表(播放器高级版本才支持)。 | |
选择轨道(播放器高级版本才支持)。 | |
取消选择轨道(播放器高级版本才支持)。 |
播放器配置接口
API | 描述 |
设置播放器的视频渲染目标。 |
视频相关接口
API | 描述 |
获取当前视频帧图像。 注意:由于获取当前帧图像是比较耗时的操作,所以截图会通过异步回调出来。 | |
设置点播的播放速率,默认1.0。 | |
返回当前播放的码率索引。 | |
当播放地址为 HLS 时,返回支持的码率(清晰度)列表。 | |
设置当前正在播放的码率索引,无缝切换清晰度。清晰度切换可能需要等待一小段时间。 | |
设置自适应播放可切换的最高码率。 |
音频相关接口
API | 描述 |
设置是否静音播放。 | |
设置音量大小,范围:0 - 100。 |
事件通知接口
API | 描述 |
设置播放器事件回调。 |
接口详情
constructor
创建点播播放器实例。
constructor(context: Context)
参数说明
参数名 | 类型 | 描述 |
context | Context | 系统 Context。 |
startVodPlay
通过腾讯云 fileId 或 URL 启动播放。
需要通过 XLiveBase#setLicence 设置 Licence 后方可成功播放, 否则将播放失败(黑屏),全局仅设置一次即可。
startVodPlay(playInfoParams: TXPlayInfoParams): void
参数说明
参数名 | 类型 | 描述 |
playInfoParams | 与 fileId 或 url 相关的播放信息参数。 |
stopPlay
停止播放。
stopPlay(isNeedClearLastImg: boolean): number
参数说明
参数名 | 类型 | 描述 |
isNeedClearLastImg | boolean | 是否需要清除最后一帧画面。 true:清除最后一帧画面,正常停止播放时,推荐清除。 false:保留最后一帧画面。 |
isPlaying
是否正在播放。
isPlaying(): boolean
pause
暂停播放。
pause(): void
resume
恢复播放。
resume(): void
seek
跳转到视频流指定时间点。
seek(time: number, isAccurateSeek?: boolean): void
参数说明
参数名 | 类型 | 描述 |
timeInSeconds | number | 视频流时间点,单位秒,小数点后精确到3位。 |
isAccurateSeek | boolean | 是否精准 Seek。 true: 表示精确 Seek,必须寻找到当前时间点,这个会比较耗时。 false:表示非精准 Seek,也就是寻找前一个 I 帧。 |
getCurrentPlaybackTime
获取当前播放时间点,单位秒。
getCurrentPlaybackTime(): number
getBufferDuration
获取缓存的总时长,单位秒。
getBufferDuration(): number
getDuration
获取播放的视频总时长,单位秒。
getDuration(): number
getPlayableDuration
获取
当前可播放视频时长,单位秒。getPlayableDuration(): number
getWidth
获取视频宽度。
getWidth(): number
getHeight
获取视频高度。
getHeight(): number
setAutoPlay
设置点播是否 startPlay 后自动开始播放。默认自动播放。
setAutoPlay(autoPlay: boolean): void
setStartTime
设置播放开始时间,单位秒,需要在启动播放前设置。
setStartTime(pos: number): void
参数说明
参数名 | 类型 | 描述 |
pos | number | 视频流时间点,单位秒,小数点后精确到3位。 |
setLoop
设置是否循环播放,默认非循环播放。
setLoop(loop: boolean): void
isLoop
是否循环播放。
isLoop(): boolean
addSubtitleSource
添加外挂字幕。
注意:
播放器高级版 License 才支持。
addSubtitleSource(url: string, name: string, mimeType: string): void
参数说明
参数名 | 类型 | 描述 |
url | string | 字幕地址,支持 HTTP 链接和本地存储绝对路径。 |
name | string | 字幕的名字。如果添加多个字幕,字幕名称请设置为不同的名字,用于区分与其他添加的字幕,否则可能会导致字幕选择错误 |
mimeType | string | 字幕类型,仅支持 VTT 和 SRT 格式。 VTT 格式:TXVodConstants#VOD_PLAY_MIMETYPE_TEXT_SRT SRT 格式:TXVodConstants#VOD_PLAY_MIMETYPE_TEXT_VTT |
getSubtitleTrackInfo
返回字幕轨道信息列表。
注意:
播放器高级版 License 才支持。
getSubtitleTrackInfo(): TXTrackInfo[]
返回值
TXTrackInfo[]:字幕轨道信息列表。
getAudioTrackInfo
返回音频轨道信息列表。
注意:
播放器高级版 License 才支持。
getAudioTrackInfo(): TXTrackInfo[]
返回值
TXTrackInfo[]:音频轨道信息列表。
selectTrack
选择轨道。
注意:
播放器高级版 License 才支持。
selectTrack(trackIndex: number): void
参数说明
参数名 | 类型 | 描述 |
trackIndex | number | 轨道 index,通过 TXTrackInfo#getTrackIndex 获取。 |
deselectTrack
取消选择轨道。
注意:
播放器高级版 License 才支持。
deselectTrack(trackIndex: number): void
参数说明
参数名 | 类型 | 描述 |
trackIndex | number | 轨道 index,通过 TXTrackInfo#getTrackIndex 获取。 |
setConfig
setConfig(config: TXVodPlayConfig): void
setVideoRenderTarget
设置播放器的视频渲染目标,仅在启动播放之前设置有效。
setVideoRenderTarget(surfaceId: string): void
参数说明
参数名 | 类型 | 描述 |
surfaceId | string | surface 实例的标识。 |
snapshotAsync
获取当前视频帧图像,通过 onSnapshotComplete 回调方法返回结果。
snapshotAsync(uiContext: UIContext, nativeXComponentID: string): void
参数说明
参数名 | 类型 | 描述 |
uiContext | UIContext | UI 上下文。 |
nativeXComponentID | string | XComponent 组件 ID。 |
setAutoMaxBitrate
设置自适应播放可切换的最高码率。
setAutoMaxBitrate(autoMaxBitrate: number): void
setRate
设置点播的播放速率,默认1.0。
setRate(rate: number): void
getBitrateIndex
返回当前播放的码率索引。
getBitrateIndex(): number
getSupportedBitrates
当播放地址为 HLS 时,返回支持的码率(清晰度)列表。
getSupportedBitrates(): TXBitrateItem[]
返回值
TXBitrateItem[]:码率列表。
setBitrateIndex
设置当前正在播放的码率索引,腾讯云支持多码率 HLS 分片对齐,保证最佳体验。切换清晰度时,清晰度切换可能需要等待一小段时间。
setBitrateIndex(index: number): void
参数说明
参数名 | 类型 | 描述 |
index | int | 码率索引。 index == -1,表示开启 HLS 码流自适应。 index > 0 表示手动切换到对应清晰度码率,index 值可以通过接口 TXVodPlayer#getSupportedBitrates 获取。 |
setMute
设置是否静音播放,默认非静音播放。
setMute(mute: boolean): void
setAudioPlayoutVolume
设置音量大小,范围:0 - 100。
setAudioPlayoutVolume(volume: number): void
setVodPlayCallback
设置播放器事件回调。
setVodPlayCallback(vodCallback: ITXVodPlayCallback): void
参数说明
参数名 | 类型 | 描述 |
vodCallback | ITXVodPlayCallback | 播放器事件回调接口。 |