视频播放
b 站采用的是,m4s 分段存储视频,通过 range 请求动态下载某个视频片段,然后通过 SourceBuffer 来动态播放这个片段。
知乎视频并没有在服务器进行分段存储,需要根据 range 来判断读取视频的哪个片段,通过 SourceBuffer 来动态播放这个片段,来实现的快速播放的目的。具体的分段是提前确定好的,会根据进度条来计算出下载哪个 range 的视频。
另外还有个快的原因是 hevc on.dash
DASH 是一种视频流传输协议,允许实时和点播视频进行自适应性流式传输。它通过将视频内容切分成多个小片段,并根据网络条件和设备能力来动态选择合适的片段进行传输,以提供最佳的观看体验。DASH 还支持多个编码格式,其中包括 HEVC。