视频直播 SDK 是一款专属直播业务场景的自研软件开发工具集,已为抖音、西瓜、今日头条等全线产品提供了直播的底层能力支持。具有高稳定性,功能丰富,接入简单的特点。
SDK 最新版本号:当前 SDK 版本在不断迭代发布中,推荐使用最新版本 SDK。
平台 | 集成 SDK | SDK 最新版本号 |
|---|---|---|
Android | 1.50.2.8 | |
iOS | 1.50.2.4-premium | |
React Native | 1.1.1 | |
HarmonyOS NEXT(鸿蒙星河版) | 3.4.1-tob | |
Flutter 拉流 SDK | 1.47.3 | |
uni-app 拉流 SDK | 1.0.0 |
SDK 版本信息:发布历史
SDK 隐私政策:视频直播服务 SDK 隐私政策
开发者使用合规规范:视频直播服务 SDK 开发者使用合规规范
视频直播 SDK 签发的 License 分为基础版、高级版和试用版三种。
直播拉流 SDK 所支持的功能与版本和 License 对应关系如下表所示。
功能 | 说明 | Android & iOS | Flutter | React Native | HarmonyOS NEXT(鸿蒙星河版) | |
|---|---|---|---|---|---|---|
播放格式 | FLV | 支持播放 FLV 流,延时 6-10 秒。 | 支持 | 支持 | 支持 | 支持 |
FLV(低延时) | 支持播放 FLV 流,延时约 2 秒。 | 仅高级版或试用版 License 支持 | 不支持 | 不支持 | 不支持 | |
HLS | 支持播放 HLS 流。 | 支持 | 支持 | 支持 | 支持 | |
RTM | 支持播放 RTM 流。 说明 不支持纯音频或纯视频流。 | 仅高级版或试用版 License 支持 | 支持 | 支持 | 不支持 | |
RTMP | 支持播放 RTMP 流。 | 支持 | 支持 | 支持 | 支持 | |
传输协议 | TCP | 支持 TCP 协议。 | 支持 | 支持 | 支持 | 支持 |
QUIC | 支持 QUIC 协议。 | 仅高级版或试用版 License 支持 | 支持 | 支持 | 不支持 | |
TLS | 支持 TLS 协议。 | 支持 | 支持 | 支持 | 支持 | |
HTTP 2.0 | 支持 HTTP 2.0 协议。 说明 不支持 RTM 流。 | 支持 | 支持 | 支持 | 不支持 | |
HTTP Header | 请求视频资源时,支持自定义 HTTP Headers 内容。 | 支持 | 不支持 | 支持 | 不支持 | |
视频解码 | H.264 硬解 | 支持 H.264 硬解。 | 支持 | 支持 | 支持 | 支持 |
H.264 软解 | 支持 H.264 软解。 | 支持 | 支持 | 支持 | 支持 | |
H.265 硬解 | 支持 H.265 硬解。 | 仅高级版或试用版 License 支持 | 仅高级版或试用版 License 支持 | 仅高级版或试用版 License 支持 | 仅高级版或试用版 License 支持 | |
H.265 软解 | 支持 H.265 软解。 | 仅高级版或试用版 License 支持 | 仅高级版或试用版 License 支持 | 仅高级版或试用版 License 支持 | 仅高级版或试用版 License 支持 | |
H.265 降级 | 当 H.265 硬解播放失败时,系统会自动采取降级策略。如果已设置 H.264 备流,系统将自动切换到播放 H.264 备流。若未设置 H.264 备流,则系统将尝试使用 H.265 软解进行播放。 | 支持 | 支持 | 支持 | 不支持 | |
H.266 软解 | 支持 H.266 软解。 |
| 不支持 | 不支持 | 不支持 | |
AAC-HE | 支持 AAC-HE 音频编码格式。 | 支持 | 支持 | 支持 | 支持 | |
AAC-LC | 支持 AAC-LC 音频编码格式。 | 支持 | 支持 | 支持 | 支持 | |
播放控制 | 开始、停止播放 | 支持开始或停止播放。 | 支持 | 支持 | 支持 | 支持 |
暂停、恢复播放 | 支持暂停或恢复播放。 | 支持 | 支持 | 支持 | 支持 | |
获取当前播放状态 | 支持获取当前的播放状态。 | 支持 | 支持 | 支持 | 支持 | |
手动切换清晰度 | 支持多个档位清晰度之间的手动切换。 | 支持 | 不支持 | 支持 | 不支持 | |
设置播放器缓存时间 | 播放器预先下载一定量的数据,以确保播放的连续性和流畅性。缓存时间越长,播放器在遇到网络波动或延迟时,就能更好地维持视频或音频的播放不中断。 说明 如需实现该功能,请提交工单联系视频直播技术支持。 | 支持 | 不支持 | 支持 | 支持 | |
视频效果 | 配置渲染 View | 配置渲染 View,展示播放器的视频画面。 | 支持 | 支持 | 支持 | 支持 |
画面填充模式 | 支持调整播放画面的填充模式。 | 支持 | 支持 | 支持 | 支持 | |
画面旋转角度 | 支持配置播放画面的旋转角度,支持将画面顺时针旋转 0°、90°、180° 和 270°。 | 支持 | 支持 | 支持 | 不支持 | |
镜像 | 支持配置播放画面的镜像模式,例如水平镜像、垂直镜像。 | 支持 | 不支持 | 支持 | 不支持 | |
画中画播放 | 通过将播放器窗口缩小并置于界面一角,允许观众在观看直播的同时浏览其他内容或打开其他应用,从而提升用户体验。 说明 如需实现该功能,请提交工单联系视频直播技术支持。 | 支持 | 不支持 | 支持 | 支持 | |
SDR 视频播放 | 支持播放 SDR(Standard Dynamic Range,标准动态范围)视频。 | 支持 | 支持 | 支持 | 不支持 | |
拉流超分 | 超分,即超分辨率技术(Super-Resolution, SR),指从观测到的低分辨率图像重建出相应的高分辨率图像的过程。移动端实时超分,指利用算法技术在端上对低分辨率的帧进行实时重建,产生高分辨率的帧显示在屏幕上,从而改善视频内容的细节与对比度,全面提升视频的播放清晰度和观看体验的优化手段。 | 仅高级版或试用版 License 支持 | 不支持 | 仅高级版或试用版 License 支持 | 不支持 | |
视频锐化 | 视频锐化是一种图像处理技术,用于增强视频画面的清晰度和细节。通过锐化处理,可以使视频中的边缘和细节更加突出,使画面看起来更加清晰和生动。 | 仅高级版或试用版 License 支持 | 不支持 | 支持 | 不支持 | |
音频效果 | 音量调节 | 支持调整播放音量。 | 支持 | 支持 | 支持 | 支持 |
静音 | 支持静音播放。 | 支持 | 支持 | 支持 | 支持 | |
获取静音状态 | 支持获取当前是否为静音状态。 | 支持 | 支持 | 支持 | 支持 | |
后台保持音频播放 | 应用切换到后台时,支持继续播放音频。 | 支持 | 支持 | 支持 | 支持 | |
纯音频播放 | 支持播放纯音频。 说明 仅适用于 FLV 流。 | 支持 | 支持 | 支持 | 支持 | |
双声道音频 | 支持播放双声道音频。 | 支持 | 支持 | 支持 | 支持 | |
播放策略 | 播放失败重试 | 当网络异常等导致直播中断时,播放器会尝试重试。 | 支持 | 支持 | 支持 | 支持 |
本地 DNS 预解析 | 开启本地 DNS 预解析可以优化播放器的起播时间。 | 支持 | 支持 | 支持 | 支持 | |
配置一个或多个播放地址 | 支持配置一个或多个播放地址。配置多个播放地址后,可实现 ABR 拉流、主备流切换等依赖多路流的功能。 | 支持 | 支持 | 支持 | 支持 | |
ABR 拉流 | 自适应码率(Adaptive Bit-Rate,简称 ABR)是一种流媒体传输技术,通过一系列算法策略,动态切换不同档位媒体流,以达到适应网络带宽变化,防止观众在观看直播过程产生卡顿,提升播放质量和观看体验。 说明 仅适用于 FLV 流。 | 仅高级版或试用版 License 支持 | 支持 | 支持 | 不支持 | |
IP 地址拉流 | 支持通过设置播放域名的 IP 地址进行拉流,以降低播放首帧时间。 | 支持 | 不支持 | 支持 | 不支持 | |
主备流切换 | 当主流地址拉流失败或播放出错时,播放器会自动切换到备流地址进行播放。当备流地址拉流失败或播放出错时,播放器会切换回主流地址进行播放。 | 仅高级版或试用版 License 支持 | 支持 | 支持 | 支持 | |
多实例 | 支持在一个界面添加多个播放器同时播放。 | 支持 | 支持 | 支持 | 支持 | |
动态追帧 | 在直播过程中,由于网络波动或其他因素,视频流可能会出现延迟或卡顿。动态追帧技术通过调整帧的播放速度或跳过某些帧来追赶实时直播,从而减少延迟。 | 支持 | 支持 | 支持 | 不支持 | |
域名解析 | 支持调用火山引擎 HTTPDNS 服务对拉流地址预解析,以此来降低播放首帧时长。 说明 此为增值能力,需单独开通 HTTPDNS 服务。 | 支持 | 不支持 | 不支持 | 不支持 | |
秒开优化 | 优化首帧时间,实现秒开效果。 说明 如需实现该功能,请提交工单联系视频直播技术支持。 | 支持 | 不支持 | 支持 | 不支持 | |
其他功能 | 截图 | 支持在播放器中截取当前直播画面并生成一张图片。 | 支持 | 不支持 | 支持 | 支持 |
SEI 消息接收 | SEI(Supplemental Enhancement Information,补充增强信息)通过流媒体通道将文本信息与音视频内容打包在一起,从主播端(推流端)推出,并从观众端(拉流端)接收,以此实现文本数据与音视频内容精准同步的目的。 | 仅高级版或试用版 License 支持 | 支持 | 支持 | 仅 FLV 流支持。 | |
配置事件监听 | 通过配置事件监听,可以获取播放器的内部状态信息,包括播放状态、错误信息、音视频首帧回调以及周期性统计数据等。 | 支持 | 支持 | 支持 | 支持 | |
订阅音视频数据 | 通过订阅解码后的音视频数据,可以获取音视频帧数据并进行自定义的处理和渲染操作。 | 支持 | 不支持 | 不支持 | 不支持 | |
质量安全 | 日志上报 | 支持上报 SDK 日志,统计音视频直播相关播放埋点信息。 | 支持 | 支持 | 支持 | 支持 |
客户端 SDK 相关名词的含义请参见名词解释。