腾讯云直播SDKV2TXLivePlayer_音视频解决方案_同尘科技

直播SDK 1年前 (2023-10-19) 浏览 36

Copyright (c) 2021 Tencent. All rights reserved.
Module: V2TXLivePlayer @ TXLiteAVSDK
Function: 腾讯云直播播放器

功能

腾讯云直播播放器。主要负责从指定的直播流地址拉取音视频数据,并进行解码和本地渲染播放。

介绍

播放器包含如下能力: 支持 RTMP、HTTP-FLV、HLS、TRTC、WebRTC 协议。 屏幕截图,可以截取当前直播流的视频画面。 延时调节,可以设置播放器缓存自动调整的最小和最大时间。 自定义的视频数据处理,您可以根据项目需要处理直播流中的视频数据后,再进行渲染以及播放。
V2TXLivePlayer

V2TXLivePlayer

函数列表 描述
setObserver 设置播放器回调
setRenderView 设置播放器的视频渲染 View,该控件负责显示视频内容
setRenderView 设置播放器的视频渲染 View。 该控件负责显示视频内容
setRenderView 设置播放器的视频渲染 View。 该控件负责显示视频内容
setRenderRotation 设置播放器画面的旋转角度
setRenderFillMode 设置画面的填充模式
startLivePlay 开始播放音视频流
stopPlay 停止播放音视频流
isPlaying 播放器是否正在播放中
pauseAudio 暂停播放器的音频流
resumeAudio 恢复播放器的音频流
pauseVideo 暂停播放器的视频流
resumeVideo 恢复播放器的视频流
setPlayoutVolume 设置播放器音量
setCacheParams 设置播放器缓存自动调整的最小和最大时间 ( 单位:秒 )
switchStream 直播流无缝切换,支持 FLV 和 LEB
getStreamList 获取码流信息
enableVolumeEvaluation 启用播放音量大小提示
snapshot 截取播放过程中的视频画面
enableObserveVideoFrame 开启/关闭对视频帧的监听回调
enableObserveAudioFrame 开启/关闭对音频数据的监听回调
enableReceiveSeiMessage 开启接收 SEI 消息
showDebugView 是否显示播放器状态信息的调试浮层
setProperty 调用 V2TXLivePlayer 的高级 API 接口

setObserver

setObserver

void setObserver (V2TXLivePlayerObserver observer)

设置播放器回调

通过设置回调,可以监听 V2TXLivePlayer 播放器的一些回调事件,包括播放器状态、播放音量回调、音视频首帧回调、统计数据、警告和错误信息等。

参数 描述
observer 播放器的回调目标对象,更多信息请查看 V2TXLivePlayerObserver

setRenderView

setRenderView

int setRenderView (TXCloudVideoView view)

设置播放器的视频渲染 View,该控件负责显示视频内容

参数 描述
view 播放器渲染 View。

返回值说明:

返回值 V2TXLiveCode。 V2TXLIVE_OK:成功。

setRenderView

setRenderView

int setRenderView (TextureView view)

设置播放器的视频渲染 View。 该控件负责显示视频内容

参数 描述
view 播放器渲染 View。

返回值说明:

返回值 V2TXLiveCode。 V2TXLIVE_OK:成功。

setRenderView

setRenderView

int setRenderView (SurfaceView view)

设置播放器的视频渲染 View。 该控件负责显示视频内容

参数 描述
view 播放器渲染 View。

返回值说明:

返回值 V2TXLiveCode。 V2TXLIVE_OK:成功。

setRenderRotation

setRenderRotation

int setRenderRotation (V2TXLiveRotation rotation)

设置播放器画面的旋转角度

参数 描述
rotation 旋转角度 V2TXLiveRotation。 V2TXLiveRotation0【默认值】: 0度, 不旋转。 V2TXLiveRotation90: 顺时针旋转90度。 V2TXLiveRotation180: 顺时针旋转180度。 V2TXLiveRotation270: 顺时针旋转270度。

