Repository navigation
Releases: GaBoron/SPW-island
Releases · GaBoron/SPW-island
Release list
v1.2.1
体验改进
- “暂停时隐藏”平滑收起,恢复播放时反向展开;快速切换衔接当前动画进度。过渡期间暂停鼠标命中并取消残留交互,低性能模式直接切换状态。(Issue #51)
问题修复
- 为复杂逐字歌词增加轮廓复杂度和计算预算,减少重复缓存;超出预算或后台准备失败时保留基本逐字高亮,降低内存耗尽及异常传播到绘制线程的风险。(Issue #54)
- 修复 Microsoft Store / MSIX 版 SPW 因应用数据目录虚拟化导致托盘程序无法启动的问题,使用实际重定向目录部署辅助程序。(Issue #55)
- 托盘辅助程序在消息循环就绪后才确认启动,修复快速启停竞态;启动中断时清理进程并保留中断状态,避免兼容托盘已存在时重复安装。(Issue #52、#55)
维护与文档
- 完善暂停过渡、托盘就绪、图标注册与恢复、兼容回退的诊断;区分提前退出、真实超时和明确错误,保留非协议输出。(Issue #51、#52、#55)
- 更新暂停隐藏使用说明、Windows 托盘短暂预览排障说明,以及应用数据路径和歌词几何处理的开发文档。(Issue #51、#52、#54、#55)
安装方式
- 提供 Windows x64 / Linux x64 通用包
spw-island-1.2.1.spmod,内含源码和许可材料。
v1.2.0
主要更新
- 新增默认启用的运行日志,覆盖 Windows、Linux、独立界面及辅助进程,记录异常、关键操作、状态变化、超时和恢复信息。(Issue #50)
- SPW 插件设置新增“打开日志目录”和“导出诊断包”,词岛窗口或托盘不可用时仍可使用;导出日志及必要运行环境,不会自动上传。(Issue #50)
- 日志支持轮换、重复异常汇总、10 天保留和 64 MiB 容量预算;清理保护正在使用的日志,过期文件移入系统回收站。异步写入,低性能模式降低状态采样频率。(Issue #50)
问题修复
- 修复逐字歌词绘制时,路径缓存淘汰仍在使用的轮廓可能导致的原生崩溃。(Issue #54)
- 修复 Windows 托盘身份随启动变化导致隐藏设置不稳定的问题;固定程序路径与 GUID,并支持资源管理器重启后恢复图标。(Issue #52)
- 界面帧任务异常后保留调度并降低重试频率,恢复后继续正常绘制。
维护与文档
- 补充桌面捕获、音频频谱、托盘、指针和进程通信的底层错误、异常堆栈与退出状态记录。
- 更新原生组件构建输入、开发指南及故障排查文档。
安装与说明
- 发布通用包
spw-island-1.2.0.spmod,支持 Windows x64 / Linux x64,内含源码及许可证材料。 - Windows 更新后可重新设置一次词岛图标的隐藏选择;已有重复记录不会自动清除。
- Linux 日志清理需要
gio;回收站不可用时保留文件,达到容量限制后暂停文件记录。 - 分享诊断包前请检查异常堆栈中的隐私信息。
v1.1.0
主要更新
- 新增鼠标滚轮调节 SPW 音量,默认关闭,每格调节 2%,范围 0–100%。
- 调节时进度条过渡为音量条,支持点击、拖动和悬停保持;停止操作并移开后 2 秒恢复进度条。收起时复位,低性能模式保留操作并简化过渡。
体验改进
- 设置页整理为七个功能分组,精简说明;“找回词岛”移至首组,“重置设置”置于末组底部。
问题修复
- 修复 Windows 重新启用插件时,生命周期线程与界面线程相互等待造成的卡死。
- Windows 原生库及辅助程序改从临时目录运行,JNA 改为复用 SPW 自带版本,消除插件目录中相关文件的占用来源。
- 完善停用时的资源释放,取消尚未执行的界面启动及字体窗口打开操作。
- Linux 在 GTK 3、GTK 2 均不可用时,通过 GIO / D-Bus 提供托盘图标和菜单;支持托盘服务恢复后重新注册,并保留具体失败原因。(Issue #46)
维护与兼容
- 更新使用、安装、兼容性、排障、开发文档及第三方依赖声明。
- 音量控制适配 SPW 1.19 内部接口;接口不兼容时提示不可用。
- Linux 仍为实验性支持;D-Bus 托盘需要 GIO、桌面会话总线及 StatusNotifierItem 支持。
v1.0.1
v1.0.0
主要更新
- 适配 SPW Workshop API dev23,要求 SPW 1.19.0 或更高版本及 Java 25,不再兼容旧宿主。(Issue #24;PR #45)
- Windows x64 与 Linux x64 合并为一个
.spmod,自动选择平台组件。Windows 提供完整功能,Linux 保持实验性支持。 - 名称统一为“灵动词岛 for SPW”,简介更新为“SPW 灵动词岛插件:逐字歌词、桌面悬浮与播放控制”,同步窗口、托盘及辅助功能名称。
体验改进
- 通过公开 API 获取当前歌曲、时长、内嵌封面和完整歌词时间轴,移除旧宿主反射探测;本地文件继续补充缺失的元数据。(Issue #24;PR #45)
- 完整歌词快照支持清空与重载、暂停画面更新和当前行查找;低性能模式同样接收完整时间轴。(Issue #24;PR #45)
- 显示快捷键交由 SPW 管理,保留默认
Ctrl+Shift+D,支持自定义、冲突管理和全局绑定。曲库读取或快捷键未授权时,保留仍可使用的功能。(Issue #24;PR #45) - 两平台共用设置页,标明平台专属选项,保留原有配置键及默认值;Linux 字号范围统一为 12–72。
维护与文档
- 使用上游 Workshop Gradle 插件生成安装包、清单与权限声明。(Issue #24;PR #45)
- 对齐 Java 25、Kotlin / Compose compiler 2.4.20、Compose Multiplatform 1.12.1 和 Gradle 9.8.0,调整依赖解析。(Issue #24;PR #45)
- 统一打包两平台原生库、辅助程序、GNOME 扩展、许可证与对应源码;构建入口统一为 Windows 上的
plugin。 - 合并元数据后台处理与生命周期管理,更新安装、使用、兼容性、故障排查、开发文档和第三方声明。
安装方式
导入 spw-island-1.0.0.spmod,按需授予曲库读取和快捷键权限。原有设置可继续使用,Windows 更新后请重启 SPW。
已知问题
以下为代码审查中尚未处理、待实机确认的边缘风险:
- 宿主返回无法解码的封面时,可能跳过有效的本地内嵌封面。
- 启用时首次曲目查询暂时失败,可能需要切歌才能显示当前歌曲。
- 同曲播放结束后重播,特定回调顺序可能丢失完整歌词快照。
- 完整歌词回调与切歌并发时,可能短暂显示上一首歌词。(以上均见 PR #45)
v0.14.0
主要更新
- 新增“强制逐字显示”:普通 LRC 按行时长估算逐字进度,原生逐字时间轴优先;估算歌词不应用长音发光。(Issue #26)
- Windows 液态玻璃扩展至右键菜单和关于页,采用与词岛相同的 GPU 刷新方式,支持首帧准备、深浅主题及原有交互。
体验改进
- 统一增强中心模糊和边缘折射,改善圆角边缘与文字对比度。
- 关于页按“播放与显示”“渲染与材质”“音频与交互”分组,分开展示状态、捕获指标与异常原因。
维护与文档
- 拆分逐字估算、状态排版与共享窗口材质模块,统一输入处理和资源释放。
- 同步强制逐字、液态玻璃和状态页的使用说明。
安装方式
提供 Windows、Linux x64 安装 ZIP;Windows 更新后需重启 SPW。
v0.13.1
v0.13.0
主要更新
- Windows 新增“液态玻璃(实验性)”背景,实时呈现桌面模糊、边缘折射、轻微色散与方向高光,保留原有词岛形状、内容和动画。
- 半黑遮罩和低对比度整行描边增强歌词可读性,描边沿用经典样式。
使用与限制
- 在 SPW 插件设置的“背景样式”中启用,默认仍为经典背景。
- 液态玻璃仅支持 Windows 11 SDR 桌面;低性能模式或捕获不可用时使用经典背景。Linux 保持经典背景。
- 启用液态玻璃时,词岛会从支持系统捕获排除的录屏中消失。
- Windows 更新插件后请重启 SPW。原有设置和安装方式保持不变。
v0.12.1
性能优化
- 词岛改用 GPU 绘制,保留原有样式、逐字动效、字体回退和播放控件;GPU 不可用时自动使用兼容绘制。
- 缓存歌词、逐字几何和长音分析结果,减少播放过程中的重复计算。
- 根据词岛所在显示器的刷新率安排绘制,标准模式最高 120 FPS,低性能模式最高 15 FPS。
- 减少设置同步时的重复读取;关闭“显示词岛”后释放绘制资源,临时隐藏时保留缓存。
兼容性
- Windows 使用 Direct3D;Linux 使用 OpenGL,需要可用的驱动及
libGL、libX11、fontconfig。 - 可在“关于与状态”查看 GPU 绘制是否启用。原有配置和安装方式保持不变。
v0.12.0
主要更新
- Linux 支持 SPW 进程的四频段实时频谱和频谱取色。仅采集 SPW 的音频,实时音频不可用时使用模拟频谱。
- Linux 支持鼠标穿透和悬停隐藏。悬停隐藏可用于 X11、KDE Wayland,以及安装配套扩展的 GNOME Wayland 45–50。
体验改进
- “关于与状态”显示词岛、性能模式、频谱来源和鼠标交互状态,并提供连接异常的处理提示。
- 快捷菜单保留显示、穿透、悬停隐藏、低性能模式和恢复操作,完整设置在 SPW 插件配置页中调整。
- 开启悬停隐藏后自动启用穿透;从菜单关闭穿透时,同时关闭悬停隐藏,恢复鼠标操作。
问题修复
- 修复 Linux 下移向原生 Wayland 窗口后,播放控件无法收起的问题。
- 修复 Linux 拖动词岛或播放进度条后,显示短暂跳回旧位置的问题。
- 修正设置保存与同步,避免旧配置覆盖位置、字体或同时修改的设置。
安装方式
- 在 SPW 插件管理中导入对应平台的
spw-island-0.12.0-windows-x64.zip或spw-island-0.12.0-linux-x64.zip。 - Linux 实时频谱需要 PipeWire 及
pw-record、pw-dump。 - GNOME Wayland 用户需在插件配置中点击“安装 GNOME 悬停隐藏支持”,首次安装或更新后保存工作并重新登录。
- Linux 仍为实验性支持。前台全屏隐藏和额外置顶强化仅支持 Windows;Linux 词岛区域右键菜单暂不可用,快捷设置请使用系统托盘。