详情页标题前

腾讯云云点播iOS

详情页1

TXVodPlayer

点播播放器

请参见 TXVodPlayer
主要负责从指定的点播流地址拉取音视频数据,并进行解码和本地渲染播放。
播放器包含如下能力:
支持 FLV、MP4 及 HLS 多种播放格式,支持 基础播放(URL 播放) 和 点播播放(Fileid 播放)两种播放方式 。屏幕截图,可以截取当前播放流的视频画面。通过手势操作,调节亮度、声音、进度等。可以手动切换不同的清晰度,也可根据网络带宽自适应选择清晰度。可以指定不同倍速播放,并开启镜像和硬件加速。完整能力,请参见 播放器SDK – 能力清单

播放器配置接口

API 描述
config 点播配置,配置信息请参见 TXVodPlayConfig
isAutoPlay startVodPlay 后是否立即播放,默认 YES。
token 加密 HLS 的 token。设置此值后,播放器自动在 URL 中的文件名之前增加 voddrm.token.TOKEN TextureView
loop 是否循环播放 SurfaceView。
enableHWAcceleration 视频渲染回调。(仅硬解支持)
setExtentOptionInfo 设置播放器业务参数,参数格式为
setSubtitleStyle 设置字幕样式信息,可在播放后对字幕样式进行更新(播放器高级版本才支持)。

播放基础接口

API 描述
startVodPlay 播放 HTTP URL 形式地址。10.7 版本开始,startPlay变更为startVodPlay,需要通过 V2TXLivePremier#setLicence或者TXLiveBase#setLicence设置 License 后方可成功播放,否则将播放失败(黑屏),全局仅设置一次即可。直播 License、短视频 License 和播放器 License 均可使用,若您暂未获取上述 License ,可 快速免费申请测试版 License 来正常播放,正式版 License 需 购买
startVodPlayWithParams 以 fileId 形式播放。10.7 版本开始,startPlayWithParams变更为startVodPlayWithParams,需要通过 V2TXLivePremier#setLicence或者TXLiveBase#setLicence设置 License 后方可成功播放,否则将播放失败(黑屏),全局仅设置一次即可。直播 License、短视频 License 和播放器 License 均可使用,若您暂未获取上述 License ,可 快速免费申请测试版 License 来正常播放,正式版 License 需 购买
stopPlay 停止播放。
isPlaying 是否正在播放。
pause 暂停播放,停止获取流数据,保留最后一帧画面。
resume 恢复播放,重新获取流数据。
seek 跳转到视频流指定时间点,单位秒。
currentPlaybackTime 获取当前播放位置,单位秒。
duration 获取总时长,单位秒。
playableDuration 获取可播放时长,单位秒。
width 获取视频宽度。
height 获取视频高度。
setStartTime 设置播放开始时间。
setupVideoWidget:insertIndex: 创建 Video 渲染 View,该控件承载着视频内容的展示。
removeVideoWidget 移除 Video 渲染 View。
addSubtitleSource:name:mimeType: 添加外挂字幕(播放器高级版本才支持)。
getSubtitleTrackInfo 返回字幕轨道信息列表(播放器高级版本才支持)。
getAudioTrackInfo 返回音频轨道信息列表(播放器高级版本才支持)。
selectTrack: 选择轨道(播放器高级版本才支持)。
deselectTrack: 取消选择轨道(播放器高级版本才支持)。

视频相关接口

API 描述
snapshot 获取当前视频帧图像。注意:由于获取当前帧图像是比较耗时的操作,所以截图会通过异步回调出来。
setMirror 设置镜像。
setRate 设置点播的播放速率,默认1.0。
bitrateIndex 返回当前播放的码率索引。
setBitrateIndex 设置当前正在播放的码率索引,无缝切换清晰度。清晰度切换可能需要等待一小段时间。
setRenderMode 设置 图像平铺模式
setRenderRotation 设置 图像渲染角度
enterPictureInPicture 进入画中画功能。
exitPictureInPicture 退出画中画功能。

音频相关接口

API 描述
setMute 设置是否静音播放。
setAudioPlayoutVolume 设置音量大小,范围:0 – 100。

事件通知接口

API 描述
delegate 事件回调,建议使用 vodDelegate
vodDelegate 设置播放器的回调。
videoProcessDelegate 视频渲染回调(仅硬解支持)。

