跳转到正文
BiliBili ShadowReplay
说明文档功能说明

弹幕

BSR 提供了完整的弹幕功能,包括录制、回放、压制和导出。

弹幕录制

在直播录制过程中,BSR 会自动录制直播间的弹幕数据,包括:

  • 弹幕内容
  • 发送时间
  • 用户信息(如果可用)

弹幕数据与视频流同步录制,无需额外配置。

弹幕回放

在录播预览窗口中,弹幕会随着视频播放自动显示:

  1. 进入录播预览页面
  2. 播放视频时,弹幕会按时间轴自动滚动显示,速度和排布与 B 站直播间网页播放器的默认设置一致(规则见下文「弹幕压制」);字号和不透明度使用「设置 → 弹幕样式」,字号随播放器高度缩放,与压制后的视频看起来一致。录播回放时弹幕按视频时间出现和飞行,倍速、暂停都跟随视频,出现的时间和位置与压制结果相同;拖动进度或修改弹幕偏移后,会立即补上该时刻画面上应有的弹幕
  3. 可以查看实时的弹幕密度统计

SC 卡片与弹幕共用排布,不会互相重叠;满屏时 SC 会等到有空位再出现(最多等 5 秒,之后直接显示在顶部),不会被丢弃。

图片表情弹幕

  • B 站图片表情弹幕会在视频浮动弹幕和右侧弹幕列表中显示图片,实时预览与录播回放均支持。
  • 图片按比例缩放,不改变弹幕列表行高;图片地址不可用或加载失败时显示原始表情文字。
  • 视频弹幕压制支持图片表情,切片和完整录播均可使用;图片与文字一起排布,遵循字号和透明度设置,与文字弹幕以相同的规则滚动。
  • 搜索、关键词筛选以及独立 ASS 导出仍使用原始文字。ASS 导出保持通用格式,不依赖 VSFilterMod 的图片扩展。
  • 图片仅从 B 站图片 CDN(hdslb.com、biliimg.com 及其子域名)通过 HTTPS 加载。预览不缓存图片;压制时按任务临时下载,同一地址只下载一次,任务结束或取消后清理,下载或解码失败时回退文字。
  • 压制支持 PNG、JPEG、静态 WebP 和 GIF 图片;可解码的动图取首帧,不保留动画。动画 WebP 是否可解码取决于 FFmpeg 版本,不支持时回退文字;离线且无法下载图片时也会回退文字。
  • 旧 JSONL 录播若保留了 B 站原始消息中的表情信息,也可显示图片;仅保存文字的旧格式无法恢复图片。

SC(醒目留言)

录制到的 SC 会在预览中一并展示:

  • 弹幕列表中 SC 条目带价格标签,鼠标悬停可查看按金额配色的 SC 卡片详情
  • 播放时 SC 会像弹幕一样在画面上从右往左飘过,颜色随金额变化
  • 弹幕压制与导出仅包含普通弹幕,不会压制 SC 内容

弹幕统计

录播预览页面会显示弹幕密度统计图表,帮助你快速定位高能时刻:

  • 横轴表示时间
  • 纵轴表示弹幕数量
  • 高峰区域通常对应精彩片段

点击统计图可以快速跳转到对应的时间点。

弹幕压制

从录播生成素材时,选区内的弹幕会和素材一起保存(录播被清理后依然可用),素材本身不压制弹幕。需要带弹幕的视频时:

  1. 在切片编辑窗口的「导出」面板中勾选「压制弹幕」,面板会显示片段范围内的弹幕数量
  2. 导出切片时,各片段范围内的弹幕会按切片时间轴重新排列后压制到视频中
  3. 弹幕以滚动字幕的形式显示在视频画面上

裁剪、分割或调整片段顺序后,弹幕始终与对应的画面同步。素材预览窗口中可以查看素材保存的弹幕列表,播放时弹幕也会浮动在画面上,排布、样式和跟随播放的方式与录播预览相同,可用列表上方的「画面弹幕」开关隐藏(使用视频自带的全屏时不显示浮动弹幕)。生成完整录播时仍可直接选择压制弹幕。

弹幕样式

「设置 → 弹幕样式」同时作用于预览和压制(修改后,回到预览窗口即对新出现的弹幕生效):

  • 字号:调整弹幕大小(默认 36,与 B 站直播间全屏观看 1080p 时的默认字号相当)
  • 透明度:调整弹幕透明度(默认 0.8)

弹幕的排布与 B 站直播间网页播放器一致,按全屏 1080p 播放器、默认弹幕设置(全屏显示区域、正常密度与速度)计算:

  • 滚动:弹幕从画面右侧外进入、左侧外离开,全程约 13 秒,越长的弹幕速度越快
  • 排布:每条弹幕从画面顶部往下找第一个位置,不与屏幕上的弹幕重叠,并且永远追不上同一行前面的弹幕
  • 满屏:画面放不下时丢弃该条弹幕,不会延后显示
  • 高峰:同一时刻涌入的弹幕依次以约每秒 10 条的速度出现,积压过多时丢弃最早积压的弹幕

文字和图片表情由同一个原生渲染器绘制,使用相同的时间轴和排布,预览与压制保持一致。表情高度为一行,图片按比例缩放,不拉伸。

弹幕导出

你可以将录播的弹幕数据导出:

  1. 在录播预览页面点击「导出弹幕」按钮
  2. 选择导出格式(支持 JSON、ASS 等格式)
  3. 保存到本地

导出的弹幕文件可用于:

  • 数据分析
  • 第三方字幕工具
  • 弹幕特效制作

实时弹幕互动

在直播预览窗口中,BSR 还支持实时弹幕互动:

  1. 打开直播预览窗口
  2. 在底部输入框中输入弹幕内容
  3. 点击发送按钮发送弹幕到直播间

这样可以在观看回放的同时与观众互动(如果直播还在进行中)。

弹幕筛选

在弹幕列表中,你可以:

  • 查看所有录制的弹幕
  • 按时间范围筛选
  • 搜索特定内容
  • 查看弹幕发送者信息

技术细节

BSR 使用以下技术处理弹幕:

  • 录制:通过 WebSocket 连接直播间弹幕服务器,实时接收弹幕
  • 存储:弹幕数据存储在数据库中,与录播关联
  • 排布:使用 danmu2ass 模块统一计算文字与表情图片的滚动位置
  • 渲染:原生渲染器统一绘制文字和图片,通过链接的 FFmpeg 库合成视频;重复表情复用缓存

注意事项

说明

  • 弹幕录制依赖于平台的弹幕接口,不同平台的弹幕格式可能有差异
  • 弹幕压制会增加视频文件大小
  • 高密度弹幕可能影响视频观看体验,建议适当调整透明度

提示

  • 可以通过弹幕密度图快速定位精彩时刻
  • 压制弹幕前建议预览效果,确保弹幕不遮挡重要画面
  • 如果弹幕过多,可以考虑调整透明度或字号,减少画面遮挡

本页内容