SonicLens:让听歌记录成为你的数字资产,不应只是流媒体服务器上的冷数据

查看 22|回复 2
作者:vincentchyu   
🎵 你的听歌历史,不应只是流媒体服务器上的冷数据
大家好,作为一名 macOS 深度乐迷,我一直觉得:音乐不仅是流动的空气,更是我们生命中不曾停歇的数字资产。
然而,目前的流媒体平台( Apple Music, Tidal, Qobuz 等)往往将我们的听歌记录封锁在各自的围墙内。如果你使用 AudirvanaRoon 追求极致音质,这些宝贵的聆听痕迹更是难以被统一记录和深度挖掘。
于是,我用 Go 编写了 SonicLens (音眸)
✨ 什么是 SonicLens ?
SonicLens 是一架专为 macOS 用户打造的“声之透镜”。它静默地守候在播放器之后,通过高频采样与无感监控,将你的每一次聆听凝结为属于你个人的、跨平台的音眸轨迹
🔗 GitHub: https://github.com/vincentchyu/sonic-lens
🚀 核心亮点
  • 🛡️ 数据资产化: 所有播放数据通过 SQLite 、MySQL 存储在本地,彻底摆脱平台限制,你的数据你做主。
  • 🎧 多平台无感监控: 基于 Go 并发特性,完美支持 AudirvanaRoon 以及 Apple Music 的实时状态采集。
  • 👁️ 音眸智能洞察 (Sonic Insight): 接入 AI 大模型( Gemini/Ollama 等),对歌词进行深度情感与语义解析,帮你从文字维度重新认识每一首歌,尤其是小语种。
  • 实时交互仪表板: 采用 WebSocket 架构,秒级同步播放状态(比特率、封面、进度等),UI 追求极致的设计感。
  • 📮 一键分享印记: 生成带有封面的 AI 见解海报,让你的聆听瞬间充满仪式感。

    🛠️ 技术侧写
    作为一个程序员,我在实现过程中加入了一些好玩的细节:
  • 使用 Goroutines 为每个播放器开启独立监听。
  • 通过 AppleScript 实现对底层播放器的无感采样。
  • 遵循 Last.fm 协议实现 Scrobble 逻辑,并使用 Redis 进行状态预测加速。
  • 前端基于 SSE (Server-Sent Events) 实现 AI 解析结果的流式呈现。

    📸 效果展示

    (附上 README 中的几张截图)





    📢 结语
    这个项目是我对“科技与人文”结合的一次尝试。如果你也是对音质有追求、对数据有执念的 macOS 用户,欢迎试用并提出你的建议!
    如果觉得还不错,也欢迎点个 Star 鼓励一下。
    再次感谢大家的时间。
    GitHub 地址:https://github.com/vincentchyu/sonic-lens
    小红书可以搜索 #Soniclens #音眸轨迹 词条
  • ASTRODAW   
    很早就有这个想法,一直没有行动。
    感谢开发者。即刻用起来
    Aaron01   
    很有意思👍
    您需要登录后才可以回帖 登录 | 立即注册

    返回顶部