TRTC 相关接口

通过以下接口,可以把点播播放器的音视频流通过 TRTC 进行推送,更多 TRTC 服务请参见 TRTC 产品概述

API 描述
attachTRTC 点播绑定到 TRTC 服务。
detachTRTC 点播解绑 TRTC 服务。
publishVideo 开始推送视频流。
unpublishVideo 取消推送视频流。
publishAudio 开始推送音频流。
unpublishAudio 取消推送音频流。

类方法

API 描述
getEncryptedPlayKey 获取加固加密播放密钥。
isSupportPictureInPicture 是否支持 Picture In Picture功能(“画中画”功能)。

TXVodPlayListener

腾讯云点播回调通知。

SDK 基础回调

API 描述
onPlayEvent 点播播放事件通知,请参见 播放事件列表事件参数
onNetStatus 点播播放器 网络状态通知
onPlayer:pictureInPictureStateDidChange:withParam: 画中画状态回调。
onPlayer:pictureInPictureErrorDidOccur:withParam: 画中画错误状态回调。

TXVodPlayConfig

点播播放器配置类。

基础配置接口

API 描述
connectRetryCount 设置播放器重连次数。
connectRetryInterval 设置播放器重连间隔,单位秒。
timeout 设置播放器连接超时时间,单位秒。
cacheFolderPath 此接口已废弃,推荐使用 TXPlayerGlobalSetting##setCacheFolderPath设置点播缓存目录,点播 MP4、HLS 有效。
maxCacheItems 此接口已废弃,推荐使用 TXPlayerGlobalSetting#setMaxCacheSizeMB设置缓存文件个数。
playerType 设置播放器类型。
headers 设置自定义 HTTP headers。
enableAccurateSeek 设置是否精确 seek,默认 true。
autoRotate 播放 MP4 文件时,若设为 YES 则根据文件中的旋转角度自动旋转。旋转角度可在 PLAY_EVT_CHANGE_ROTATION 事件中获得。默认 YES。
smoothSwitchBitrate 平滑切换多码率 HLS,默认 false。
progressInterval 设置进度回调间隔,单位毫秒。
maxBufferSize 最大预加载大小,单位 MB。
maxPreloadSize 设置预加载最大缓冲大小,单位:MB。
firstStartPlayBufferTime 设置首缓需要加载的数据时长,单位 ms,默认值为100ms。
nextStartPlayBufferTime 缓冲时(缓冲数据不够引起的二次缓冲,或者 seek 引起的拖动缓冲)最少要缓存多长的数据才能结束缓冲,单位ms,默认值为250ms。
overlayKey 设置 HLS 安全加固加解密 key。
overlayIv 设置 HLS 安全加固加解密 Iv。
extInfoMap 设置拓展信息。
preferredResolution 播放 HLS 有多条码流时,根据设定的 preferredResolution 选最优的码流进行起播 *,preferredResolution 是宽高的乘积(width * height), 启播前设置才有效。
enableRenderProcess 是否允许加载后渲染后处理服务(如超分插件服务),默认开启。
playerPixelFormatType 视频渲染对象回调的视频格式。
keepLastFrameWhenStop stopPlay 的时候是否保留最后一帧画面,默认值为 NO。
mediaType 设置媒资类型。设置媒资类型。可选值有:
MEDIA_TYPE_AUTO,AUTO 类型(默认值,自适应码率播放暂不支持)。
MEDIA_TYPE_HLS_VOD,HLS 点播媒资。
MEDIA_TYPE_HLS_LIVE,HLS 直播媒资。
MEDIA_TYPE_FILE_VOD,MP4 等通用文件点播媒资(从 11.2 版本开始支持)。
MEDIA_TYPE_DASH_VOD,DASH 点播媒资(从 11.2 版本开始支持)。

TXPlayerGlobalSetting

点播播放器全局配置类

API 描述
setCacheFolderPath 设置播放引擎的 cache 目录。设置后,预下载,播放器等会优先从此目录读取和存储。
setMaxCacheSize 设置播放引擎的最大缓存大小。设置后会根据设定值自动清理 Cache 目录的文件。单位MB。

TXVodPreloadManager

点播播放器预下载接口类

