在 2016 年的互联网关键词中,「直播」毫无疑问排在前列。从年中开始,直播便接替短视频成为新的大流量入口。参与直播的人,也从网红逐渐扩大到全民,内容也从最初的单一娱乐向更多元化的方向发展。
直播被普遍认为具有很强的互动性和即时性,人们能在送礼物、发评论的互动中感受到远超传统电视的存在感。但目前国内大多数直播平台,采用的是主播单向与用户互动的模式,非付费用户的存在感相对稀薄。
直播火了,连麦互动直播在火的路上
2016 年下半年开始发生的变化是,连麦互动直播开始成为直播行业的标配。连麦互动直播让主播在唱“独角戏”之外,还可以看到主播之间连麦唱歌聊天,观众与主播之间连麦游戏互动。连麦直播意味着更即时的互动和更多待挖掘的场景。
- 连麦直播+社交:目前直播互动方式以最基础的文字互动或虚拟物品打赏为主,如果主播可以和自己的观众进行连麦互动,让观众也能够参与直播,能够带给观众更直接的参与感,有利于提升直播平台用户活跃度和粘性。
- 连麦直播+电商:直播+电商是目前较为成熟和稳定的一种商业模式,变现方式更为简单高效。目前的电商直播主要是主播在直播间销售商品,如果主播能现场连麦观众,甚至观众可以穿上衣服现场演示,能为用户塑造临场感,激发用户买买买的欲望。
连麦互动直播流程
△ 连麦互动直播功能流程图
1.主播正常开始直播,普通观众看到主播的单人直播画面;
2.需要连麦的观众发起连麦请求,进入连麦申请列表;
3.主播从连麦申请列表中选择一名或多名观众进行连麦操作,主播与连麦观众进行实时音视频互动,同时互动直播系统生成“合成画面”;
4.普通观众看到直播画面为包含主播与连麦观众的“合成画面”;
5.连麦结束,恢复主播单人直播模式。
连麦互动直播方案
连麦互动直播的主要技术难点在于:
- 低延时互动:主播和互动观众之间就像电话沟通,为确保主播和互动观众之间能够实时互动,必须保证两者能在秒级以内听到对方的声音,看到对方的视频;
- 音画同步:互动直播中对音画同步的需求和单向直播中类似,只不过互动直播中的延迟要求更高,必须保证在音视频秒级传输情况下的秒级同步。
- 音视频实时合成:其他观众需要实时观看到对话结果,因此需要在客户端或者服务端将画面和声音实时合成,然后以低成本高品质的方式传输至观众端。
为了实现互动实时性高的连麦,首先需要有一套实现了类似微信、Skype及Facetime的多人音视频实时通话系统。这套实时通话系统可以选择自主研发或者基于开源软件如Google的WebRTC做二次开发。下面简单介绍多人实时通话系统的一些重点技术细节。
1.多人音视频实时通话系统为了降低通话时延,多使用UDP协议作为传输层协议,众所周知UDP协议没有丢包重传机制,为了提高弱网下的实时音视频的通话效果,需要使用相关方案来做QoS保障,主要包括:
a)使用基于网络状态的音视频码率自适应算法,根据当前网络的丢包、时延自适应降低或者升高音频和视频的码率和帧率,通过这个方法来降低网络的拥塞,提高通话质量;
b)使用智能Jitterbuf算法来平滑网络抖动,同时内部使用音频编码的丢包补偿(PLC)算法进一步提升通话质量;
c)使用基于多层参考的视频编解码器,降低视频丢包后的卡顿;
d)整个UDP传输层使用前向纠错FEC算法进行智能保护,最大限度上保证实时音视频通话的效果。
2.现在用户对于视频的清晰度要求越来越高,多人实时通话系统能够支持720p,720p下纯软件编解码对CPU开销过大,因此推荐使用高端机型并开启硬编解码模式。对于苹果手机硬件编解码基本上只与iOS的版本相关,而Android情况就会复杂得多,不仅与手机硬件相关,还和各个手机的ROM相关,为了解决这个问题需要去做适配。
3.搭建覆盖全球的服务器部署与网络拓扑,在全球范围内的机房节点搭建了多个多线接入网络拓扑,部署了高可用的服务器集群,并利用智能分配算法与路由策略,为跨省、跨运营商、跨国的多人实时通话提供优质的传输通道。
又拍云选择以主播为中心来进行连麦互动,采用实时通话系统来帮助主播和观众的实时互动连麦,通过实时通话通道,主播端收到观众端发送的音频和视频数据,主播端将自己的声音和观众的声音做混音,并将自己的画面与观众的画面做视频合成,最后将混合的声音和画面推流到CDN流媒体服务器,保障主播和观众间的互动质量。
△ 又拍云连麦互动直播方案架构图
连麦互动直播方案有两点优势:
- 主播和连麦观众使用了实时音视频来进行连麦互动,实时性高,观众看到的合成画面里主播和观众的互动也是同步实时的,保证延时小,减少带宽压力。
- 提供集成连麦功能的直播 SDK,并持续提供技术支持,方便项目对接,大大减少了开 发的时间和精力,缩短项目上线周期。
连麦互动让直播更富有互动性和趣味性,直播领域竞争激烈,直播平台只有不断推陈出新具备高用户粘性的差异化功能,才能站稳脚跟。
详细文章可见:无连麦,不直播,都在说的直播利器连麦互动到底是啥?
又拍云ios直播SDK(动态库)使用说