Agora 针对音视频直播场景提供旁路推流服务,能将主播的音视频流由 Agora 私有协议转换为标准协议(RTMP 和 RTMPS),然后推到 CDN。CDN 观众点击对应的 URL 即可观看直播。该功能可以丰富直播媒体流的分发渠道,利于推广直播。
你可以通过 RESTful API 在服务端实现旁路推流,也可以通过 Agora SDK 提供的 API 在客户端实现旁路推流。
Agora 旁路推流根据直播场景提供不同的推流方式:
适用场景 | 推流方式 |
---|---|
单主播 | 不转码推流。旁路推流服务向 CDN 推送一路媒体流,无需转码。 |
多主播连麦 | 转码推流。旁路推流服务将多路音视频流合成一路音视频流并推送至 CDN,保障观众看到的多位主播直播的同步性。 |
你可以使用旁路推流的转码推流功能将多主播的音视频流通过标准协议(如 RTMP、RTMPS)推送到 CDN。
转码功能本质是一个编解码的功能,用于将多路音视频流合成一路音视频流,使用转码功能时,你可以自定义以下内容:
字段 | 描述 |
---|---|
transcodeOptions.audioOptions.sampleRate | 音频编码采样率 |
transcodeOptions.audioOptions.bitrate | 音频编码码率 |
transcodeOptions.audioOptions.codecProfile | 音频编解码规格 |
transcodeOptions.audioOptions.audioChannels | 音频声道数 |
transcodeOptions.videoOptions.bitrate | 视频编码码率 |
transcodeOptions.videoOptions.frameRate | 视频编码帧率 |
transcodeOptions.videoOptions.gop | 视频 GOP |
transcodeOptions.videoOptions.codec | 视频编解码规格 |
transcodeOptions.videoOptions.codecProfile | 视频的编码规格 |
transcodeOptions.videoOptions.seiOptions | 输出视频中携带的用户 SEI 信息。用于向 CDN 发送用户自定义的 SEI 信息。 |
transcodeOptions.videoOptions.canvas | 每个主播的视频画面尺寸及背景色 |
transcodeOptions.videoOptions.layout | 多个主播的视频画面布局 |
transcodeOptions.videoOptions.layout.ImageView 元素 | 直播水印 |
你可以使用旁路推流的不转码推流功能将单个主播的音视频流通过标准协议(如 RTMP、RTMPS)推送到 CDN。