API 描述
sharedManager 获取 TXVodPreloadManager 实例对象,单例模式。
startPreload 启动预下载前,请先设置好播放引擎的缓存目录TXPlayerGlobalSetting#setCacheFolderPath 和缓存大小TXPlayerGlobalSetting#setMaxCacheSize。
stopPreload 停止预下载。

视频预下载回调

API 描述
onComplete:url: 下载完成回调。
onError:url:error: 下载错误回调。

TXVodDownloadManager

点播播放器视频下载接口类

TXVodDownloadDataSource

API 描述
auth fileid 信息。
quality 下载清晰度,默认原画。
token 如地址有加密,请填写 token。
templateName 清晰度模板。
fileId 文件Id。
pSign 签名信息。
appId 应用 appId。必填。
userName 账户名称。
overlayKey HLS EXT-X-KEY 加解密参数。
overlayIv 加解密参数 overlayIv。

TXVodDownloadMediaInfo

API 描述
isDownloadFinished 是否下载完成。
dataSource fileid 下载对象(可选)。
url 下载地址。
userName 账户名称 。
duration 时长。
playableDuration 可播放时长。
size 获取下载文件总大小,单位:Byte,只针对 fileid 下载源有效。备注:总大小是指上传到腾讯云点播控制台的原始文件的大小,转自适应码流后的子流大小,暂时无法获取。
downloadSize 已下载大小,单位:byte。
segments 分段总数。
downloadSegments 已下载的分段数
progress 进度。
playPath 播放路径,可传给 TXVodPlayer 播放。
speed 下载速度,byte 每秒。
downloadState 下载状态。
isResourceBroken 判断下载后的视频资源是否损坏,如下载完被删除等情况将返回YES。(11.0 版本开始支持)

TXVodDownloadManager

API 描述
shareInstance 获取 TXVodDownloadManager 实例对象,单例模式。
setDownloadPath 设置下载根目录。
headers 设置下载 HTTP 头。
delegate 设置下载回调方法,下载前必须设好。
startDownloadUrl 以 URL 方式开始下载。
startDownload 以 FileID 方式开始下载。
stopDownload 停止下载,ITXVodDownloadListener.onDownloadStop 回调时停止成功。
deleteDownloadFile 删除下载文件。
deleteDownloadMediaInfo 删除下载信息。
getDownloadMediaInfoList 获取所有用户的下载列表信息。
getDownloadMediaInfo 获取下载信息。
getOverlayKeyIv 获取HLS EXT-X-KEY。
genRandomHexStringForHls 获取加密随机数。
encryptHexStringHls: 加密。

TXVodDownloadDelegate

API 描述
onDownloadStart 下载开始。
onDownloadProgress 下载进度更新。
onDownloadStop 下载停止。
onDownloadFinish 下载结束。
onDownloadError 下载过程中遇到错误。
hlsKeyVerify 下载 HLS,遇到加密的文件,将解密 Key 给外部校验。

TXDownloadError

下载错误码,详细信息请参见 TXDownloadError

枚举值 含义说明
TXDownloadSuccess 下载成功。
TXDownloadAuthFaild fileid 鉴权失败。
TXDownloadNoFile 无此清晰度文件。
TXDownloadFormatError 格式不支持。
TXDownloadDisconnet 网络断开。
TXDownloadHlsKeyError 获取 HLS 解密 key 失败。
TXDownloadPathError 下载目录访问失败。

TXVodDownloadMediaInfoState

下载状态,详细信息请参见 TXVodDownloadMediaInfoState

枚举值 含义说明
TXVodDownloadMediaInfoStateInit 下载初始态。
TXVodDownloadMediaInfoStateStart 下载开始。
TXVodDownloadMediaInfoStateStop 下载停止。
TXVodDownloadMediaInfoStateError 下载出错。
TXVodDownloadMediaInfoStateFinish 下载完成。

TXVodQuality

下载视频的清晰度,详细信息请参见 TXVodQuality说明:TXVodQuality240P ~ TXVodQuality1080p 常量在 11.0 版本新增。

枚举值 含义说明
TXVodQualityOD 原画。
TXVodQualityFLU 流畅。
TXVodQualitySD 标清。
TXVodQualityHD 高清。
TXVodQualityFHD 全高清。
TXVodQuality2K 2K。
TXVodQuality4K 4K。
TXVodQuality240P 流畅240P。
TXVodQuality360P 流畅360P。
TXVodQuality480P 标清480P。
TXVodQuality540P 标清540P。
TXVodQuality720P 高清720P。
TXVodQuality1080p 高清720P。

