点播成本节省的点其实涉及诸多部分,例如:CDN、转码、存储等,而利用播放器降本却是很多客户比较陌生的部分。火山引擎基于内部支撑抖音集团相关业务的实践,播放器恰恰是成本优化中最重要和最为依赖的部分。
火山引擎的视频团队做了份数据统计,在一个很经典的视频业务中,我们在2022年至2023年大约1年半的时间里,针对这个业务进行了33次成本优化点,其中13次是播放器主导的优化,其余的有12次也是需要播放器强配合的优化,也就是说在这个业务里,75%的成本优化是直接或间接由播放器参与,可见客户端对成本优化的关键作用。
最终我们在很多实践中也发现通过播放器的优化可以为点播业务节省20%甚至更多的成本,本篇内容就将聚焦在播放器层面如何节省成本这一主题。
点播成本构成
在视频点播的成本构成中,有很明显的二八原则:

CDN带宽成本占绝对的大头,80%都是带宽成本;
其次是存储和转码成本,二者占不到20%;
额外还有一些其他的周边的成本,比如日志处理的数据成本、AI处理的成本。
我们可以将成本的优化理解成“置换”,在点播的成本优化中,就存在2种“置换关系”:
第1种置换关系是“成本项之间的置换”,指的是「带宽-转码-存储」之间的置换。

上图是H.264升级到H.265编码格式的例子,265的压缩率相对比264要优20%-40%,所以带宽、存储上265是大幅度减少;但是265的计算复杂度要复杂很多,所以转码成本大幅度升高。
而这个图不是一个等边三角形,带宽成本要远大于转码和存储成本,所以这个置换是非常划算的。
第2种置换是“成本和体验的置换”,我们一般说是“跷跷板效应:

例如:
我们增大缓存时长,对应体验上「卡顿率」就会降低,但是成本会增加;
抖音小视频feed流场景,我们做预加载,这时候首屏感会更顺滑,但对应的成本是增加的;
降低码率,那么体验上感到清晰度变差了,而成本就是减少的;
跷跷板中间支点是技术,我们通常是希望固定体验、降低成本,依靠技术来支撑。
所以我们总在说降成本,那降的到底是什么呢?我们这里用一个很简单的乘法公式来表示:

在过去,“单价”是非常明显的因素,大家往往选择在采购环节尽量的压低单价;而“用量”上通常会被认为是无法改变的业务因素。
但“用量”实际上是包含2类,一类是正常用量,确实是比较难改变的业务因素,但另一类是“浪费”,是可以被优化的。
所以如何识别出浪费、降低浪费,是播放器降本的关键点。
那么造成浪费的因素有哪些呢?

例如在视频播放过程中,会包括“已播放的数据”,和“未播放但已经缓存的数据”,如果用户中途离开播放,那其中“已缓存的数据”都是浪费了。