返回值说明:

返回值 V2TXLiveCode。 V2TXLIVE_OK: 成功。

setRenderFillMode

setRenderFillMode

int setRenderFillMode (V2TXLiveFillMode mode)

设置画面的填充模式

参数 描述
mode 画面填充模式 V2TXLiveFillMode。 V2TXLiveFillModeFill 【默认值】: 图像铺满屏幕,不留黑边,如果图像宽高比不同于屏幕宽高比,部分画面内容会被裁剪掉。 V2TXLiveFillModeFit: 图像适应屏幕,保持画面完整,但如果图像宽高比不同于屏幕宽高比,会有黑边的存在。 V2TXLiveFillModeScaleFill: 图像拉伸铺满,因此长度和宽度可能不会按比例变化。

返回值说明:

返回值 V2TXLiveCode。 V2TXLIVE_OK: 成功。

startLivePlay

startLivePlay

int startLivePlay (String url)

开始播放音视频流

参数 描述
url 音视频流的播放地址,支持 RTMP,HTTP-FLV,TRTC。

注意10.7 版本开始,需要通过 setLicence 或者 setLicence 设置 Licence 后方可成功播放,否则将播放失败(黑屏),全局仅设置一次即可。直播 Licence、短视频 Licence 和视频播放 Licence 均可使用,若您暂未获取上述 Licence,可快速免费申请测试版 Licence 以正常播放,正式版 Licence 需购买。

返回值说明:

返回值 V2TXLiveCode。 V2TXLIVE_OK: 操作成功,开始连接并播放。 V2TXLIVE_ERROR_INVALID_PARAMETER:操作失败,url 不合法。 V2TXLIVE_ERROR_REFUSED:RTC 不支持同一设备上同时推拉同一个 StreamId。 V2TXLIVE_ERROR_INVALID_LICENSE:licence 不合法,播放失败。

stopPlay

stopPlay

停止播放音视频流

返回值说明:

返回值 V2TXLiveCode。 V2TXLIVE_OK: 成功。

isPlaying

isPlaying

播放器是否正在播放中

返回值说明:

是否正在播放。 1: 正在播放中。 0: 已经停止播放。

pauseAudio

pauseAudio

暂停播放器的音频流

返回值说明:

返回值 V2TXLiveCode。 V2TXLIVE_OK: 成功。

resumeAudio

resumeAudio

恢复播放器的音频流

返回值说明:

返回值 V2TXLiveCode。 V2TXLIVE_OK: 成功。

pauseVideo

pauseVideo

暂停播放器的视频流

返回值说明:

返回值 V2TXLiveCode。 V2TXLIVE_OK: 成功。

resumeVideo

resumeVideo

恢复播放器的视频流

返回值说明:

返回值 V2TXLiveCode。 V2TXLIVE_OK: 成功。

setPlayoutVolume

setPlayoutVolume

int setPlayoutVolume (int volume)

设置播放器音量

参数 描述
volume 音量大小,取值范围0 – 100。【默认值】: 100。

返回值说明:

返回值 V2TXLiveCode。 V2TXLIVE_OK: 成功。

setCacheParams

setCacheParams

int setCacheParams (float minTime
 float maxTime)

设置播放器缓存自动调整的最小和最大时间 ( 单位:秒 )

参数 描述
maxTime 缓存自动调整的最大时间,取值需要大于0。【默认值】:5。
minTime 缓存自动调整的最小时间,取值需要大于0。【默认值】:1。

返回值说明:

返回值 V2TXLiveCode。 V2TXLIVE_OK: 成功。 V2TXLIVE_ERROR_INVALID_PARAMETER: 操作失败,minTime 和 maxTime 需要大于0。 V2TXLIVE_ERROR_REFUSED: 播放器处于播放状态,不支持修改缓存策略。

switchStream

switchStream

int switchStream (String newUrl)