TXPlayerAuthParams

通过 fileId 播放加密视频配置。

API 描述
appId 应用 appId。
fileId 文件 ID。
timeout 加密链接超时时间戳。
exper 试看时长。
us 唯一标识请求。
sign 防盗链签名。
https 是否用 https 协议进行 CGI 请求,默认为 NO。

TXBitrateItem

HLS多码率信息。

API 描述
index m3u8 文件中的序号。
width 此流的视频宽度。
height 此流的视频高度。
bitrate 此流的视频码率。

TXImageSprite

雪碧图解析工具。

API 描述
setVTTUrl 设置雪碧图地址。
getThumbnail 获取缩略图。

TXPlayerDrmBuilder

点播 Drm 构造器。

API 描述
certificateUrl 证书提供商 URL。
keyLicenseUrl 解密 key URL。
playUrl 播放链接。

错误码表

常规事件

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 播放的文件不存在。
-5 VOD_PLAY_ERR_LICENCE_CHECK_FAIL License 不合法,播放失败。注意:在 startVodPlay 之前,需要通过 TXLiveBase#setLicence 设置 License 后方可成功播放,否则将播放失败(黑屏),全局仅设置一次即可。直播 License、短视频 License 和播放器 License 均可使用,若您暂未获取上述 License ,可 快速免费申请测试版 License 以正常播放,正式版 License 需 购买

播放器 SDK 常量

事件码和错误码定义

详细信息请参见 播放器的事件码和错误码定义

枚举值 含义
VOD_PLAY_EVT_RCV_FIRST_I_FRAME 播放事件:成功接收到第一个视频帧。
VOD_PLAY_EVT_RCV_FIRST_AUDIO_FRAME 播放事件:成功接收到第一个音频帧。
VOD_PLAY_EVT_PLAY_BEGIN 播放事件:播放已经开始。
VOD_PLAY_EVT_PLAY_PROGRESS 播放事件:播放进度更新,点播播放器(VodPlayer)专用。
VOD_PLAY_EVT_PLAY_END 播放事件:播放已经结束。
VOD_PLAY_EVT_PLAY_LOADING 播放事件:数据缓冲中。
VOD_PLAY_EVT_START_VIDEO_DECODER 播放事件: 视频解码器已经启动。
VOD_PLAY_EVT_CHANGE_RESOLUTION 播放事件:视频分辨率发生变化。
VOD_PLAY_EVT_GET_PLAYINFO_SUCC 播放事件:成功获取到点播文件的信息,点播播放器(VodPlayer)专用。
VOD_PLAY_EVT_CHANGE_ROTATION 播放事件:MP4 视频的旋转角度发生变化,点播播放器(VodPlayer)专用。
VOD_PLAY_EVT_VOD_PLAY_PREPARED 播放事件:视频加载完毕,点播播放器(VodPlayer)专用。
VOD_PLAY_EVT_VOD_LOADING_END 播放事件:视频缓冲结束,点播播放器(VodPlayer)专用。
VOD_PLAY_EVT_STREAM_SWITCH_SUCC 播放事件:已经成功完成切流(在不同清晰度的视频流之间进行切换)。
VOD_PLAY_EVT_VOD_PLAY_TCP_CONNECT_SUCC TCP 连接成功。
VOD_PLAY_EVT_VOD_PLAY_FIRST_VIDEO_PACKET 收到首帧数据。
VOD_PLAY_EVT_VOD_PLAY_SEEK_COMPLETE 视频播放 Seek 完成。
VOD_PLAY_EVT_AUDIO_SESSION_INTERRUPT 播放事件:Audio Session 被其他 App 中断(仅适用于 iOS 平台)。
VOD_PLAY_ERR_NET_DISCONNECT 直播错误:网络连接断开(已经经过三次重试并且未能重连成功)。
VOD_PLAY_ERR_FILE_NOT_FOUND 点播错误:播放文件不存在。
VOD_PLAY_ERR_HLS_KEY 点播错误:HLS 解码 KEY 获取失败。
VOD_PLAY_ERR_GET_PLAYINFO_FAIL 点播错误:获取点播文件的文件信息失败。

