Flashback Turbo

Flashback Turbo

经过现场验证,Flashback 导出速度更快,且无损画质 —— 在NVIDIA上导出 1080p60 片段最高快约 11 倍,仅需约 8.5 秒。

优化

FlashbackTurbo

这是一个为 Flashback 设计的 Fabric 附加模组,能够大幅提升视频导出速度——且不损失画质。

实战验证

已在 Windows(主要平台)、macOS 和 Linux 上经过 数百次真实匿名导出 验证。导出失败率 约 1%,且所有已记录的失败均由外部因素导致(例如为极长回放分配的内存不足,或导出过程中游戏关闭)——从未出现由 FlashbackTurbo 本身引入的性能回归问题。

功能说明

通过 Mixin 修补 Flashback 的导出管线,用并行操作替换串行的低效率操作:

  • 并行 PNG 写入器(N-1 线程)+ 可配置的 zlib 等级 + 关闭透明度时使用 RGB 色彩类型
  • FFmpeg 编码器线程优化(h264_nvenc、h264_qsv、h264_videotoolbox、libopenh264)
  • 移除静默 4K 分辨率限制
  • 硬件编码器使用 分片式 MP4 复用器 → 最终化速度提升约 10 倍
  • 导出后阶段显示动画化的 "正在保存…" 叠加层
  • 修复 Flashback 在中途回放导出时的崩溃问题(mc.level 空指针竞争条件)
  • 自动将软件编码升级为 GPU 编码(0.5.0) ——当导出需要使用慢速的 libopenh264 编码器时,在可用情况下重定向到硬件编码器(NVENC/QSV),适用于约 13% 的纯软件配置导出。故障安全,SSIM ≥ 0.99。
  • 静默自动更新(0.6.0) ——自动保持您的 Zeffut 模组从 Modrinth 更新:启动时后台检查,验证下载,游戏退出时替换。可在配置中使用 "autoUpdate": false 关闭。

所有钩子均通过 config/flashbackturbo.json 配置并默认使用安全值。

性能

受控基准测试(PNG 序列)

真实的 1.21.11 回放,10 秒片段,1920×1080(603 帧):

模式 总耗时 每帧耗时
原版 96,081 ms 159 ms
涡轮加速 8,774 ms 14 ms

端到端速度提升 10.95 倍。

真实世界现场数据(MP4 导出)

真实导出的中位耗时(约 1080p 片段),按编码器分类:

平台 · 编码器 中位导出耗时
Windows · NVIDIA h264_nvenc 约 8.5 秒(60 fps)
Windows · Intel h264_qsv 约 23 秒(60 fps)
macOS · h264_videotoolbox 约 26 秒(30 fps)
软件回退 libopenh264 约 55 秒

最快的组合是 Windows 加 NVIDIA GPU。即将发布的版本将自动将纯软件导出升级到 GPU 编码器(如果可用)。

画质

无损 PNG 输出——zlib 等级只影响文件大小,解码后的像素在比特级别上完全相同。FFmpeg 线程优化不会改变编码后的比特流。

隐私

自 0.4.0 版本起,FlashbackTurbo 发送 匿名 使用遥测数据(PostHog)以优先改进:随机本地 UUID,不含用户名 / IP / 文件路径,已清理的异常消息。完全故障安全(不会减慢或破坏导出流程)且 可选择关闭 ——在配置中设置 "enableTelemetry": false。

需求

  • Flashback 和 Fabric API
  • Minecraft 1.21.9 / 1.21.10 / 1.21.11(Java 21)——或 26.1.x(Java 25)