腾讯云直播播放器
主要负责从指定的直播流地址拉取音视频数据,并进行解码和本地渲染播放。
播放器包含如下能力:
- 支持 RTMP, HTTP-FLV, TRTC 以及 WebRTC;
- 屏幕截图,可以截取当前直播流的视频画面;
- 延时调节,可以设置播放器缓存自动调整的最小和最大时间;
- 自定义的视频数据处理,您可以根据项目需要处理直播流中的视频数据后,再进行渲染以及播放。
◆ com::tencent::live2::V2TXLivePlayer
class com::tencent::live2::V2TXLivePlayer |
◆ enableObserveVideoFrame()
开启/关闭对视频帧的监听回调。
SDK 在您开启次此开关后将不再渲染视频画面,您可以通过 V2TXLivePlayerObserver 获得视频帧,并执行自定义的渲染逻辑。
- 参数
-
- 返回
- 返回值 V2TXLiveCode
- V2TXLIVE_OK: 成功
- V2TXLIVE_ERROR_NOT_SUPPORTED: 像素格式或者数据格式不支持
◆ enableReceiveSeiMessage()
abstract int enableReceiveSeiMessage |
( |
boolean |
enable, |
|
|
int |
payloadType |
|
) |
| |
|
abstract |
开启接收 SEI 消息
- 参数
-
enable | true: 开启接收 SEI 消息; false: 关闭接收 SEI 消息。【默认值】: false |
payloadType | 指定接收 SEI 消息的 payloadType,支持 5、242,请与发送端的 payloadType 保持一致。 |
- 返回
- 返回值 V2TXLiveCode
◆ enableVolumeEvaluation()
abstract int enableVolumeEvaluation |
( |
int |
intervalMs | ) |
|
|
abstract |
◆ isPlaying()
abstract int isPlaying |
( |
| ) |
|
|
abstract |
◆ pauseAudio()
abstract int pauseAudio |
( |
| ) |
|
|
abstract |
◆ pauseVideo()
abstract int pauseVideo |
( |
| ) |
|
|
abstract |
◆ resumeAudio()
abstract int resumeAudio |
( |
| ) |
|
|
abstract |
◆ resumeVideo()
abstract int resumeVideo |
( |
| ) |
|
|
abstract |
◆ setCacheParams()
abstract int setCacheParams |
( |
float |
minTime, |
|
|
float |
maxTime |
|
) |
| |
|
abstract |
设置播放器缓存自动调整的最小和最大时间 ( 单位:秒 )。
- 参数
-
minTime | 缓存自动调整的最小时间,取值需要大于0。【默认值】:1 |
maxTime | 缓存自动调整的最大时间,取值需要大于0。【默认值】:5 |
- 返回
- 返回值 V2TXLiveCode
- V2TXLIVE_OK: 成功
- V2TXLIVE_ERROR_INVALID_PARAMETER: 操作失败,minTime 和 maxTime 需要大于0
- V2TXLIVE_ERROR_REFUSED: 播放器处于播放状态,不支持修改缓存策略
◆ setObserver()
设置播放器回调。
通过设置回调,可以监听 V2TXLivePlayer 播放器的一些回调事件, 包括播放器状态、播放音量回调、音视频首帧回调、统计数据、警告和错误信息等。
- 参数
-
◆ setPlayoutVolume()
abstract int setPlayoutVolume |
( |
int |
volume | ) |
|
|
abstract |
设置播放器音量。
- 参数
-
volume | 音量大小,取值范围0 - 100。【默认值】: 100 |
- 返回
- 返回值 V2TXLiveCode
◆ setProperty()
abstract int setProperty |
( |
String |
key, |
|
|
Object |
value |
|
) |
| |
|
abstract |
调用 V2TXLivePlayer 的高级 API 接口。
- 注意
- 该接口用于调用一些高级功能。
- 参数
-
key | 高级 API 对应的 key。 |
value | 调用 key 所对应的高级 API 时,需要的参数。 |
- 返回
- 返回值 V2TXLiveCode
- V2TXLIVE_OK: 成功
- V2TXLIVE_ERROR_INVALID_PARAMETER: 操作失败,key 不允许为 null
◆ setRenderFillMode()
设置画面的填充模式。
- 参数
-
mode | 画面填充模式 V2TXLiveFillMode。
- V2TXLiveFillModeFill 【默认值】: 图像铺满屏幕,不留黑边,如果图像宽高比不同于屏幕宽高比,部分画面内容会被裁剪掉
- V2TXLiveFillModeFit: 图像适应屏幕,保持画面完整,但如果图像宽高比不同于屏幕宽高比,会有黑边的存在
|
- 返回
- 返回值 V2TXLiveCode
◆ setRenderRotation()
设置播放器画面的旋转角度。
- 参数
-
rotation | 旋转角度 V2TXLiveRotation
- V2TXLiveRotation0【默认值】: 0度, 不旋转
- V2TXLiveRotation90: 顺时针旋转90度
- V2TXLiveRotation180: 顺时针旋转180度
- V2TXLiveRotation270: 顺时针旋转270度
|
- 返回
- 返回值 V2TXLiveCode
◆ setRenderView() [1/3]
abstract int setRenderView |
( |
SurfaceView |
view | ) |
|
|
abstract |
◆ setRenderView() [2/3]
abstract int setRenderView |
( |
TextureView |
view | ) |
|
|
abstract |
◆ setRenderView() [3/3]
abstract int setRenderView |
( |
TXCloudVideoView |
view | ) |
|
|
abstract |
◆ showDebugView()
abstract void showDebugView |
( |
boolean |
isShow | ) |
|
|
abstract |
◆ snapshot()
abstract int snapshot |
( |
| ) |
|
|
abstract |
截取播放过程中的视频画面。
- 返回
- 返回值 V2TXLiveCode
- V2TXLIVE_OK: 成功
- V2TXLIVE_ERROR_REFUSED: 播放器处于停止状态,不允许调用截图操作
◆ startLivePlay()
abstract int startLivePlay |
( |
String |
url | ) |
|
|
abstract |
开始播放音视频流。
- 注意
- 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()
abstract int stopPlay |
( |
| ) |
|
|
abstract |