Sonora播放数据Scrobble指南:3分钟打通LastFM与ListenBrainz,听歌历史一键同步
发布时间:2026/10/11 22:32:24 锦皓数字建站

【免费下载链接】sonoraA native music streaming client, built with Rust and GPUI项目地址https://gitcode.com/gh_mirrors/sonor/sonora点击查看免费下载Sonora 是一款用 Rust 和 GPUI 构建的原生音乐串流客户端内置 Scrobble听歌数据上报功能只需一次简单设置就能把你的每次收听自动同步到 Last.fm 和 ListenBrainz——听歌历史一键同步无需任何插件或手动操作。本指南将带你用 3 分钟完成 Last.fm 连接再用 1 分钟打通 ListenBrainz并解释 Sonora 判定一次有效收听的规则让你的听歌数据从此不再丢失 什么是 ScrobbleSonora 内置了什么Scrobble 是指把你正在听什么和刚刚听完什么自动上报给第三方音乐数据服务的机制。Sonora 原生支持4 个 Scrobble 服务全部在设置页面内完成绑定服务绑定方式需要的凭据支持正在播放Last.fm浏览器授权API key API secret✅Libre.fm浏览器授权免注册凭据无需任何凭据✅ListenBrainz粘贴 TokenUser token✅Maloja自托管服务器服务器地址 API key❌4 个服务的注册顺序与定义见 crates/music/src/scrobble/mod.rs。Sonora 如何判定这一次真的听了不是按下播放就算数。Sonora 遵循业界通用的收听规则源自 Last.fm其余服务也沿用⏱️ 歌曲总长不足 30 秒无论播放多久都不计入⏱️ 连续播放满 4 分钟一定计入⏱️ 播放超过歌曲总时长的一半计入规则实现见 crates/music/src/scrobble/mod.rs#L15-L16 和 earned() 方法。3分钟连接Last.fmAPI key获取与授权步骤Last.fm 采用经典的 AudioScrobbler 协议是 Sonora 中唯一一个需要你自己创建 API 凭据的服务源码crates/music/src/scrobble/audioscrobbler.rs。操作步骤登录你的 Last.fm 账号进入 Last.fm 开发者后台创建一个 API 项目记下API key和API secret打开 Sonora 的设置 → Scrobbling分组找到 Last.fm 一行点击Connect连接在弹出的对话框中粘贴 API key 和 API secret提交Sonora 会自动打开浏览器跳转到 Last.fm 授权页——点击同意即可浏览器显示 Sonora is connected. You can close this window. 时设置页状态变为Connected 小贴士Sonora 在本地监听回调浏览器授权最长等待5 分钟audioscrobbler.rs#L18如果浏览器没有自动打开手动在浏览器中完成授权也行。1分钟连接ListenBrainzUser Token获取方法ListenBrainz 的连接最简单——只需要一个 Token登录 ListenBrainz 官网进入个人设置页找到User Token并复制回到 Sonora 设置页点击 ListenBrainz 一行的Connect粘贴 TokenSonora 会调用validate-token接口验证crates/music/src/scrobble/listenbrainz.rs#L41-L54通过后即显示Scrobbling as 你的用户名整个过程不到 1 分钟。此外ListenBrainz 还兼容自托管实例在账户设置中填入服务器地址即可切换到自建服务无需第二个字段。在Sonora设置中打开Scrobble开关所有 Scrobble 服务集中在设置页面底部的 Scrobbling 分组每个服务一行界面逻辑见 crates/views/src/screens/settings.rs#L3192-L3260。每行有三种交互Connect / Disconnect绑定或解绑账号开关Toggle临时暂停某个服务的同步账号绑定不会丢失状态文案Not connected未连接/ Scrobbling as xxx以 xxx 身份同步中/ Waiting for your browser…等待浏览器授权对应文案定义在 assets/i18n/en-US/main.ftl#L715-L736。听歌数据去哪了Sonora自动同步机制详解绑定完成后一切全自动无需干预。整个调度由一个中心实体驱动crates/state/src/scrobble.rs开始播放立即向支持的服务上报Now PlayingMaloja 没有此概念自动跳过⏸️暂停 / 拖动进度恢复播放同一首歌时保留最初开始时间收听时长始终从真正开始那一刻计算✅满足收听规则自动提交 Scrobble批量发送Last.fm 和 ListenBrainz 单次最多携带 50 条双份记账除了第三方服务Song 的来源服务器如 Subsonic/Navidrome也会同步更新它的播放计数和正在播放列表️故障隔离每个服务独立发送某个服务挂了不会连累其他服务丢失收听记录常见问题FAQQ1为什么某首歌没有同步歌曲时长不足 30 秒或你播放时长未过半、也未满 4 分钟——这是正常的防刷机制。Q2浏览器授权页一直没反应等待上限为 5 分钟超时后状态回到未连接也可以直接点Cancel取消随时重新发起。Q3同步失败会有提示吗界面上失败状态显示为 Could not connect具体错误写入运行日志可据此排查如 token 过期、API key 错误。Q4可以同时开多个服务吗可以。Last.fm、ListenBrainz 等可以同时启用一次收听会扇出到所有已启用的服务。小结Sonora 把 Scrobble 做成了设置页里的一行开关Last.fm 用 API key 浏览器授权 3 分钟搞定ListenBrainz 粘贴一个 Token 即连即用Maloja 支持自托管服务器。连接一次之后的每次收听都会按行业标准规则自动同步听歌历史从此完整可查 赞分享【免费下载链接】sonoraA native music streaming client, built with Rust and GPUI项目地址https://gitcode.com/gh_mirrors/sonor/sonora点击查看免费下载相关推荐beets ListenBrainz 插件实战用 lbimport 将 ListenBrainz 听歌历史导入为播放次数beets ListenBrainz 插件实战用 lbimport 将 ListenBrainz 听歌历史导入为播放次数 beets 的 ListenBrai音频CLI音乐数据备份指南一键导出网易云音乐播放历史与歌单音乐数据备份指南一键导出网易云音乐播放历史与歌单 你是否曾担心自己精心收藏的数千首歌曲会因账号问题而消失那些陪伴你度过无数日夜的音乐记忆值得被永久保存。本网页爬虫数据分析数据可视化桌面应用网易云音乐数据备份终极指南3步导出完整播放历史与歌单网易云音乐数据备份终极指南3步导出完整播放历史与歌单 在数字化音乐时代你是否担心精心收藏的数千首歌曲会因账号异常而消失那些陪伴你度过无数日夜的音乐记忆值网页爬虫数据分析数据可视化桌面应用创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
锦
锦皓数字建站
深耕本土企业品牌数字化升级,专注原创端正雅致商务官网,从视觉设计到稳定运维全程保驾护航。