直播推流SDK

阿里云直播推流SDK(ApsaraVideo Push SDK,后续统称“推流SDK”)是MediaBox音视频SDK的子产品之一,提供直播和点播场景中直播推流、主播观众互动连麦、主播跨房PK等功能,具有稳定性高、接入简单、性能优异等特点。通过阅读本文,您可以了解直播推流SDK支持的功能。

核心功能

功能

说明

使用场景

直播推流

支持RTMP和RTS两种方式推流,通过推流优化策略、软硬编码策略等提供稳定、极速的推流体验。

主播开播

直播连麦

支持RTC协议低时延在线连⻨,主播与观众之间音视频连麦的延迟可达400ms以内。

主播-观众连麦、主播跨房间PK

游戏录屏

采集手机画面、系统声音作为直播源。

游戏直播

含UI集成

提供场景化的音视频应用UI组件,公开的Demo源码支持定制化修改。

电商直播、企业直播、直播大班课

详细功能说明

直播推流SDK功能详情如下:

表 1.直播推流

功能

说明

RTMP协议推流

支持RTMP协议直播推流,分辨率支持180P~720P,建议使用540P。

超低延时直播(RTS)协议推流

支持自研的超低延时直播(RTS)协议推流,支持基于UDP协议实现更低延时、更强的弱网抗性。

支持媒体补充增强信息(SEI)功能

媒体补充增强信息(SEI)通过流媒体通道将文本信息与音视频内容打包在一起,从推流端推出,并从拉流端接收,以此实现文本数据与音视频内容的精准同步。

音视频编码协议

支持H.264、H.265视频编码(软编和硬编)和AAC音频编码(软编和硬编)。

动态码率设置

支持根据网络情况自动调整推流码率,支持多种模式设置,使直播更加流畅。

动态分辨率设置

支持根据网络情况自动调整推流分辨率(限清晰度和流畅度模式下使用)。

推流自动重连

支持推流链接失败后自动重连。

摄像头推流

支持摄像头采集开播,支持多摄像头切换。

录屏直播

iOS支持ReplayKit录屏直播,Android支持摄像头混流录屏直播;支持窄带高清,同等码率下画质更佳。

外部源推流

支持输入外部音视频数据流进行直播。

图片推流

支持在切后台时设置图片进行推流,同时也支持在网络非常差的情况下替换为图片推流。

纯音频推流

支持仅采集音频流并发起推流功能,在纯音频场景下节约带宽流量。

后台推流

支持切换到后台后视频流不断,回到前台后继续推流。

表 2. 直播连麦

功能

说明

连麦互动

用于实现主播与观众之间的音视频连麦互动,最多支持1V15。

主播PK

用于实现主播与主播之间的1V1视频PK。

表 3. 含UI集成

功能

说明

AUI Kits

阿里云提供场景化的音视频应用UI组件,公开源码支持定制化修改。

表 4. 视频采集

功能

说明

采集参数设置

支持分辨率、帧率、音频采样率、GOP、码率等多种采集参数设置,满足不同场景下画面采集的需求。

分辨率

支持多档分辨率,以16∶9、4∶3和1∶1多种比例拍摄。

横竖屏

支持竖向、左侧横向和右侧横向三个方向发起推流。

镜像

支持单独设置摄像头采集镜像(需前置摄像头默认开启镜像功能)和推流镜像。

自动和手动对焦

支持开启或关闭自动对焦功能,也可以使用手动对焦。

缩放

支持按摄像头缩放比例缩放采集画面。

闪光灯

支持切换前后置摄像头及开启/关闭闪关灯功能(仅后置)。

拍照

支持拍摄照片。

水印

支持在直播中实时插入或移除带动画效果的水印,可以添加多个水印效果(最多3个),水印支持位置和大小设置。

视频暂停

支持直播中单独暂停音频或视频。

表 5. 音频采集

功能

说明

背景音乐

支持背景音乐播放,包含开始、停止、暂停、继续、循环播放等功能。

音乐升降调

支持音乐改变升降调。

混音

支持音乐和人声混音,分别调整音乐和人声的音量。

耳返

支持耳返功能,例如主播带上耳机唱歌时,从耳机中可以实时听到自己的声音,满足KTV的场景。

静音

支持推流时关闭麦克风,仅推送视频画面的功能。

调整音量

SDK能够自动调节麦克风音量,适应远近拾音,保持音量稳定。

表 6. 音频特效

功能

说明

降噪

支持环境音、手机干扰等引起的噪音降噪处理。

立体声

支持立体声推流,可设置单声道和双声道推流。

变声

拍摄时对录制的声音变声,例如萝莉、大叔等。

混响

通过对声音的特殊处理,可搭配变声、混响以实现自定义多种声音效果,例如空灵、机器人效果。

表 7. 美颜特效

功能

说明

基础美颜

拍摄设置面部磨皮、美白、红润的基础美颜能力。如果您对美妆、贴图等高级美颜特效有需求,需单独购买美颜特效SDK的授权

相关概念参考

直播推流SDK相关概念请参见直播推流SDK