直播流无缝切换,支持 FLV 和 LEB

参数 描述
newUrl 新的拉流地址。

getStreamList

getStreamList

获取码流信息

enableVolumeEvaluation

enableVolumeEvaluation

int enableVolumeEvaluation (int intervalMs)

启用播放音量大小提示

开启后可以在 V2TXLivePlayerObserver 回调中获取到 SDK 对音量大小值的评估。

参数 描述
intervalMs 决定了 onPlayoutVolumeUpdate 回调的触发间隔,单位为ms,最小间隔为100ms,如果小于等于0则会关闭回调,建议设置为300ms;【默认值】:0,不开启。

返回值说明:

返回值 V2TXLiveCode。 V2TXLIVE_OK: 成功。

snapshot

snapshot

截取播放过程中的视频画面

返回值说明:

返回值 V2TXLiveCode。 V2TXLIVE_OK: 成功。 V2TXLIVE_ERROR_REFUSED: 播放器处于停止状态,不允许调用截图操作。

enableObserveVideoFrame

enableObserveVideoFrame

int enableObserveVideoFrame (boolean enable
 V2TXLivePixelFormat pixelFormat
 V2TXLiveBufferType bufferType)

开启/关闭对视频帧的监听回调

SDK 在您开启此开关后将不再渲染视频画面,您可以通过 V2TXLivePlayerObserver 获得视频帧,并执行自定义的渲染逻辑。

参数 描述
bufferType 自定义渲染回调的视频数据格式 V2TXLiveBufferType。
enable 是否开启自定义渲染。【默认值】:false。
pixelFormat 自定义渲染回调的视频像素格式 V2TXLivePixelFormat。

返回值说明:

返回值 V2TXLiveCode。 V2TXLIVE_OK: 成功。 V2TXLIVE_ERROR_NOT_SUPPORTED: 像素格式或者数据格式不支持。

enableObserveAudioFrame

enableObserveAudioFrame

int enableObserveAudioFrame (boolean enable)

开启/关闭对音频数据的监听回调

如果您开启此开关,您可以通过 V2TXLivePlayerObserver 获得音频数据,并执行自定义的逻辑。

参数 描述
enable 是否开启音频数据回调。【默认值】:false。

返回值说明:

返回值 V2TXLiveCode V2TXLIVE_OK: 成功

enableReceiveSeiMessage

enableReceiveSeiMessage

int enableReceiveSeiMessage (boolean enable
 int payloadType)

开启接收 SEI 消息

参数 描述
enable true: 开启接收 SEI 消息; false: 关闭接收 SEI 消息。【默认值】: false。
payloadType 指定接收 SEI 消息的 payloadType,支持 5、242,请与发送端的 payloadType 保持一致。

返回值说明:

返回值 V2TXLiveCode。 V2TXLIVE_OK: 成功。

showDebugView

showDebugView

void showDebugView (boolean isShow)

是否显示播放器状态信息的调试浮层

参数 描述
isShow 是否显示。【默认值】:false。

setProperty

setProperty

int setProperty (String key
 Object value)

调用 V2TXLivePlayer 的高级 API 接口

参数 描述
key 高级 API 对应的 key。
value 调用 key 所对应的高级 API 时,需要的参数。

注意该接口用于调用一些高级功能。

返回值说明:

返回值 V2TXLiveCode。 V2TXLIVE_OK: 成功。 V2TXLIVE_ERROR_INVALID_PARAMETER: 操作失败,key 不允许为 null。

对音视频的解决方案有疑惑?想了解解决方案收费? 联系解决方案专家

腾讯云限时活动1折起,即将结束: 马上收藏

同尘科技为腾讯云授权服务中心,购买腾讯云享受折上折,更有现金返利:同意关联,立享优惠

阿里云解决方案也看看?: 点击对比阿里云的解决方案

- 0人点赞 -

发表点评 (0条)

not found

暂无评论,你要说点什么吗?