# 弹幕 弹幕均为xml格式,下载至本地后加载 实时弹幕池容量有限(根据视频类型500-3000条不等),占满后再发送会使实时弹幕池底部的弹幕压入历史弹幕池(类似于堆栈) ## 获取实时弹幕1 **使用deflate压缩,使用时注意解码** api.bilibili.com/x/v1/dm/list.so *方式:GET* 参数: | 参数名 | 内容 | 必要性 | 备注 | | ------ | ------- | ------ | ---- | | oid | 视频CID | 必要 | | 示例: http://api.bilibili.com/x/v1/dm/list.so?oid=144541892 ## 获取实时弹幕2 与前者使用效果相同 **使用deflate压缩,使用时注意解码** comment.bilibili.com/{cid}.xml *方式:GET* 参数: | 参数名 | 内容 | 必要性 | 备注 | | ------ | ------- | ------ | ---- | | cid | 视频CID | 必要 | | 示例: http://comment.bilibili.com/144541892.xml ```xml chat.bilibili.com 144541892 0 1500 0 0 e-r 从结尾回来看这里,更感动了! 咦三体居然还有动画 哈哈哈哈开心 红岸么 我就是想看我的世界里水滴长啥样 有手指? 侦测到在途的聚变打击 都是虫子 ocean 村民,哼~ 黄河之水天上来 镇站之宝 这水 海的那边是什么 折跃门准备完毕 ………… ``` ## 弹幕格式 ### xml格式结构 - 标签 i - 标签 chatserver:chat.bilibili.com - 标签 chatid:视频CID - 标签 mission:0 - 标签 maxlimit:实时弹幕池最大容量 - 标签 state:0 - 标签 real_name:0 - 标签 source:e-r - 标签 d (带有属性 p):弹幕内容 ### 属性 p 字符串内每项用","分隔 | 项 | 含义 | 类型 | 备注 | | ---- | ------------------ | ----- | ------------------------------------------------------------ | | 0 | 视频内弹幕出现时间 | float | 秒 | | 1 | 弹幕类型 | int | 1 2 3普通弹幕
4底部
5顶部
6逆向
7精准定位
8代码弹幕
9BAS弹幕 | | 2 | 弹幕字号 | int | 18 小
25 标准
36 大 | | 3 | 弹幕颜色 | int | 十进制RGB888值 | | 4 | 弹幕发送时间 | int | 时间戳 | | 5 | 弹幕池类型 | int | 0普通池
1字幕池
2特殊池(高级弹幕) | | 6 | 编码后的用户ID | HEX | 用于屏蔽用户 也可反查用户ID | | 7 | 弹幕ID | int | 唯一 可用于操作参数 | ```xml 从结尾回来看这里,更感动了! ``` 弹幕内容为:“从结尾回来看这里,更感动了!” 参数为:视频内出现的时间是490.19100秒,类型是普通弹幕,字号为标准,颜色为白色(#FFFFFF),发送时间是2020/3/15 18:41:32......... ### web版标准颜色 | | | | | ---- | ---- | ---- | | | | | | | | | | | | |