文 | 张建磊
整理 | LiveVideoStack
大家好,我今天演讲的内容是Opera视频在非洲面临的一些挑战。不知道大家还记不记得Opera,大约在1995年,Opera浏览器是和IE一起推出的。虽然Opera目前在国内的市场份额已经很小,但是Opera在欧美仅浏览器仍大量的用户。Opera内部也在孵化除了浏览器之外的新产品,下面就和大家聊一聊。
我们的新产品的名字是Opera News,我们称为海外版的今日头条。今天分享的内容主要包含一下六部分:一、Opera News简介;二、视频系统架构简介;三、非洲弱网下视频播放问题及应对;四、用户网络流量问题及应对;五、视频播放策略;六、其他。
01
Opera News简介
这是现在Opera产品覆盖的国家和地区图。我们已经基本实现了非洲的全覆盖,欧洲一些主要的国家也已经覆盖。德国、法国、英国、俄罗斯、巴西等等都是Opera的用户。东南亚也有一定范围的覆盖。
这个就是Opera News大致的界面和应用市场的排行。大家可以看到无论是标准本还是lite版在非洲的应用排行榜中排行第一第二。
02
视频系统架构简介
这张图我画得很简单。Opera基本架构和很多类似产品是差不多的。视频来源生产端有爬虫、PGC、UGC等。之后上传、转码、存储,在进行切片、转码、智能拼接等服务后,入库审核,最后分发给客户端。
从架构层出发,Opera主要的目标是为用户提供极致的体验。为了提供极致体验,首先要保证个性化推荐足够个性化。其次架构要满足高可用。最后视频的播放体验需要得以保证。我今天就主要介绍视频播放体验这块。
03
非洲弱网下视频播放问题及应对
非洲视频播放主要有以下几个问题,第一。视频播放失败特别高。第二,视频预加载时间特别长。第三,用户流量非常昂贵。非洲用户的流量差不多是国内10年前的水平。这三个问题也是opera主要优化方向。
非洲网络运营商参差不齐,基础设施差,导致带宽严重不足,拥塞严重,进而导致丢包率和RTT都很高。最后的结果就是DNS、下载很慢。
04
用户网络流量问题及应对
在对用户进行调研统计后发现,虽然50%以上是4G用户,但是由于低网络带宽,他们的4G可以看做国内的3G。非洲主要以3G和4G网络为主,并且超过七成的用户会因为流量减少观看视频的时间。
我们收集了一些用户对视频体验的反馈。超过70%的用户认为视频播放卡顿明显,视频加载时间过长,播放失败率高。
4.1 加载时间
为此opera从加载时间、失败率和流量三个方面进行优化。
虽然Opera优化使用的技术国内已经成熟,但是照搬过去依然是不行的。一个最简单的MP4文件,在低带宽的情况下加载是很慢的。我们最一开始的想法是使用HLS将视频切片。HLS采用索引 文件切片的方式,可以提升用户的下载速度。
之后在实验过程中,我们发现很多低版本的用户,播放失败率格外的高。针对不同版本的用户码率上限需要被控制,以提供更好的体验。
针对和非洲用户的网络情况,我们采取极限压缩,使用很低的码率进行压缩。Opera提供的最低的分辨率是144p,YouTube在非洲的YouTubeGo压缩码率主要也是144p。
除此之外也会进行一些业务上的优化,减少RTT,多请求合并,也能提升用户体验。
Opera对视频切片切成了四种码率,144p、240p、360p和480p。HLS根据播放端网络状态控制请求的码率。一开始我们直接分发,虽然对比MP4确有提升,但是低版本失败率依然很高,为此我们针对不同版本做了不同的下发策略。
基于HLS统计数据,opera进行了一些猜测:低版本的用户一直不升级是因为流量更少。我们进行了一些强制的升级提醒,但是仍然有很大一部分用户宁愿不看这新闻也不升级。之后基于这个猜测我们进行了一些线上验证。
在非洲做视频的厂商并不多,抖音没有进入非洲市场,opera主要的对手是传音和YouTube go。Opera主要对标YouTube go的码率和分辨率进行压缩,压缩到144p。opera和微帧也存在转码压缩方面的合作。
客户端速度响应受包大小的影响。减少下发客户端无用字段,优化服务相应实践对用户体验也是有帮助的。HLS是m3u8的文件,Opera尝试将m3u8合并到请求中,这样用户至少减少一个RTT,节约流量。Opera也在尝试QUIC,但仅仅局限于测试,主要原因是Opera的CDN厂商在非洲运作的不是很好。
优化过后,整体加载时间降低超过50%。虽然依然做不到秒开,但是也做到了Wifi和4g预加载时间<2秒,3g预加载时间<3秒。右图是不同网络情况下预加载时间的对比。
视频预加载时间在2秒以内应付基本上不会弃播。每增加1秒加载时间,用户弃播率大约增加5.8%。在预加载时间减少以后,整体的弃播率也得以改善,有效播放率也得提升。
4.2 失败率
下面是针对失败率的一些优化。
针对失败率维度优化主要集中在以下三个方面。HLS和 分版本低码率、不同手机型号码率控制和特定运营商高峰下发https资源。如果视频转码还没有完成,客户端就需要保证请求的资源要到原视频播放,虽然预加载时间增加,但是至少保证用户能够播放。我们也针对MP4进行转码和压缩,这个过程相对较快。
优化之后失败率下降明显,相对降低60% 。
每条曲线表示一个版本,不同版本的失败率均有所下降,高版本相对降低幅度小一些。
整体失败率大约降低80%。
4.3 流量
最后一个优化目标是流量,这也是三部分中最有挑战性的一个。
非洲用户流量贵、消费高而且收入低。尼日利亚人会买很多个手机,或者一个手机插很多卡,以方便在不同运营商之间切换流量。Uber司机只有在接单等客人的时候会打开网络,运行期间会关掉网络。种种现象表明,非洲用户整体视频消费体量很小。非洲流量消耗主要在Facebook、Twitter和Opera News等产品。对于这部分低收入人群,Opera必须采取一定策略以满足他们的体验。
05
视频播放策略
首先非洲几乎全部图片都是全量WebP压缩。能看就行。
第二,一些新闻产品会进行一些免流。每个用户每天大约有50m免费流量的使用。这样的操作之后OperaNews的使用量和阅读量有了较大的提升。
如果免除视频的流量,对于我们成本消耗太大,所以我们只提供流量上传免流,生产更多的内容。之前也尝试过视频免流,但是提升的播放量并没有达到我们的预期。
最后Lite版本的退出进一步降低图片、视频、字段的大小,进一步减少流量消耗。
06其他
刚刚提到的问题是非洲国家整体面临的大问题,但是每个国家或多或少都有一些自己情况。网络质量是一方面,更多的是一些其他方面的问题。例如在埃及,埃及政府管控很严格,Opera经常会被禁封。在埃及我们需要不停的换域名,域名失效再换IP,如此循环。针对埃及,我们视频采取YouTubeSDK嵌入式播放,可以保证在被封以后用户可以继续使用。
另外非洲确实很不安全,保镖挂着枪是常有的事。基础设施业也比较薄弱,经常在海关过安检时停电。这些都是一些小问题。
Opera主体是在欧美,在和印度关系紧张的时候没有被封。Opera在双印也维持着一定量的服务,但是并没有其他地区体量大,没有投入过多。
通过上述的优化,最终为我们带来了不错的收益。流量大幅降低意味着大量成本的节约。用户也在优化中获得了更长的播放时长。
最后,在非洲,架构设计上没有特殊的地方,但是基于地区情况,非洲地区会有一些别的地方没有的挑战。Opera现在正在往欧美发展,面临的问题变成了版权问题。非洲地区不一定有欧美地区好做,欧美也不一定有非洲好做。
谢谢大家!