simai_flutter 0.4.1 copy "simai_flutter: ^0.4.1" to clipboard
simai_flutter: ^0.4.1 copied to clipboard

A Flutter package for parsing, converting, and rendering simai format charts. Supports chart visualization with Flame engine and audio synchronization.

0.4.1 #

  • Android 兼容性:使用插件专属的 FileProvider,避免与宿主应用或其他插件合并 Manifest 时发生冲突。

0.4.0 #

  • 谱面游玩:Early Preview 阶段,可能存在诸多问题。
  • 视频导出:Android/iOS 支持导出 720p 或 1080p、60fps 的竖版 MP4。
  • 稳定性:优化视频编码兼容性、内存占用、磁盘检查和失败清理,避免导出失败破坏已有文件。
  • 播放器集成:在设置抽屉中统一提供游玩与视频导出入口,并可自动创建游玩控制器。
  • 问题修复:修复视频画面不更新、iOS 音频封装崩溃及退出全屏后未恢复竖屏的问题。
  • 兼容性:最低支持 Flutter 3.38 和 Flame 1.37。

0.3.0 #

  • 音频迁移:统一使用 flutter_soloud 播放音乐与正解音;播放器音频参数由 audioSource 调整为 audioAsset / audioFilePath,并支持 Android、iOS、Linux、macOS、Web 和 Windows。
  • 播放同步:引入基于单调时钟的音频同步与平滑校正机制,改善变速播放、拖动定位和播放结束时的稳定性。
  • 谱面信息:新增当前 BPM、拍号、小节进度、Combo 与 Break 计数展示,并可选择显示详细渲染性能指标。
  • 播放控制:重构时间轴与小节导航,支持按原始 simai 语句定位谱面,并优化高低 BPM 段落的时间轴显示。
  • 渲染性能:增加运行时索引、渐进式 Slide 预计算与可见区域裁剪,拆分各类音符的批量渲染逻辑,降低大型谱面的计算和绘制开销。
  • 渲染修复:完善 Slide、Touch Hold、Approach 动画及音符资源缩放表现,并修复相邻音符和 Slide 语法解析的边界情况。
  • 测试与示例:新增音频时钟、渲染性能及播放器交互测试,并补充性能测试谱面。

0.2.5 #

  • 重构音符渲染管线,改为批量绘制与路径预计算,显著降低复杂谱面的渲染开销。
  • 新增 Touch / Touch Hold 的 fireworks 样式序列化与渲染效果。
  • 优化 Approach Arc 资源缓存与抗锯齿表现,并支持相对位置的完整环形提示线。
  • 修复播放拖动后的音频同步抖动问题,并在播放结束时正确处理额外视觉尾效。
  • 优化播放器控制栏与时间轴刷新逻辑,减少不必要重建。

0.2.4 #

  • 修复了 Hold 渲染时为初始长度时角度没有对准目标的问题。
  • 修复了切换显示模式为「区」的时候出现崩溃的问题。
  • 优化了渲染性能。

0.2.3 #

  • 添加了流速调节的功能。
  • 修复了开启粉色星星时,Slide 路径也被绘制为粉色的问题。
  • 修复了正解音无法正确播放的问题。
  • 调整了 Approach Arc 的绘制。

0.2.2 #

  • 修复了在 Android 平台上的崩溃问题。
  • 完善了渲染机制以便绘制 Approach Arc。

0.2.1 #

  • 修复了 Slide 星星在路径上移动时朝向错误的问题。
  • 修复了进入全屏后无法正常退出的问题。

0.2.0 #

  • 新功能: 增加「锁屏」功能,全屏模式下支持锁定 UI 以防止误触。
  • UI 适配: SimaiPlayerPage 现在全面支持 SafeArea 安全区域适配,包括横屏刘海屏及底部导航栏。
  • 生命周期管理: 为 SimaiPlayerControllerSimaiPlayerPage 添加了完善的 dispose 资源销毁逻辑。
  • 交互改进: 将正解音开关移至设置抽屉并默认关闭,简化了主控制条的视觉显示。
  • 稳定性: 修复了页面销毁时计时器未正确清理的潜在内存泄漏问题。

0.1.0 #

  • Initial release of simai_flutter.
  • Support for parsing simai chart strings and .txt files.
  • Built-in Flame-based chart renderer.
  • Precise audio synchronization with audioplayers.
  • Basic UI components for chart preview and control.
1
likes
135
points
179
downloads

Documentation

API reference

Publisher

verified publisherkamitsubaki.city

Weekly Downloads

A Flutter package for parsing, converting, and rendering simai format charts. Supports chart visualization with Flame engine and audio synchronization.

Repository (GitHub)
View/report issues

License

MIT (license)

Dependencies

flame, flutter, flutter_soloud

More

Packages that depend on simai_flutter

Packages that implement simai_flutter