随着直播业务的蓬勃发展,终端受众也并不仅仅满足于围观,希望能够参与主播的音视频对话中来,如现在在各个直播秀场App下所看到的的连麦互动,包括主播之间的才艺游戏恶搞PK等,它能有效的增强直播的趣味性,让观众获得更大的参与满足感。另外非娱乐场景下与此类似的有在线教育的师生交流问答、金融开户的客服视频见证通话录制等。随着连麦互动和云服务的蓬勃发展,云端混流的业务也相应而生。
01 云端混流的优势
观众端观看多个主播画面一般有几种方式,一种是观众段直接拉取多路主播的流,直接观看,不过这样做会拉高平台带宽的成本,对于很多直播平台来说带宽是很大的一块运营成本,另外如果对于录制和HLS的分享观看来说,需要得到完整的多画面视频进行存储、观看,这样也无法满足需求。
另外一种是客户端的混流,是客户端在除了互动的视频协议上传的一路以外,额外将客户端混好的流再推一路到CDN,这样整个混流的过程都在客户端完成,好处是所见基本为所得,带来的问题也不少。一是会引入额外的延迟,因为要拉好其他主播的流进行混合处理后再上传。二是对主播的带宽也带来不小的压力,主播需要同时进行两路的上传,对于户外等场景来说也是很大的问题。三是主播的手机同时要进行多路的音频编解码处理,对手机的性能要求也很高。
而服务端的混流则规避了上述的一些问题,将主要的压力从客户端转移到服务端,另外对于主播来说只需要上传一路视频,也提高了视频传输的质量。
02 云端混流的基本架构
云端混流的主要过程如下:
主播和连麦观众的客户端采集音视频流,分别使用RTMP协议推送到接入服务器集群。混流服务器收到混流请求后,从接入服务器拉取到主播端和连麦用户的上行流。混流服务器对输入流进行混流处理,最终合成一条混合流,并推送到CDN分发集群。 CDN分发集群把一路混合流推送给观看观众端,观众端接收到混合流,进行解码后就可以直接展示给用户了。
云端混流支持的基本功能如下:
(1) 支持混入5种输入源类型(音视频,纯音频,纯视频,水印,画布)
(2) 支持混流合成全新流
(3) 支持裁剪,水印功能
(4) 支持模板配置
(5) 支持混流录制
(6) 支持自动混流
03 云端混流的基本流程
视频方面需要尽量转换为YUV420的采样格式,其他格式在向YUV420转换的过程中可能会有轻微的质量损失。声音方面只有在采样率不一样的情况下转换到统一的48khz,双声道,避免采样率变换导致的音质损失。另外为了方便后续的aac直接编码,这里直接选用1024的帧长度,在对PCM声道数据的表达上选用浮点,amix需要输入为浮点的aac,同时浮点在音频叠加合成上也可以避免过早的截断造成的音质损失,为二次处理提供方便。
本文系转载,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文系转载,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。