Bilibili直播的弹幕数据包解析

本文介绍了如何解析Bilibili直播的弹幕数据包,包括数据获取、数据处理步骤,详细解释了数据包结构,并给出了实际数据的示例。通过解析数据包,可以用于实现弹幕收集、礼物提醒等功能。
摘要由CSDN通过智能技术生成

数据获取

如何跟B站的弹幕服务器保持通讯在这里就不赘述了。

假设你恰好收到了服务器发来的一段socket数据,放到了 unsigned char 数组里:

{
   0, 0, 1, 9, 0, 16, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 123, 34, 105, 110, 102, 111, 34, 58, 91, 91, 48, 44, 49, 44, 50, 53, 44, 49, 54, 55, 55, 55, 50, 49, 53, 44, 49, 52, 56, 53, 53, 51, 54, 53, 50, 48, 44, 51, 54, 57, 55, 49, 56, 49, 57, 57, 44, 48, 44, 34, 57, 97, 55, 98, 48, 98, 48, 97, 34, 44, 48, 93, 44, 34, 98, 105, 108, 105, 98, 105, 108, 105, 45, 40, 227, 130, 156, 45, 227, 130, 156, 41, 227, 129, 164, 227, 131, 173, 228, 185, 190, 230, 157, 175, 126, 34, 44, 91, 50, 57, 52, 55, 57, 55, 50, 50, 44, 34, 232, 139, 143, 231, 180, 171, 231, 131, 159, 34, 44, 48, 44, 48, 44, 48, 44, 49, 48, 48, 48, 48, 44, 49, 93, 44, 91, 53, 44, 34, 231, 179, 150, 231, 186, 184, 34, 44, 34, 232, 167, 133, 231, 179, 150, 232, 143, 140, 34, 44, 50, 55, 51, 53, 51, 52, 44, 54, 57, 51, 53, 55, 57, 56, 93, 44, 91, 49, 51, 44, 48, 44, 54, 52, 48, 54, 50, 51, 52, 44, 34, 62, 53, 48, 48, 48, 48, 34, 93, 44, 91, 34, 116, 105, 116, 108, 101, 45, 53, 56, 45, 49, 34, 44, 34, 116, 105, 116, 108, 101, 45, 53, 56, 45, 49, 34, 93, 44, 48, 44, 48, 93, 44, 34, 99, 109, 100, 34, 58, 34, 68, 65, 78, 77, 85, 95, 77, 83, 71, 34, 125}

数据处理

首先取当前数组的前16位,按字节数4 2 2 4 4分割当前数组,获得当前数据包的结构信息:
0 0 1 9 | 0 16 | 0 0 | 0 0 0 5 | 0 0 0 0
前16位的含义: 数据包总长度 | 未知 | 未知 | 数据包类型 | 未知

下面是我们获得的数据包结构信息:
Data length: 0 0 1 9
Data type: 0 0 0 5
Data body length: (Da

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值