TXVodPlayer

最近更新时间:2026-04-21 10:36:32

我的收藏

TXVodPlayer API 简介

TXVodPlayer 是核心播放类,主要负责播放、暂停和倍速控制等播放控制。播放器的完整能力请参见 播放器 SDK 功能说明

接口概览

基础播放接口

API
描述
以 fileId 或 url 形式播放,传入 TXPlayInfoParams 参数。需要通过 getV2TXLivePremierShareInstance(context).setLicence(url, key) 设置 Licence 后方可成功播放, 否则将播放失败(黑屏),全局仅设置一次即可。若您暂未获取上述 Licence 可单击 播放器 License 进行申请,正式版 License 需购买。
stopPlay
停止播放。
isPlaying
是否正在播放。
pause
暂停播放,停止获取流数据,保留最后一帧画面。
resume
恢复播放,重新获取流数据。
seek
跳转到视频流指定时间点,单位秒,小数点后精确到3位。
获取当前播放位置,单位秒。
获取缓存的总时长,单位秒。
获取总时长,单位秒。
获取可播放时长,单位秒。
getWidth
获取视频宽度。
getHeight
获取视频高度。
设置点播是否 startPlay 后自动开始播放,默认自动播放。
设置播放开始时间。
setLoop
设置是否循环播放。
isLoop
返回是否循环播放状态。
添加外挂字幕(播放器高级版本才支持)。
返回字幕轨道信息列表(播放器高级版本才支持)。
返回音频轨道信息列表(播放器高级版本才支持)。
选择轨道(播放器高级版本才支持)。
取消选择轨道(播放器高级版本才支持)。

播放器配置接口

API
描述
setConfig
设置播放器配置信息,配置信息请参见 TXVodPlayConfig
设置播放器的视频渲染目标。

视频相关接口

API
描述
获取当前视频帧图像。
注意:由于获取当前帧图像是比较耗时的操作,所以截图会通过异步回调出来。
setRate
设置点播的播放速率,默认1.0。
返回当前播放的码率索引。
当播放地址为 HLS 时,返回支持的码率(清晰度)列表。
设置当前正在播放的码率索引,无缝切换清晰度。清晰度切换可能需要等待一小段时间。
设置自适应播放可切换的最高码率。

音频相关接口

API
描述
setMute
设置是否静音播放。
设置音量大小,范围: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

设置播放器配置信息,请参考 TXVodPlayConfig
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
播放器事件回调接口。