Navidrome 是一个自己搭的音乐库服务。把它指向一个有 mp3 的文件夹,它扫一遍,然后给你一个网页:按专辑排的封面墙、能点的曲目表,底部还有一条播放器。手机或别的电脑连同一个地址也能听。
69 MB 单文件,解压双击就跑
它没有安装程序,也不需要数据库服务。解压出来只有一个 exe。SQLite 已经编译在里面。
navidrome_0.64.2_windows_amd64.zip 24,508,330 字节
navidrome.exe 72,977,408 字节(69.6 MB)
version 0.64.2(build 10114574)
数据库 data\navidrome.db,675,840 字节
默认参数是 music 文件夹与当前目录,端口 4533。也就是说把 exe 和 music 放一起,双击就能跑,浏览器开 127.0.0.1:4533 就有界面。
第一次扫库:6 首 267.7 毫秒
启动与扫描分开计时。端口先通,扫库在后台跑,日志里能看到逐条进度。
进程到端口可连 1.54 秒
内存占用 40 MB
首次扫描曲目数 audioCount=6
单文件夹处理耗时 elapsed=253.1ms
整个扫描耗时 duration=267.7ms
日志收尾 Scanner: Finished scanning all libraries / Scan completed
6 首歌是 3 张专辑、总时长十几分钟的小库,267 毫秒这个数字只能说明启动链路没问题,说明不了上千首时的表现。真要压测得上万首。
装完第一屏不是登录,是建管理员
它没有预置账号,第一次打开会直接让你创建管理员,表单只有三个输入框:用户名 / 密码 / 确认密码。填完点 CREATE ADMIN,立刻进库。
这个设计对自建服务是对的,省掉一个默认密码被扫的风险。换台机器重新部署,得再建一次。账号信息存在 data 目录的数据库里,跟着库走。
启动方式有两种:双击 2-启动.bat,它会起服务、等端口,然后开浏览器;或者直接双击 navidrome.exe,然后自己访问 127.0.0.1:4533。两种都能用,bat 只是省一步。
专辑页、歌曲页和播放条都是现成的
左侧栏把库分成几块:Albums / Artists / Songs / Radios / Shares / Playlists。专辑按封面排成网格,封面是从音频文件内嵌图片里读的,标签里的专辑名与艺人名会显示在下面。
点开一张专辑,顶部是封面加一行统计:2026 / 2 Songs / 01:28 / 1.36 MB,下面一排按钮是 PLAY / SHUFFLE / PLAY NEXT / PLAY LATER / ADD TO PLAYLIST / DOWNLOAD。
专辑页统计 夜行列车 / 实测库乐队 / 2026 / 2 Songs / 01:28 / 1.36 MB
曲目质量标注 MP3 128
播放条 站台 / 实测库乐队 - 夜行列车 - 2026 / 00:03 / 00:41
播放队列 Play Queue 2 首
歌曲页把标签摊成表格,列是 Title / Album / Artist / # / Plays / Year / Quality / Time / Rating。6 首歌一行一条,曲号与播放次数都记着。这张表最能说明扫描质量:标签写得对,它就读得对。
| 页面 | 看到什么 | 数据来源 |
|---|---|---|
| 专辑网格 | 3 张专辑封面加艺人名 | 内嵌封面图与 album 标签 |
| 专辑详情 | 2 首曲目 / 01:28 / 1.36 MB | 逐文件时长求和 |
| 歌曲列表 | 6 行,带曲号与播放次数 | track 与播放记录 |
| 播放条 | 00:03 / 00:41 实时进度 | 浏览器音频元素 |
Subsonic 接口能用,第三方客户端能接
除了自己那个网页,它还实现了 Subsonic 协议,第三方播放器可以直接连。我用一条真实请求验证过。
GET /rest/getAlbumList2.view?u=<用户>&p=<密码>&v=1.16.1&c=shiceku&f=json&type=newest
返回 status=ok,3 张专辑,第一张 静水 2 首
延迟 24.7 / 2.3 / 1.5 / 1.4 / 1.4 毫秒,中位 1.5 毫秒
这条比网页更有用:手机上装个支持 Subsonic 的播放器,填地址、账号和密码就能听,不需要它自己的 App。第一次请求 24.7 毫秒是建连接的开销,之后稳定在 1.5 毫秒上下。
库文件只有一个,备份就是复制它
扫描结果全在 data\navidrome.db 里,6 首曲目扫完是 675,840 字节。整个库不到 700 KB,比一张封面图大不了多少。
迁移很简单:复制 exe、music 和 data 三个东西到新机器,改都不用改。反过来,删掉 db 就是清空重来,下次启动会重新扫一遍。
实测里有个坑值得提前说:不加 --datafolder 时数据库落在当前目录,不是 data 子目录。我第一版包里的 bat 就漏了这个参数,结果库文件跑到包根目录去了。加一条 --datafolder data 才跟说明书对得上。
几个坑,以及它不适合的场景
默认监听 0.0.0.0:4533,同一局域网的人都能打开。只想自己用,启动时加 --address 127.0.0.1。要放到公网就得自己配 HTTPS 与反向代理,这项本文没有验证。
转码与部分封面提取依赖 ffmpeg,包内没带。只看自己已有的 mp3、flac 不装也能用;要在浏览器里把 flac 实时转成 mp3,就得给它一个 ffmpeg 路径。
它管的是「已有音乐文件的整理与播放」,不做下载,也不做歌词匹配。曲库靠你自己攒,标签乱了界面就跟着乱。想开箱就有内容的人就别指望它了。









