跳转到主要内容
2026-01-28开发日志架构开发

1月回顾:奠定全格式支持的基石

本月完成了从底层 DSD 解码到高采样率 PCM 处理的全路径优化,确保了播放的绝对稳定性。

1月回顾:奠定全格式支持的基石

🛠 架构演进:追求极简与极速

1 月的设计重点在于打通底层音频引擎的“任督二脉”。为了让 Pure Music Player 能够应对未来海量的无损音源,我们对 音频流水线 (Audio Pipeline) 进行了彻底重构。

⚙️ 统一音频流水线 (Unified Pipeline)

以往不同格式(如 FLAC 和 DSD)往往走不同的处理路径,导致维持 Bit-perfect 特性非常困难。

  • 单管线架构:现在所有格式在解码后统一抽象为 PureAudioBuffer,并在进入系统音频单元前进行最小化处理。
  • 无缝切换:解决了不同采样率切歌时的爆音问题。

🚀 零拷贝内存池 (Zero-Copy Memory Pool)

在处理 DSD512 或 384kHz/32bit 的音频时,内存拷贝是性能杀手。

  • 内存复用:通过预分配循环缓存区,将 IO 读入到播放输出的拷贝次数降到了 0 次。
  • CPU 负载降低:在高负载播放场景下,CPU 占用率从 15% 下降到 3.5% 左右(Mac 端)。

🌐 全格式蓝图

  • ✅ DSD 原生支持:完善了 DSF/DFF 文件的 ID3 标签读取及 DoP 输出逻辑。

  • ✅ 多路输出适配:支持了外接 USB DAC 的独占模式(Exclusive Mode)。

  • [x] 核心音频引擎重构完成。

  • [x] 零拷贝缓冲机制上线。

  • [ ] 针对 WebDAV 远程播放的预加载缓冲算法优化。