Drawbacks and Fix of MPEG-DASH on Bilibili

TL;DR 如果Chrome看bilibili有明显卡顿,请使用非Chrome(或Chromium内核的浏览器)观看B站 eg. Firefox

Identifying the problem

如果你使用Chrome看bilibili时出现以下状况,请继续阅读本文:

每缓存一小段视频之后,在这段视频没有播放完前,剩下的部分都不会继续缓存。直到这段视频播放完了,出现卡顿,才会开始加载下一段,由此导致一个5分钟的视频被切割成了20个15秒的视频,每15秒中间卡5秒,不能自理。

由于特征和一般网速慢导致的卡顿并没有明显区别,所以这个问题很容易被归咎于ISP,就不了了之了。然后某天半夜我闲着没事翻了一下bilibili的视频统计信息,发现连接速度曲线表现很奇怪,才发现这事其实是DASH的锅。

阅读全文→