腾讯云直播播放器。
主要负责从指定的直播流地址拉取音视频数据,并进行解码和本地渲染播放。
播放器包含如下能力:
- 支持 RTMP, HTTP-FLV, TRTC 以及 WebRTC;
- 屏幕截图,可以截取当前直播流的视频画面;
- 延时调节,可以设置播放器缓存自动调整的最小和最大时间;
- 自定义的视频数据处理,您可以根据项目需要处理直播流中的视频数据后,再进行渲染以及播放。
◆ V2TXLivePlayer-p
protocol V2TXLivePlayer-p |
◆ enableObserveVideoFrame:pixelFormat:bufferType:()
开启/关闭对视频帧的监听回调。
SDK 在您开启次此开关后将不再渲染视频画面,您可以通过 V2TXLivePlayerObserver 获得视频帧,并执行自定义的渲染逻辑。
- 参数
-
- 返回
- 返回值 V2TXLiveCode
- V2TXLIVE_OK: 成功
- V2TXLIVE_ERROR_NOT_SUPPORTED: 像素格式或者数据格式不支持
◆ enableReceiveSeiMessage:payloadType:()
- (V2TXLiveCode) enableReceiveSeiMessage: |
|
(BOOL) |
enable |
payloadType: |
|
(int) |
payloadType |
|
|
| |
开启接收 SEI 消息
- 参数
-
enable | YES: 开启接收 SEI 消息; NO: 关闭接收 SEI 消息。【默认值】: NO |
payloadType | 指定接收 SEI 消息的 payloadType,支持 5、242,请与发送端的 payloadType 保持一致。 |
- 返回
- 返回值 V2TXLiveCode
◆ enableVolumeEvaluation:()
- (V2TXLiveCode) enableVolumeEvaluation: |
|
(NSUInteger) |
intervalMs |
|
启用播放音量大小提示。
开启后可以在 V2TXLivePlayerObserver::onPlayoutVolumeUpdate:volume: "onPlayoutVolumeUpdate" 回调中获取到 SDK 对音量大小值的评估。
- 参数
-
intervalMs | 决定了 onPlayoutVolumeUpdate 回调的触发间隔,单位为ms,最小间隔为100ms,如果小于等于0则会关闭回调,建议设置为300ms;【默认值】:0,不开启 |
- 返回
- 返回值 V2TXLiveCode
◆ isPlaying()
◆ pauseAudio()
◆ pauseVideo()
◆ resumeAudio()
◆ resumeVideo()
◆ setCacheParams:maxTime:()
- (V2TXLiveCode) setCacheParams: |
|
(CGFloat) |
minTime |
maxTime: |
|
(CGFloat) |
maxTime |
|
|
| |
设置播放器缓存自动调整的最小和最大时间 ( 单位:秒 )。
- 参数
-
minTime | 缓存自动调整的最小时间,取值需要大于0。【默认值】:1 |
maxTime | 缓存自动调整的最大时间,取值需要大于0。【默认值】:5 |
- 返回
- 返回值 V2TXLiveCode
- V2TXLIVE_OK: 成功
- V2TXLIVE_ERROR_INVALID_PARAMETER: 操作失败,minTime 和 maxTime 需要大于0
- V2TXLIVE_ERROR_REFUSED: 播放器处于播放状态,不支持修改缓存策略
◆ setObserver:()
设置播放器回调。
通过设置回调,可以监听 V2TXLivePlayer 播放器的一些回调事件, 包括播放器状态、播放音量回调、音视频首帧回调、统计数据、警告和错误信息等。
- 参数
-
◆ setPlayoutVolume:()
设置播放器音量。
- 参数
-
volume | 音量大小,取值范围0 - 100。【默认值】: 100 |
- 返回
- 返回值 V2TXLiveCode
◆ setProperty:value:()
- (V2TXLiveCode) setProperty: |
|
(NSString *) |
key |
value: |
|
(NSObject *) |
value |
|
|
| |
调用 V2TXLivePlayer 的高级 API 接口。
- 注意
- 该接口用于调用一些高级功能。
- 参数
-
key | 高级 API 对应的 key。 |
value | 调用 key 所对应的高级 API 时,需要的参数。 |
- 返回
- 返回值 V2TXLiveCode
- V2TXLIVE_OK: 成功
- V2TXLIVE_ERROR_INVALID_PARAMETER: 操作失败,key 不允许为 nil
◆ setRenderFillMode:()
设置画面的填充模式。
- 参数
-
mode | 画面填充模式 V2TXLiveFillMode。
- V2TXLiveFillModeFill 【默认值】: 图像铺满屏幕,不留黑边,如果图像宽高比不同于屏幕宽高比,部分画面内容会被裁剪掉
- V2TXLiveFillModeFit: 图像适应屏幕,保持画面完整,但如果图像宽高比不同于屏幕宽高比,会有黑边的存在
|
- 返回
- 返回值 V2TXLiveCode
◆ setRenderRotation:()
设置播放器画面的旋转角度。
- 参数
-
rotation | 旋转角度 V2TXLiveRotation
- V2TXLiveRotation0【默认值】: 0度, 不旋转
- V2TXLiveRotation90: 顺时针旋转90度
- V2TXLiveRotation180: 顺时针旋转180度
- V2TXLiveRotation270: 顺时针旋转270度
|
- 返回
- 返回值 V2TXLiveCode
◆ setRenderView:()
◆ showDebugView:()
- (void) showDebugView: |
|
(BOOL) |
isShow |
|
◆ snapshot()
截取播放过程中的视频画面。
- 返回
- 返回值 V2TXLiveCode
- V2TXLIVE_OK: 成功
- V2TXLIVE_ERROR_REFUSED: 播放器处于停止状态,不允许调用截图操作
◆ startLivePlay:()
开始播放音视频流。
- 注意
- 10.7版本开始,需要通过 V2TXLivePremier#setLicence 或 TXLiveBase#setLicence 设置 Licence 后方可成功播放, 否则将播放失败(黑屏),全局仅设置一次即可。直播 Licence、短视频 Licence 和视频播放 Licence 均可使用,若您暂未获取上述 Licence ,可快速免费申请测试版 Licence 以正常播放,正式版 License 需购买。
- 参数
-
url | 音视频流的播放地址,支持 RTMP, HTTP-FLV, TRTC。 |
- 返回
- 返回值 V2TXLiveCode
- V2TXLIVE_OK: 操作成功,开始连接并播放
- V2TXLIVE_ERROR_INVALID_PARAMETER: 操作失败,url 不合法
- V2TXLIVE_ERROR_REFUSED: RTC 不支持同一设备上同时推拉同一个 StreamId
- TXLIVE_ERROR_INVALID_LICENSE:licence 不合法,播放失败
◆ stopPlay()