跳转到主要内容
2026-10-30PureStream开发周报曲库扫描Subsonic

PureStream 10 月开发周报:更快的曲库扫描,更稳的远程播放

本月 PureStream 完成海量曲库扫描优化、第三方 Subsonic 客户端兼容、家庭服务器 Web 界面升级与远程访问安全加固。47,500 首曲库的稳态重扫约 0.9 秒,万首目录加载从约 1.3 秒降到约 40 毫秒。

PureStream 10 月开发周报:更快的曲库扫描,更稳的远程播放

在 10 月里,PureStream 重点优化了海量曲库扫描、第三方生态兼容、家庭服务器 Web 界面以及远程访问安全性。对于音乐爱好者而言,海量收藏的流畅管理与随时随地的稳定聆听至关重要。

⚡️ 扫描性能突破:海量曲库的高速清点与平稳入库

面对存放在大容量外接机械硬盘(如 10TB、50 万首歌曲)的庞大曲库,以往扫描在重复核对时会逐个深入读取文件,造成严重的磁盘颠簸与漫长等待。

本月我们对音乐库扫描机制进行了全面重构:

  • 未变更文件极速跳过:扫描引入快路径比对。只要文件大小与修改时间一致,系统便直接跳过,不重复打开文件、不重复读取音频标签、不重复计算内容指纹。
  • 扫描耗时大幅缩减:在测试机环境下,数万首规模的曲库扫描速度迎来显著提升(实际耗时受硬件与文件数影响):
曲库规模与场景 优化后耗时(参考值) 表现与体验
47,500 首 稳态重复扫描 约 0.9 秒 极速完成,几乎不产生重复磁盘读取
32,000 首 首次扫描 约 65 秒 音频解析更轻更快
47,500 首 首次扫描 约 3 分钟 全程读写平稳有序
  • 可预期的进度反馈:扫描页实时展示已处理、可播放、失败数量与预计剩余时间;挂载多个文件夹时会清晰标明「第 N/M 个音乐文件夹」。失败文件支持预览和分类,系统托盘亦可查看扫描健康度。
  • 大目录收尾失败修复:此前在包含 47,500 个文件的超大单目录中,扫描收尾阶段的后台等待逻辑有问题,导致全部文件处理完后仍被误判为失败。修复后,同类大目录可以稳定完成收尾。

🌐 第三方 Subsonic 客户端全面兼容

为了让大家自由选择喜爱的播放工具,PureStream 全面增强了对第三方 Subsonic 客户端生态的兼容:

  • 主流客户端无缝连接:已通过 Feishin、Amperfy 等多款客户端实测,支持音乐浏览、搜索、收藏与流畅播放。
  • 响应速度与传输精简:万首曲库的根目录加载耗时从约 1.3 秒大幅降低至约 40 毫秒;海量收藏列表的数据传输体积缩减为原先的约 1/12。
  • 多音源独立隔离:不同音乐来源中的同名专辑与艺人现在独立建档,不再相互覆盖。

🎨 家庭服务器 Web 界面温润升级

家庭服务器 Web 界面完成了新一轮视觉重构:

  • 温润底色:深色模式换用更柔和的暖中性底色,长时间翻阅不易视觉疲劳。
  • 封面主导与精简布局:专辑墙以唱片封面为主导,去除多余卡片边框;曲目列表更加清爽。
  • 结构清晰的导航:桌面端侧栏重组为「音乐库 / 正在播放 / 管理」,默认直接进入专辑库,状态页仍可随时访问;手机宽度自动切换为底部导航。
  • 易用播放条:播放进度条紧贴顶部,小屏折叠为双行布局,滑块触控区域保持在 44 像素以上,避免误触。
  • 多端检查:11 个核心页面在深色/浅色、桌面/手机宽度下都做过检查,没有横向溢出或前端报错。

🔐 远程访问更稳定,播放账号更安全

  • 订阅自动对账:App Store 与 Microsoft Store 订阅每日自动对账,退款、取消或到期更及时准确地同步。
  • 温和的权益处理:订阅状态变更仅做记录标记,绝不强行中断正在播放的音乐;设备收回始终由管理员手动操作。
  • 秒级换机重绑:重新绑定或更换设备时,一次操作即可完成旧授权清理和新授权签发,不再提示「请稍后重试」。
  • 在线状态感知:家庭服务器会定期上报在线状态,方便在管理面确认设备是否在线。
  • 双播放设备支持:单个家庭默认支持两台播放设备同时连接(如 Mac 搭配 iPhone)。
  • 账号安全强化:服务端不再保存播放账号密码。播放器通过设备授权直接向家庭服务器获取一次性临时账号信息,用完即弃;同时对网络不可达、绑定失败或授权失效给出区分提示,不再一概显示「连接失败」。

🖥 桌面端体验与运行打磨

  • 开机自启:托盘菜单正式支持设置开机自启动。
  • 会话静默跳转:登录失效时直接回到登录页,移除「会话已过期」弹窗。
  • 原生音频解析:音频标签解析改用原生静态库,不再在运行时临时编译解析组件,启动与扫描更加轻盈。
  • 运行日志补齐:补齐系统崩溃与异常请求日志,便于快速排查潜在问题。
  • 文件过滤与状态直观:默认跳过系统隐藏文件与垃圾条目;托盘可直接查看已处理、可播放与失败三项指标。

📌 已知问题与下一步

当前版本中仍有以下问题正在处理:

  1. 部分外接硬盘、网络共享和 Windows 设备上的扫描表现还在验证,实际速度会受硬盘和文件数量影响。
  2. 扫描页的读屏播报还在完善,部分失败分类的文案还在补齐。
  3. Microsoft Store 订阅的退款、取消等场景会继续扩大验证范围。

下一步,我们将继续完成外接硬盘、网络共享和 Windows 设备验证,补齐无障碍播报与失败分类文案,并扩大订阅对账的覆盖场景。