画中画错误类型

详细信息可参见 画中画错误类型

枚举值 含义
TX_VOD_PLAYER_PIP_ERROR_TYPE_NONE 无错误。
TX_VOD_PLAYER_PIP_ERROR_TYPE_DEVICE_NOT_SUPPORT 设备或系统版本不支持(iPad iOS9+ 才支持 PIP)。
TX_VOD_PLAYER_PIP_ERROR_TYPE_PLAYER_NOT_SUPPORT 播放器不支持。
TX_VOD_PLAYER_PIP_ERROR_TYPE_VIDEO_NOT_SUPPORT 视频不支持。
TX_VOD_PLAYER_PIP_ERROR_TYPE_PIP_IS_NOT_POSSIBLE PIP 控制器不可用。
TX_VOD_PLAYER_PIP_ERROR_TYPE_ERROR_FROM_SYSTEM PIP 控制器报错。
TX_VOD_PLAYER_PIP_ERROR_TYPE_PLAYER_NOT_EXIST 播放器对象不存在。
TX_VOD_PLAYER_PIP_ERROR_TYPE_PIP_IS_RUNNING PIP 功能已经运行。
TX_VOD_PLAYER_PIP_ERROR_TYPE_PIP_NOT_RUNNING PIP 功能没有启动。

画中画控制器状态

详细信息可参见 画中画控制器状态

枚举值 含义
TX_VOD_PLAYER_PIP_STATE_UNDEFINED 未设置状态。
TX_VOD_PLAYER_PIP_STATE_WILL_START 画中画即将开始。
TX_VOD_PLAYER_PIP_STATE_DID_START 画中画已经开始。
TX_VOD_PLAYER_PIP_STATE_WILL_STOP 画中画即将结束。
TX_VOD_PLAYER_PIP_STATE_DID_STOP 画中画已经结束。
TX_VOD_PLAYER_PIP_STATE_RESTORE_UI 重置 UI。



云点播官网1折活动,限时活动,即将结束,速速收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利。同意关联立享优惠

转转请注明出处:https://www.yunxiaoer.com/144024.html

(0)
上一篇 2023年12月9日 上午1:40
下一篇 2023年12月9日
详情页2

相关推荐

  • 腾讯云原生分布式云中心云原生分布式云中心开源声明同尘

    The Tencent Kubernetes Engine Distributed Cloud Center project is built on and with the aid of the following open source projects. Credits are given to these projects. Open Source …

    腾讯云 2023年12月9日
  • 腾讯云对象存储图片文字识别(OCR)

    简介 本文档提供关于通用文字识别的 API 概览和 SDK 示例代码。 API 说明 通用文字识别 通用文字识别功能将图片上的文字内容,智能识别为可编辑的文本。 通用文字识别 功能说明 通用文字识别功能(Optical Character Recognition,OCR)基于行业前沿的深度学习技术,将图片上的文字内容,智能识别为可编辑的文本,可应用于随手拍扫…

    腾讯云 2023年12月9日
  • 腾讯云容器服务tke-monitor-agent 说明同尘科技

    组件介绍 为了提升容器服务基础监控及告警服务的稳定性,腾讯云升级了基础监控服务架构。新版基础监控会在用户集群的 kube-system 命名空间下部署一个 DaemonSet,名称为 tke-monitor-agent,并创建对应的认证授权 K8s 资源对象 ClusterRole、ServiceAccount、ClusterRoleBinding,名称均为…

    2023年12月9日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • dataworks 同步mysql 一选数据源就没有表了?-云小二-阿里云

    dataworks 同步mysql 一选数据源就没有表了?

    阿里云 2023年12月23日
  • 腾讯云轻量应用服务器关于多个实例套餐带宽提升公告云小二

    腾讯云轻量应用服务器 TencentCloud Lighthouse 于2021年7月9日起,提升部分中国内地地域(北京、上海、广州、成都、南京)实例套餐带宽。此次调整涵盖新购及存量应用服务器实例,其中:新购轻量应用服务器实例:实例套餐带宽于2021年7月9日调整完毕,且购买时实例套餐价格不变。存量轻量应用服务器实例:实例套餐带宽于2021年7月9日 &#8…

    腾讯云 2023年12月9日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。