B站的非直播弹幕技术:轮询还是 WebSocket
关于 B 站视频弹幕的技术实现,普遍认为直播弹幕采用 WebSocket。但对于非直播视频,是否也是 WebSocket 尚未达成共识,其他视频平台(优酷、腾讯视频、)的情况也存在疑问。
WebSocket 与轮询的对比
WebSocket 是一种双工、全双工通信协议,允许客户端和服务器在单个 TCP 连接上进行双向通信,而轮询则需要客户端定期向服务器发出请求以获取更新。
普通视频弹幕的实现
普通视频由于可以暂停,因此弹幕的获取方式与直播有所不同。目前主要有两种技术方案:
- 分时段拉取:如果视频评论较多,则会根据时间段分段获取弹幕。
- 一次性拉取:评论数量较少时,直接一次性拉取所有弹幕。
显示及其他考虑
弹幕的显示技术与上述拉取方式无关。值得注意的是,在弹幕显示过程中还会考虑以下因素:
- 用户的观看体验
- 主播的视觉聚焦
- VIP 用户的弹幕优先级
- 自己的弹幕优先级
以上就是B站非直播视频弹幕是怎样实现的?轮询还是 WebSocket?的详细内容,更多请关注php中文网其它相关文章!