直播系统架构

标题

连麦互动直播

难点
低延时互动:主播和互动观众之间就像电话沟通,为确保主播和互动观众之间能够实时互动,必须保证两者能在秒级以内听到对方的声音,看到对方的视频;

音画同步:互动直播中对音画同步的需求和单向直播中类似,只不过互动直播中的延迟要求更高,必须保证在音视频秒级传输情况下的秒级同步。

音视频实时合成:其他观众需要实时观看到对话结果,因此需要在客户端或者服务端将画面和声音实时合成,然后以低成本高品质的方式传输至观众端。

直播系统源码的开发需要经过推流端(采集、前处理)、服务端处理(编码、转码、录制、截图、鉴黄)、播放器(拉流、解码、渲染和互动系统)。

多人实时通话
可以基于开源软件如Google的WebRTC做二次开发。

多人音视频实时通话系统为了降低通话时延,多使用UDP协议作为传输层协议,众所周知UDP协议没有丢包重传机制,为了提高弱网下的实时音视频的通话效果,需要使用相关方案来做QoS保障,主要包括:

a)使用基于网络状态的音视频码率自适应算法,根据当前网络的丢包、时延自适应降低或者升高音频和视频的码率和帧率,通过这个方法来降低网络的拥塞,提高通话质量;

b)使用智能Jitterbuf算法来平滑网络抖动,同时内部使用音频编码的丢包补偿(PLC)算法进一步提升通话质量;

c)使用基于多层参考的视频编解码器,降低视频丢包后的卡顿;

d)整个UDP传输层使用前向纠错FEC算法进行智能保护,最大限度上保证实时音视频通话的效果。

PC
传统PC上的各种奇葩摄像头驱动。

移动端

720p下纯软件编解码对CPU开销过大,因此推荐使用高端机型并开启硬编解码模式。对于苹果手机硬件编解码基本上只与iOS的版本相关,而Android情况就会复杂得多,不仅与手机硬件相关,还和各个手机的ROM相关,为了解决这个问题需要去做适配。
iOS系统的设备采集是比较简单的,而Android设备则要做些机型适配工作

大前端
前处理 在这个环节主要处理美颜、连麦等效果。但美颜有一个需要难点是,要平衡美颜效果和功耗之间的平衡。

服务器

搭建覆盖全球的服务器部署与网络拓扑,在全球范围内的机房节点搭建了多个多线接入网络拓扑,部署了高可用的服务器集群,并利用智能分配算法与路由策略,为跨省、跨运营商、跨国的多人实时通话提供优质的传输通道。

720p下纯软件编解码对CPU开销过大,因此推荐使用高端机型并开启硬编解码模式。

解决方法
以主播为中心来进行连麦互动,采用实时通话系统来帮助主播和观众的实时互动连麦,通过实时通话通道,主播端收到观众端发送的音频和视频数据,主播端将自己的声音和观众的声音做混音,并将自己的画面与观众的画面做视频合成,最后将混合的声音和画面推流到CDN流媒体服务器,保障主播和观众间的互动质量。

主播和连麦观众使用了实时音视频来进行连麦互动,实时性高,观众看到的合成画面里主播和观众的互动也是同步实时的,保证延时小,减少带宽压力。
提供集成连麦功能的直播 SDK,并持续提供技术支持,方便项目对接,大大减少了开 发的时间和精力,缩短项目上线周期。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值