【免费下载链接】aonsoku
A modern desktop client for Navidrome/Subsonic servers built with React and Electron.
Aonsoku 是一款基于 React 和 Electron 构建的现代化桌面客户端,专为 Navidrome/Subsonic 音乐服务器设计,支持将播放列表、专辑、艺人、单曲下载到本地实现离线听歌。本文手把手带你用满 Aonsoku 的 4 种下载方式,把喜欢的音乐存进自己的设备,随时随地畅听无阻。
一、Aonsoku 下载功能速览
Aonsoku 的下载能力覆盖了完整的音乐层级:从一整份播放列表,到一张专辑、一位艺人,再到单首歌曲。它的实现逻辑很直接——通过 Subsonic API 的download接口获取原始音质文件(format=raw、不限制码率),完整逻辑见 src/api/httpClient.ts。
两种运行环境下的下载体验略有不同:
| 运行环境 | 下载行为 | 提示方式 |
|---|---|---|
| 桌面端(Electron) | 自动保存到系统「下载」文件夹 | 右下角 Toast 显示"Download started.",完成后变为"Your file has been downloaded." |
| Web 端(浏览器) | 触发浏览器标准下载 | 页面提示"Download started." |
核心流程由 src/app/hooks/use-download.tsx 负责,桌面端保存路径在 electron/main/core/downloads.ts 中通过app.getPath('downloads')获取。下载失败时也会收到"There was an error downloading your file."的错误提示。
💡 小提示:如果你的 Aonsoku 部署时设置了环境变量
DISABLE_DOWNLOADS=true(见 README.md 与 env-config.js.template),界面上的所有下载入口会被隐藏,这是管理员为私有部署做的权限控制。
二、播放列表下载:一键打包整份歌单
打开任意播放列表页面,你会在列表顶部看到播放、随机播放按钮旁边的「⋮」三个点菜单按钮。点击它,在弹出的下拉菜单中选择Download即可,整个播放列表会被打包成一个文件下载下来。
对应的代码入口在 src/app/components/playlist/options.tsx 中的handleDownload(),它会调用统一的startDownload(playlist.id)方法。
适用场景:把「通勤必听」「健身歌单」等完整歌单存到本地,出远门、坐地铁也不怕没有网络。
三、专辑下载:整张打包不遗漏
进入任意专辑页面(比如截图中 Besomorph 的《Redemption》),在专辑信息区同样有一个「⋮」菜单按钮,点击后选择Download,就能把这张专辑的所有曲目打包下载。
该入口实现在 src/app/components/album/options.tsx 中,下载之外还附带了"Play Next / Play Last / 添加到播放列表"等实用选项,可以顺手把专辑歌曲加入队列。
适用场景:收藏整张概念专辑、OST 原声带,或想反复精听的现场专辑。
四、艺人下载:收藏音乐人的全部作品
在艺人主页(左侧边栏点击 Artists 进入),艺人头像和信息区下方有一组操作按钮:播放、随机播放、收藏(心形),以及「⋮」菜单。打开菜单选择Download,即可下载这位艺人名下的全部歌曲。
相关逻辑位于 src/app/components/artist/options.tsx,它会把艺人的歌曲 ID 交给startDownload()统一处理。
适用场景:追星必备——把你常听的那位艺人的作品一次性全部缓存到本地。
五、单曲下载:右键菜单快速保存
只想要某一首歌?进入 Songs 页面或任何歌曲列表,在目标歌曲所在行上右键单击,在弹出的上下文菜单中就能看到Download选项,点击即开始下载这一首。
单曲右键菜单由 src/app/components/song/menu-options.tsx 渲染;另外,选中一行歌曲后右键打开的菜单(src/app/components/song/selected-options.tsx)在只选中一首时也会显示下载按钮,同样可以触发单首下载。
适用场景:偶尔单曲循环的热门歌曲,下载单首即可满足通勤、健身需求,不用打包整个专辑。
六、常见问题与下载小贴士
Q1:下载的是压缩过的音质吗?不是。Aonsoku 调用download接口时传入format=raw且不限码率,拿到的就是服务器上的原始文件(如 FLAC、MP3 原档),可放心离线播放。
Q2:下载后文件在哪?桌面端默认放入操作系统的「下载」(Downloads)文件夹;Web 端则跟随浏览器的下载目录。建议在下载后重命名并归档,方便整理。
Q3:为什么我界面上没有 Download 选项?两种可能:一是你的部署通过DISABLE_DOWNLOADS=true关闭了下载(见 src/app/components/options/download-handler.tsx),需要联系管理员;二是服务器端没有授权下载权限。
Q4:多曲目下载会是一个大文件吗?是的。播放列表、专辑、艺人三种批量下载方式都会由服务器打包后下发,下载完成后解压即可得到全部曲目,非常省心。
七、总结
| 下载对象 | 入口位置 | 适合人群 |
|---|---|---|
| 播放列表 | 播放列表页「⋮」菜单 | 歌单控 |
| 专辑 | 专辑页「⋮」菜单 | 专辑收藏党 |
| 艺人 | 艺人页「⋮」菜单 | 铁粉 |
| 单曲 | 歌曲行右键菜单 | 实用主义者 |
Aonsoku 把 Navidrome/Subsonic 服务器变成了你随身携带的音乐库:在线流畅播放,离线也能通过这 4 种下载方式随时听歌。上手只需几秒钟,快去把最心仪的音乐存进本地吧!🎧
【免费下载链接】aonsoku
A modern desktop client for Navidrome/Subsonic servers built with React and Electron.
相关推荐
yandex-music-downloader用法详解:URL一键下载歌手/专辑/播放列表的10种姿势
yandex music downloader用法详解:URL一键下载歌手/专辑/播放列表的10种姿势 yandex music downloader 是一款免
Koel 音乐流媒体嵌入(Embedding)功能实战指南:通过 iframe 分享歌曲、播放列表、专辑与艺人
Koel 音乐流媒体嵌入(Embedding)功能实战指南:通过 iframe 分享歌曲、播放列表、专辑与艺人 导读 Koel 提供了一套完整的“嵌入(Embe
音视频后端前端告别混乱歌单:MusicFreeDesktop播放列表管理全攻略
告别混乱歌单:MusicFreeDesktop播放列表管理全攻略 你是否曾因歌单杂乱无章而错过心仪歌曲?是否在切换设备时丢失精心整理的播放列表?本文将系统解析M
音视频桌面应用
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考