说明:本文作者冼牛,发表在雷锋网,转载到此分享。
直播平台生死攸关的三个因素是:成本,成本,成本!而语音视频流耗费的带宽成本占据了大头。因此,要降低直播平台的成本最重要的就是要降低语音视频流耗费的带宽成本。混流方案可以帮助直播平台有效地解决这个问题。
混流,还是不混流
借莎翁的名言作为开场白:混流,还是不混流,这是个问题。
在连麦互动直播方案中,混流还是不混流,还真是一个需要仔细考量的问题。
这篇文章将会分享即构科技连麦互动直播方案在工程化和高并发运维的过程中总结出来的关于混流的经验。
在开始讨论这个问题之前,让我们先搞明白什么叫做混流。混流就是把多路音视频流混合成单流。准确地说,混流应该叫作混音(音频流)混画面(视频流)。为了表述简单,我们这里就简称为混流。
混流的过程包括解码,混流,编码,和推流这四个步骤。混流这个环节包括做抖动缓冲,目的是把多路流进行画面对齐和音画同步,同时通过缓冲对抗网络抖动,以便混合成一路流以后能够达到良好的效果。
混流本身是一个相对比较耗费计算资源的运算,也是一个比较耗费时间的环节。说它耗费计算资源是因为这个过程涉及到多路流的实时转码,这是比较耗费CPU的事情。说它耗费时间,是因为这个环节涉及到抖动缓冲,会造成一定的延迟。实时转码本身耗费的时间一般会低于一帧的时间,相对不算显著;但是根据网络情况的不同,抖动缓冲会消耗大概80毫秒到1秒的时间。在连麦互动直播中,抖动缓冲造成的延迟对观众的体验十分关键。
在混流的过程中,难点是如何对抗网络抖动等不确定因素。对于各种不确定因素的处理,是最考验技术能力的。在网络好的时候,要尽量让延迟降低,要尽量快地完成处理。在网络不好的时候,又要避免卡顿和不同步等问题。这里需要有比较好的弹性设计,去满足对抗网络抖动的要求。要保证无论是网络好,还是网络抖动的情况下,音视频流的效果都一直处于一种平稳的状态,而不是跟随网络抖动而剧烈地抖动,包括延迟也要处于一种比较平滑和稳定的状态。这是一个技术难点,也是即构科技连麦互动直播方案的核心技术之一。
好了,现在基本搞清楚了混流的概念和难点了。那么混流这个事情,要不要做?如果要做,在哪里做?这两个问题都需要一番权衡。为了作出正确的选择,我们要先知道每种选择的优势和劣势。
本文将会展开讨论混流还是不混流,和在哪里混流等方方面面的技术细节,探讨混流方案如何能为直播平台节省成本。
由于篇幅较长,下面将会分成多个章节连载本文。
网友评论