请参见 TXVodPlayer。
主要负责从指定的点播流地址拉取音视频数据,并进行解码和本地渲染播放。
播放器包含如下能力:
API | 描述 |
---|---|
setConfig | 设置播放器配置信息,配置信息请参见 TXVodPlayConfig 。 |
setPlayerView | 设置播放器的视频渲染 TXCloudVideoView。 |
setPlayerView | 设置播放器的视频渲染 TextureView。 |
setSurface | 设置播放器的视频渲染 SurfaceView。 |
setStringOption | 设置播放器业务参数,参数格式为<string,object> 。 |
API | 描述 |
---|---|
startPlay | 播放 HTTP URL 形式地址。 |
startPlay | 以 fileId 形式播放,传入TXPlayInfoParams参数。 |
startPlayDrm | 播放DRM加密视频。 |
stopPlay | 停止播放。 |
isPlaying | 是否正在播放。 |
pause | 暂停播放,停止获取流数据,保留最后一帧画面。 |
resume | 恢复播放,重新获取流数据。 |
seek | 跳转到视频流指定时间点,单位秒。 |
seek | 跳转到视频流指定时间点,单位毫秒。 |
getCurrentPlaybackTime | 获取当前播放位置,单位秒。 |
getBufferDuration | 获取缓存的总时长,单位秒。 |
getDuration | 获取总时长,单位秒。 |
getPlayableDuration | 获取可播放时长,单位秒。 |
getWidth | 获取视频宽度。 |
getHeight | 获取视频高度。 |
setAutoPlay | 设置点播是否 startPlay 后自动开始播放,默认自动播放。 |
setStartTime | 设置播放开始时间。 |
setToken | 加密 HLS 的 token。 |
getEncryptedPlayKey | 获取加固加密播放密钥。 |
setLoop | 设置是否循环播放。 |
isLoop | 返回是否循环播放状态。 |
API | 描述 |
---|---|
enableHardwareDecode | 启用或禁用视频硬解码。 |
snapshot | 获取当前视频帧图像。 注意:由于获取当前帧图像是比较耗时的操作,所以截图会通过异步回调出来。 |
setMirror | 设置镜像。 |
setRate | 设置点播的播放速率,默认1.0。 |
getBitrateIndex | 返回当前播放的码率索引。 |
getSupportedBitrates | 当播放地址为HSL时,返回支持的码率(清晰度)列表。 |
setBitrateIndex | 设置当前正在播放的码率索引,无缝切换清晰度。清晰度切换可能需要等待一小段时间。 |
setRenderMode | 设置 图像平铺模式。 |
setRenderRotation | 设置 图像渲染角度。 |
API | 描述 |
---|---|
setMute | 设置是否静音播放。 |
setAudioPlayoutVolume | 设置音量大小,范围:0 - 100。 |
setRequestAudioFocus | 设置是否自动获取音频焦点 默认自动获取。 |
API | 描述 |
---|---|
setPlayListener | 设置播放器的回调(已弃用,建议使用 setVodListener)。 |
setVodListener | 设置播放器的回调。 |
通过以下接口,可以把点播播放器的音视频流通过 TRTC 进行推送,更多 TRTC 服务请参见 TRTC 产品概述。
API | 描述 |
---|---|
attachTRTC | 点播绑定到 TRTC 服务。 |
detachTRTC | 点播解绑 TRTC 服务。 |
publishVideo | 开始推送视频流。 |
unpublishVideo | 取消推送视频流。 |
publishAudio | 开始推送音频流。 |
unpublishAudio | 取消推送音频流。 |
腾讯云点播回调通知。
API | 描述 |
---|---|
onPlayEvent | 点播播放事件通知,请参见 播放事件列表、事件参数。 |
onNetStatus | 点播播放器 网络状态通知。 |
点播播放器配置类。
API | 描述 |
---|---|
setConnectRetryCount | 设置播放器重连次数。 |
setConnectRetryInterval | 设置播放器重连间隔,单位秒。 |
setTimeout | 设置播放器连接超时时间,单位秒。 |
setCacheFolderPath | 此接口已废弃,不推荐使用。 设置点播缓存目录,点播 MP4、HLS 有效。 |
setMaxCacheItems | 此接口已废弃,不推荐使用。 设置缓存文件个数。 |
setPlayerType | 此接口已经废弃,不推荐使用。 设置播放器类型。 |
setHeaders | 设置自定义 HTTP headers。 |
setEnableAccurateSeek | 设置是否精确 seek,默认 true。 |
setAutoRotate | 播放 MP4 文件时,若设为 YES 则根据文件中的旋转角度自动旋转。 旋转角度可在 PLAY_EVT_CHANGE_ROTATION 事件中获得。默认 YES。 |
setSmoothSwitchBitrate | 平滑切换多码率 HLS,默认 false。 |
setCacheMp4ExtName | 缓存 MP4 文件扩展名。 |
setProgressInterval | 设置进度回调间隔,单位毫秒。 |
setMaxBufferSize | 最大预加载大小,单位 MB。 |
setMaxPreloadSize | 设置预加载最大缓冲大小,单位:MB。 |
setExtInfo | 设置拓展信息。 |
setPreferredResolution | 播放 HLS 有多条码流时,根据设定的 preferredResolution 选最优的码流进行起播,preferredResolution 是宽高的乘积(width * height), 启播前设置才有效。 |
setOverlayKey | 设置 HLS 安全加固加解密 key。 |
setOverlayIv | 设置 HLS 安全加固加解密 Iv。 |
setEnableRenderProcess | 是否允许加载后渲染后处理服务。 |
setMediaType | 设置媒资类型, 默认为 auto 类型。 |
点播播放器全局配置类
API | 描述 |
---|---|
setCacheFolderPath | 设置播放引擎的cache目录。设置后,离线下载,预下载,播放器等会优先从此目录读取和存储 |
setMaxCacheSize | 设置播放引擎的最大缓存大小。设置后会根据设定值自动清理Cache目录的文件。单位MB。 |
点播播放器预下载接口类
API | 描述 |
---|---|
getInstance | 获取 TXVodPreloadManager 实例对象,单例模式。 |
startPreload | 启动预下载前,请先设置好播放引擎的缓存目录。 |
stopPreload | 停止预下载。 |
视频预下载回调接口。
API | 描述 |
---|---|
onComplete | 视频预下载完成。 |
onError | 视频预下载出错。 |
点播播放器视频下载接口类。当前只支持下载非嵌套 m3u8 视频源,对 simpleAES 加密视频源将进行腾讯云私有加密算法加密以提升安全性。
API | 描述 |
---|---|
getInstance | 获取 TXVodDownloadManager 实例对象,单例模式。 |
setHeaders | 设置下载 HTTP 头。 |
setListener | 设置下载回调方法,下载前必须设好。 |
startDownloadUrl | 以 URL 方式开始下载。 |
startDownload | 以 fileid 方式开始下载。 |
stopDownload | 停止下载,ITXVodDownloadListener.onDownloadStop 回调时停止成功。 |
deleteDownloadMediaInfo | 删除下载信息。 |
getDownloadMediaInfoList | 获取所有用户的下载列表信息。 |
getDownloadMediaInfo | 获取下载信息。 |
getDownloadMediaInfo | 获取下载信息。 |
腾讯云视频下载回调通知。
API | 描述 |
---|---|
onDownloadStart | 下载开始 |
onDownloadProgress | 下载进度更新 |
onDownloadStop | 下载停止 |
onDownloadFinish | 下载结束 |
onDownloadError | 下载过程中遇到错误 |
hlsKeyVerify | 下载 HLS,遇到加密的文件,将解密 key 给外部校验 |
腾讯云视频fildid下载源,下载时作为参数传入。
API | 描述 |
---|---|
TXVodDownloadDataSource | 构造函数,传入 appid,fileid,quality,pSign,username 等参数 |
getAppId | 获取传入的 appid |
getFileId | 获取传入的 fileid |
getPSign | 获取传入的 psign |
getQuality | 获取传入的 quality |
getUserName | 获取传入的 userName,默认“default” |
getToken | 获取传入的 token |
getOverlayKey | 获取传入的 overlayKey |
getOverlayIv | 获取传入的 overlayIv |
code | 常量定义 | 含义说明 |
---|---|---|
0 | QUALITY_OD | 原画 |
1 | QUALITY_FLU | 流畅 |
2 | QUALITY_SD | 标清 |
3 | QUALITY_HD | 高清 |
4 | QUALITY_FHD | 全高清 |
5 | QUALITY_2K | 2K |
6 | QUALITY_4K | 4K |
1000 | QUALITY_UNK | 未定义 |
腾讯云视频下载信息,可获取下载进度,播放链接等等信息
API | 描述 |
---|---|
getDataSource | fileid下载时获取传入的 fileid 下载源 |
getDuration | 获取下载的总时长 |
getPlayableDuration | 获取已下载的可播放时长 |
getSize | 获取下载文件总大小,只针对 fileid 下载源有效 |
getDownloadSize | 获取已下载文件大小,只针对 fileid 下载源有效 |
getProgress | 获取当前下载进度 |
getPlayPath | 获取当前播放路径,可传给 TXVodPlayer 播放 |
getDownloadState | 获取下载状态 |
isDownloadFinished | 判断是否下载完成 |
code | 属性定义 | 含义说明 |
---|---|---|
0 | STATE_INIT | 下载初始态 |
1 | STATE_START | 下载开始 |
2 | STATE_STOP | 下载停止 |
3 | STATE_ERROR | 下载出错 |
4 | STATE_FINISH | 下载完成 |
通过fileId播放加密视频配置。
API | 描述 |
---|---|
setAppId | 应用appId。 |
setFileId | 文件id。 |
setTimeout | 加密链接超时时间戳。 |
setExper | 试看时长。 |
setUs | 唯一标识请求。 |
setSign | 防盗链签名。 |
setHttps | 是否用https请求。 |
视频码率信息。
API | 描述 |
---|---|
index | m3u8 文件中的序号。 |
width | 此流的视频宽度。 |
height | 此流的视频高度。 |
bitrate | 此流的视频码率。 |
compareTo | 比较两条流的码率是否相等。 |
雪碧图解析类。
API | 描述 |
---|---|
TXImageSprite | 构造函数。 |
setVTTUrlAndImageUrls | 设置雪碧图地址。 |
getThumbnail | 获取缩略图。 |
release | 使用完毕调用,否则会造成内存泄漏。 |
DRM播放信息。
API | 描述 |
---|---|
TXPlayerDrmBuilder | 构造DRM播放信息对象。 |
setProvisionUrl | 设置证书提供商url。 |
setKeyLicenseUrl | 设置解密key url。 |
setPlayUrl | 设置播放媒体的url。 |
通过fileId播放视频参数信息。
API | 描述 |
---|---|
TXPlayInfoParams | 构造函数。 |
getAppId | 获取应用id。 |
getFileId | 获取文件id。 |
getPSign | 获取腾讯云视频加密签名。 |
code | 事件定义 | 含义说明 |
---|---|---|
2004 | PLAY_EVT_PLAY_BEGIN | 视频播放开始(若有转菊花效果,此时将停止)。 |
2005 | PLAY_EVT_PLAY_PROGRESS | 视频播放进度,会通知当前播放进度、加载进度和总体时长。 |
2007 | PLAY_EVT_PLAY_LOADING | 视频播放 loading,如果能够恢复,之后会有 LOADING_END 事件。 |
2014 | PLAY_EVT_VOD_LOADING_END | 视频播放 loading 结束,视频继续播放。 |
2006 | PLAY_EVT_PLAY_END | 视频播放结束。 |
2013 | PLAY_EVT_VOD_PLAY_PREPARED | 播放器已准备完成,可以播放。 |
2003 | PLAY_EVT_RCV_FIRST_I_FRAME | 网络接收到首个可渲染的视频数据包(IDR)。 |
2009 | PLAY_EVT_CHANGE_RESOLUTION | 视频分辨率改变。 |
2011 | PLAY_EVT_CHANGE_ROTATION | MP4 视频旋转角度。 |
code | 事件定义 | 含义说明 |
---|---|---|
-2301 | PLAY_ERR_NET_DISCONNECT | 网络断连,且经多次重连亦不能恢复,更多重试请自行重启播放。 |
-2305 | PLAY_ERR_HLS_KEY | HLS 解密 key 获取失败。 |
2101 | PLAY_WARNING_VIDEO_DECODE_FAIL | 当前视频帧解码失败。 |
2102 | PLAY_WARNING_AUDIO_DECODE_FAIL | 当前音频帧解码失败 |
2103 | PLAY_WARNING_RECONNECT | 网络断连, 已启动自动重连 (重连超过三次就直接抛送 PLAY_ERR_NET_DISCONNECT)。 |
2106 | PLAY_WARNING_HW_ACCELERATION_FAIL | 硬解启动失败,采用软解。 |
-2304 | PLAY_ERR_HEVC_DECODE_FAIL | H265 解码失败。 |
-2303 | PLAY_ERR_FILE_NOT_FOUND | 播放的文件不存在。 |
下面的常量10.0 版本开始,通过TXVodConstants
对外提供:
code | 事件定义 | 含义说明 |
---|---|---|
0 | RENDER_MODE_FULL_FILL_SCREEN | 视频画面全屏铺满 |
1 | RENDER_MODE_ADJUST_RESOLUTION | 视频画面自适应屏幕 |
code | 事件定义 | 含义说明 |
---|---|---|
0 | RENDER_ROTATION_PORTRAIT | 常规竖屏 |
270 | RENDER_ROTATION_LANDSCAPE | 右旋90度 |
code | 事件定义 | 含义说明 |
---|---|---|
2003 | VOD_PLAY_EVT_RCV_FIRST_I_FRAME | 网络接收到首个视频数据包(IDR) |
2004 | VOD_PLAY_EVT_PLAY_BEGIN | 视频播放开始 |
2005 | VOD_PLAY_EVT_PLAY_PROGRESS | 视频播放进度 |
2006 | VOD_PLAY_EVT_PLAY_END | 视频播放结束 |
2007 | VOD_PLAY_EVT_PLAY_LOADING | 视频播放Loading |
2008 | VOD_PLAY_EVT_START_VIDEO_DECODER | 解码器启动 |
2009 | VOD_PLAY_EVT_CHANGE_RESOLUTION | 视频分辨率改变 |
2010 | VOD_PLAY_EVT_GET_PLAYINFO_SUCC | 获取点播文件信息成功 |
2011 | VOD_PLAY_EVT_CHANGE_ROTATION | 视频旋转信息 |
2013 | VOD_PLAY_EVT_VOD_PLAY_PREPARED | 视频加载完毕 |
2014 | VOD_PLAY_EVT_VOD_LOADING_END | loading结束 |
2026 | VOD_PLAY_EVT_RCV_FIRST_AUDIO_FRAME | 音频首次播放 |
2103 | VOD_PLAY_WARNING_RECONNECT | 网络断连, 已启动自动重连 |
-2301 | VOD_PLAY_ERR_NET_DISCONNECT | 网络断连, 且经多次重连抢救无效 |
-2303 | VOD_PLAY_ERR_FILE_NOT_FOUND | 文件不存在 |
-2304 | VOD_PLAY_ERR_HEVC_DECODE_FAIL | h265解码失败 |
-2305 | VOD_PLAY_ERR_HLS_KEY | HLS解密key获取失败 |
-2306 | VOD_PLAY_ERR_GET_PLAYINFO_FAIL | 获取点播文件信息失败 |
2106 | VOD_PLAY_WARNING_HW_ACCELERATION_FAIL | 硬解启动失败,采用软解 |
-5 | VOD_PLAY_ERR_INVALID_LICENSE | license 不合法,播放失败 |
事件定义 | 含义说明 |
---|---|
EVT_UTC_TIME | UTC时间 |
EVT_TIME | 事件发生时间 |
EVT_DESCRIPTION | 事件说明 |
EVT_PARAM1 | 事件参数1 |
EVT_PARAM2 | 事件参数2 |
EVT_PLAY_COVER_URL | 视频封面 |
EVT_PLAY_URL | 视频地址 |
EVT_PLAY_NAME | 视频名称 |
EVT_PLAY_DESCRIPTION | 视频简介 |
EVT_PLAY_PROGRESS_MS | 播放进度(毫秒) |
EVT_PLAY_DURATION_MS | 播放总长(毫秒) |
EVT_PLAY_PROGRESS | 播放进度 |
EVT_PLAY_DURATION | 播放总长 |
EVT_PLAYABLE_DURATION_MS | 点播可播放时长(毫秒) |
EVT_PLAYABLE_RATE | 播放速率 |
EVT_PLAYABLE_DURATION | 点播可播放时长 |
EVT_IMAGESPRIT_WEBVTTURL | 雪碧图web vtt描述文件下载URL |
EVT_IMAGESPRIT_IMAGEURL_LIST | 雪碧图图片下载URL |
EVT_DRM_TYPE | 加密类型 |
EVT_CODEC_TYPE | 视频编码类型 |
EVT_KEY_FRAME_CONTENT_LIST | 视频关键帧描述信息 |
EVT_KEY_FRAME_TIME_LIST | 关键帧时间 |
事件定义 | 含义说明 |
---|---|
NET_STATUS_CPU_USAGE | CPU使用率 |
NET_STATUS_VIDEO_WIDTH | 分辨率之width |
NET_STATUS_VIDEO_HEIGHT | 分辨率之height |
NET_STATUS_VIDEO_FPS | 当前视频帧率 |
NET_STATUS_VIDEO_GOP | 当前视频GOP |
NET_STATUS_VIDEO_BITRATE | 视频数据比特率 |
NET_STATUS_AUDIO_BITRATE | 音频数据比特率 |
NET_STATUS_NET_SPEED | 网络速率 |
NET_STATUS_AUDIO_CACHE | 音频帧数 |
NET_STATUS_VIDEO_CACHE | 视频帧数 |
NET_STATUS_AUDIO_INFO | 当前流的音频信息 |
NET_STATUS_NET_JITTER | 网络抖动情况 |
NET_STATUS_SERVER_IP | 连接的Server IP地址 |
NET_STATUS_VIDEO_DPS | 当前解码器输出帧率 |
NET_STATUS_QUALITY_LEVEL | 网络质量 |
code | 事件定义 | 含义说明 |
---|---|---|
0 | MEDIA_TYPE_AUTO | auto类型 |
1 | MEDIA_TYPE_HLS_VOD | 自适应码率播放hls点播媒资 |
2 | MEDIA_TYPE_HLS_LIVE | 自适应码率播放hls直播媒资 |
code | 事件定义 | 含义说明 |
---|---|---|
-1 | INDEX_AUTO | 自适应码率index标识 |
</string,object> |
本页内容是否解决了您的问题?