正文
-
传输
因为NBA是在美国打的,所以从美国一个摄像机拍摄一直到中国的用户,要经历18000公里的信号传输,因为美国的制作机房是在美国的新泽西,美国东海岸,我们是在太平洋的西海岸,要横穿整个北美大陆还要横穿太平洋,再从中国的南端香港登录再传到北京的演播室,再从北京演播室分发出来到千家万户,基本上是有18000公里的远洋传输,这是需要有一些技术门槛的。
-
制作
传过来以后,像美国人传过来的信号,最简单的是英文传输,当然有些人说我喜欢听原音,但是大部分中国人有中文的需求,包括球员信息、赛事信息,这就需要节目包装去提升直播过程中的视听感受,让中国人看身躯更舒服,更能够接受,更容易理解。
-
播放
另外我们还需要多角度和多清晰度,多角度是满足于各种观看的角度,我们在NBA实现的是有三个视角,比如说蓝筐下面,左视角右视角,让大家从不同的角度去看比赛。
还有清晰度和播放,播放也是很关键的点,如果你的播放不流畅,不清晰甚至有马赛克,这让整个用户是没办法接受的。如何保证用户在播放过程中观看不会卡顿,用户能够更快的看到画面,这是需要去解决的技术问题。
-
监控
最后是监控,环节这么多,距离这么远,活跃用户是接近过亿,这么多的终端和用户,出故障的概率就很大,我们怎么去保证,去把各种风险降到最低,但是风险是不可能不出现的,故障是一定出现的,怎么样让故障出现以后,让预案快速启动,这个监控是非常重要的环节。
但是大家都有监控,腾讯也有这个课程,现在的监控是已经到了新的层面,除了现在必要的监控的各个环节以外,另外是大数据的冲击。每天整个监控的信息,一天差不多有2000亿条,这数据如何收集起来,如何进行分析,如何快速的在极短时间内发现问题所在,帮助我们快速定位。这是一个巨大的挑战,这就涉及到大数据处理。
我现在就开始一个个说当时我们是怎么来解决这个问题的。这是2015年的夏季,当时接到这个任务的时候挺开心的,NBA是很大的投入,腾讯每年投入一个亿,还是美金,公司把这么重要的任务交给我们,要体现我们的价值。干得好,升值加薪不在话下,干得不好,可能就要去财务领工资了,所以风险和机会永远是并存的。
4、面对传输问题的挑战
4.1 挑战一:传输过程中容易出现花屏和断流
但是直播第一天的时候傻眼了,因为画面这样了,有深深无助的压力。领导说,你这问题怎么解决?因为以前从来没搞过直播,我们就开始分析,因为传播过程中为了满足低延时和实时性都采用 UDP 的传输。
但是是像车队一样,很容易造成一些卡顿的情况,因为一旦传输要进行一些同传的时候,包卡在那里,视频的画面都是经过大量的压缩,一个包丢失的话可能是一个区块,一个像素的影响,我们在传输过程中那么远的距离传输,势必导致丢包,一旦丢包就出现了画面的卡顿。当时不管是运营还是各种技术,都说要解决。其实有解决的办法,我后面再说。
4.2 挑战二:传输过程中容易出现花屏和断流
我们当时选择的方式是网络传输,从美国的新泽西机房一直到传过北美大陆,传过太平洋,再从香港的节点到北京,这么大的距离,我们当时测了一下距离,是17286.59公里,这么远的距离,大海有自然因素,可能会有海啸,非常容易导致整个线路的不稳定。
可能有些同学就说了,为什么不用卫星传输?卫星传输是很简单的,只要经过两个卫星就行,美国卫星发过欧洲的卫星,欧洲的卫星再中转给中国的卫星。
卫星传输确实是简单,但是价格是非常昂贵的,可以说通过卫星传输的话,差不多是网络传输的价格的50倍,网络传输价格已经很贵了,如果1300场都用卫星传输不太现实。
4.3 传输优化解决方案
-
容错技术
技术有时候碰到问题才能够体现出价值来,我把这个任务接下来了,丢包有办法解决,我们当时采用了纠错的技术,会把包的传输变成一个矩阵,在每横每列多出一个交验包,像这样10乘10的矩阵,每行每列丢一个包的时候,是可以通过校验码把它补齐的。
如果发100个包,通过加上20个校验码的话,每行每列不管丢哪一个包,是不会出现任何的画面抖动的。就提升了原来UDB传输过程中的可靠度,我们当时的网络专线的容错可靠度能够达到千分之一。
所以出现刚才的画面,网络很难再提升了,很难再去做更大的优化。我们直接把丢包率的要求降低到了10%,但是连续丢包也是不行,一行丢两个包或者三个包也是不行。这样就把整个画面容错率降到差不多千分之五的概率。
原来一场比赛每天都会有一些画面的情况,但是现在已经把一场比赛基本上是十场比赛才可能出现一个很短暂、很细微的画面感觉。如果大家在远距离传输中出现问题,可以去看这个纠错技术,这个矩阵只要不断变小的话,甚至变成2-2的矩阵的话,纠错能力会更强。
但是它带来另外一个因素,加了大量纠错码的话,会把传输过程中的码率变大,因为加了纠错码以后,像已经加了20%的流量,原来只要1兆的,加上之后可能到1.2兆,典型的是用空间去换取时间的方式。
我们当时还研究了美国军方无线传输过程中的方式,这里就不说了,基本上就能够解决。
-
多链路备份
刚才说的还有千分之五的概率,怎么解决呢?我们做了网络备份的技术。我们在北美大陆和太平洋专线部署了三条专线,每条专线会有红色或者绿色或者是黄色,还有黑色,颜色只是代表着一些信号传输的区别,因为我们不是每一路信号都进行备份操作或者是有多份的备份,有些只对主信号进行多备份的传输。
通过这么复杂的网络,降低了不管是在正常情况下的丢包概率,还是在应对比较复杂的自然气侯,还有一些小概率的比如施工导致专线影响。
当然我们在重要比赛的时候,还是会把卫星的传输信号当成一个备用方案,所以信号的传输过程中主要是利用纠错的技术和多转多发的技术,去降低我们在整个信号传输过程中的花屏或者中断的影响。
5、面对制作技术的挑战
5.1 视觉优化-字幕
当信号完美传到制作中心的时候,这时候就开心要进行一些节目制作中的包装了,比如说加一些字幕,通过字幕机把球员信息转化成中文的信息。