TXLivePlayer
视频播放器
主要负责将直播流的音视频画面进行解码和本地渲染,包含如下技术特点:
针对腾讯云的拉流地址,可使用低延时拉流,实现直播连麦等相关场景。
针对腾讯云的拉流地址,可使用直播时移功能,能够实现直播观看与时移观看的无缝切换。
支持自定义的音视频数据处理,让您可以根据项目需要处理直播流中的音视频数据后,进行渲染以及播放。
SDK 基础函数
API | 描述 |
设置播放回调,见 TXLivePlayListener.h 文件中的详细定义。 | |
设置视频处理回调,见 TXVideoCustomProcessDelegate.h 文件中的详细定义。 | |
设置音频处理回调,见 TXAudioRawDataDelegate.h 文件中的详细定义。 | |
是否开启硬件加速,默认值:NO。 | |
设置短视频录制回调,见 TXLiveRecordListener.h 文件中的详细定义。 | |
startLivePlay 后是否立即播放,默认 YES,只有点播有效。 |
播放基础接口
API | 描述 |
创建 Video 渲染 View,该控件承载着视频内容的展示。 | |
移除 Video 渲染 Widget。 | |
启动从指定 URL 播放 RTMP 音视频流。10.7 版本开始, startPlay 变更为 startLivePlay ,需要通过 V2TXLivePremier#setLicence 或者 TXLiveBase#setLicence 设置 License 后方可成功播放,否则将播放失败(黑屏),全局仅设置一次即可。直播 License、短视频 License 和视频播放 License 均可使用,若您暂未获取上述 License ,可 快速免费申请测试版 License 以正常播放,正式版 License 需 购买。 | |
停止播放音视频流。 | |
是否正在播放。 | |
暂停播放。 | |
继续播放,适用于点播,直播。 |
视频相关接口
API | 描述 |
设置画面的方向。 | |
设置画面的裁剪模式。 | |
截屏。 |
音频相关接口
API | 描述 |
设置静音。 | |
设置音量。 | |
设置声音播放模式(切换扬声器,听筒)。 | |
设置音量大小回调接口。 |
直播时移相关接口
API | 描述 |
直播时移准备,拉取该直播流的起始播放时间。 | |
停止时移播放,返回直播。 | |
- |
视频录制相关接口
API | 描述 |
开始录制短视频。 | |
结束录制短视频。 | |
设置播放速率。 |
更多实用接口
API | 描述 |
设置状态浮层 view 在渲染 view 上的边距。 | |
是否显示播放状态统计及事件消息浮层 view。 | |
FLV 直播无缝切换。 | |
调用实验性 API 接口。 |
枚举值
枚举 | 描述 |
支持的直播和点播类型。 |
TXLivePlayConfig
腾讯云直播播放器的参数配置模块
TXLivePlayListener
腾讯云直播播放的回调通知
API | 描述 |
直播事件通知。 | |
网络状态通知。 |
TXLivePush
直播推流类
主要负责将本地的音视频画面进行编码和 RTMP 推送,包含如下技术特点:
针对腾讯云的推流地址,会采用 QUIC 协议进行加速,配合改进后的 BBR2 带宽测算方案,可以最大限度的利用主播的上行带宽,降低直播卡顿率。
内嵌套的 Qos 流量控制技术具备上行网络自适应能力,可以根据主播端网络的具体情况实时调节音视频数据量。
内嵌多套美颜磨皮算法(自然和光滑)和多款色彩空间滤镜(支持自定义滤镜),可以根据需要自行选择。
商业版包含了基于优图 AI 识别技术的大眼、瘦脸、隆鼻以及动效挂架,只需要购买优图 License 就可以零成本集成。
支持自定义的音视频采集和渲染,让您可以根据项目需要选择自己的音视频数据源。
SDK 基础函数
API | 描述 |
设置推流回调接口,见 TXLivePushListener.h 文件中的详细定义。 | |
创建 TXLivePusher 示例。 |
推流基础接口
API | 描述 |
获取当前推流的 RTMP 地址。 | |
启动摄像头预览。 | |
停止摄像头预览。 | |
启动 RTMP 推流。 | |
停止 RTMP 推流。 | |
暂停摄像头采集并进入垫片推流状态。 | |
恢复摄像头采集并结束垫片推流状态。 | |
查询是否正在推流。 |
视频相关接口
API | 描述 |
查询当前是否为前置摄像头。 | |
设置视频编码质量。 | |
切换前后摄像头(iOS)。 | |
选择摄像头(macOS)。 | |
设置视频镜像效果。 | |
设置本地摄像头预览画面的旋转方向。 | |
打开后置摄像头旁边的闪光灯。 | |
调整摄像头的焦距。 | |
设置手动对焦区域。 |
美颜相关接口
API | 描述 |
音频相关接口
API | 描述 |
开启静音。 | |
播放背景音乐。 | |
播放背景音乐(高级版本)。 | |
停止播放背景音乐。 | |
暂停播放背景音乐。 | |
继续播放背景音乐。 | |
获取背景音乐文件的总时长,单位:毫秒。 | |
设置混音时背景音乐的音量大小,仅在播放背景音乐混音时使用。 | |
设置混音时麦克风音量大小,仅在播放背景音乐混音时使用。 | |
调整背景音乐的音调高低。 | |
设置混响效果。 | |
设置变声类型。 |
本地录制接口
API | 描述 |
录制回调接口,详见 TXLiveRecordTypeDef.h 中的 TXLiveRecordListener 定义。 | |
开始录制短视频。 | |
- | |
推流过程中本地截图。 |
自定义采集和处理
API | 描述 |
自定义视频处理回调。 | |
自定义音频处理回调。 | |
自定义视频采集,向 SDK 发送自己采集的视频数据。 | |
自定义音频采集,向 SDK 发送自己采集的音频 PCM 数据。 | |
自定义音频采集,向 SDK 发送自己采集的音频数据。 | |
要求 SDK 发送静音数据。 |
更多实用接口
API | 描述 |
发送 SEI 消息,播放端(TXLivePlayer)通过 onPlayEvent(EVT_PLAY_GET_MESSAGE)来接收该消息。 | |
- | |
打开包含视频状态信息的调试浮层,该浮层一般用于 SDK 调试期间,外发版本请不要打开。 | |
设置调试浮层在视频 view 上的位置。 | |
设置推流是否覆盖时钟。 | |
获取当前推流画面是否有覆盖时钟。 |
TXLivePushConfig
腾讯云直播推流用 RTMP SDK 的参数配置模块
主要负责 TXLivePusher 对应的参数设置,其中绝大多数设置项在推流开始之后再设置是无效的。
TXLivePushListener
腾讯云直播推流的回调通知
API | 描述 |
事件通知。 | |
状态通知。 |
MLVBLiveRoom
腾讯云直播 SDK- 连麦直播间
基于云直播、云点播(VOD) 和即时通信(IM)三大 PAAS 服务组合而成,支持:
主播创建新的直播间开播,观众进入直播间观看。
主播和观众进行视频连麦互动。
两个不同房间的主播 PK 互动。
每一个直播间都有一个不限制房间人数的聊天室,支持发送各种文本消息和自定义消息,自定义消息可用于实现弹幕、点赞和礼物。
连麦直播间(MLVBLiveRoom)是一个开源的 Class,依赖两个腾讯云的闭源 SDK:
LiteAVSDK:使用了其中的 TXLivePusher 和 TXLivePlayer 两个组件,前者用于推流,后者用于拉流。
IM SDK:使用 IM SDK 的 AVChatroom 用于实现直播聊天室的功能,同时,主播间的连麦流程也是依靠 IM 消息串联起来的。
SDK 基础函数
API | 描述 |
设置驱动回调函数的 GCD 队列。 | |
登录。 | |
登出。 | |
修改个人信息。 |
房间相关接口函数
API | 描述 |
获取房间列表。 | |
获取观众列表。 | |
创建房间(主播调用)。 | |
进入房间(观众调用)。 | |
离开房间。 | |
设置当前房间的扩展信息字段。 | |
获取当前房间的扩展信息字段。 |
主播和观众连麦
API | 描述 |
观众请求连麦。 | |
主播处理连麦请求。 | |
进入连麦状态。 | |
观众退出连麦。 | |
主播踢除连麦观众。 |
主播跨房间 PK
API | 描述 |
请求跨房 PK。 | |
响应跨房 PK 请求。 | |
退出跨房 PK。 |
视频相关接口函数
API | 描述 |
开启本地视频的预览画面。 | |
停止本地视频采集及预览。 | |
启动渲染远端视频画面。 | |
停止渲染远端视频画面。 | |
设置观众端镜像效果。 |
音频相关接口函数
API | 描述 |
是否屏蔽本地音频。 | |
设置指定用户是否静音。 | |
设置所有远端用户是否静音。 |
摄像头相关接口函数
API | 描述 |
切换前后摄像头。 | |
主播屏蔽摄像头期间需要显示的等待图片。 | |
调整焦距。 | |
打开闪光灯。 | |
设置手动对焦区域。 |
美颜滤镜相关接口函数
API | 描述 |
消息发送接口函数
API | 描述 |
发送文本消息。 | |
发送自定义文本消息。 |
背景混音相关接口函数
API | 描述 |
播放背景音乐。 | |
播放背景音乐(高级版本)。 | |
停止播放背景音乐。 | |
暂停播放背景音乐。 | |
继续播放背景音乐。 | |
获取音乐文件总时长,单位毫秒。 | |
设置麦克风的音量大小,播放背景音乐混音时使用,用来控制麦克风音量大小。 | |
设置背景音乐的音量大小,播放背景音乐混音时使用,用来控制背景音音量大小。 | |
调整背景音乐的音调高低。 | |
设置混响效果。 | |
设置变声类型。 |
调试相关接口函数
API | 描述 |
在渲染 view 上显示播放或推流状态统计及事件消息浮层。 |
MLVBLiveRoomDelegate
MLVBLiveRoom 事件回调
包括房间关闭、Debug 事件信息、出错说明等。
通用事件回调
API | 描述 |
错误回调。 | |
警告回调。 | |
Log 回调。 |
房间事件回调
API | 描述 |
房间被销毁的回调。 |
主播和观众的进出事件回调
API | 描述 |
收到新主播进房通知。 | |
收到主播退房通知。 | |
收到观众进房通知。 | |
收到观众退房通知。 |
主播和观众连麦事件回调
API | 描述 |
主播收到观众连麦请求时的回调。 | |
连麦观众收到被踢出连麦的通知。 |
主播 PK 事件回调
API | 描述 |
收到请求跨房 PK 通知。 | |
收到断开跨房 PK 通知。 |
消息事件回调
API | 描述 |
收到文本消息。 | |
收到自定义消息。 |