音乐流媒体服务器Navidrome
什么是 Navidrome ?
Navidrome是一个开源的基于网络的音乐收藏和流媒体服务器,与Subsonic/Airsonic兼容。它让您可以自由地从任何浏览器或移动设备收听您的音乐收藏。就像您的个人Spotify!
什么是 Spotify ?
Spotify是一个正版流媒体音乐服务平台,2008 年 10 月在瑞典首都斯德哥尔摩正式上线。Spotify提供免费和付费两种服务,免费用户在使用Spotify的服务时将被插播一定的广告,付费用户则没有广告,且拥有更好的音质。
老苏曾介绍过一些音乐服务器,你可以根据自己的需要进行选择:
安装
在群晖上以 Docker 方式安装。
在注册表中搜索 navidrome ,选择第一个 deluan/navidrome,版本选择 latest。

卷
在 docker 文件夹中,创建一个新文件夹,并将其命名为 navidrome,并建 2 个子目录,分别为 music 和 data

| 文件夹 | 装载路径 | 说明 |
|---|---|---|
docker/navidrome/data |
/data |
存放数据 |
docker/navidrome/music |
/music |
音乐库,建议只读 |
如果你已经有音乐库,可以将音乐库直接映射到
/music,从安全性考虑,建议将/music设置为只读

当然你非要读写也是可以的

端口
直接用了默认的端口 4533
| 本地端口 | 容器端口 |
|---|---|
4533 |
4533 |

环境
环境变量均为可选项,请参考官方文档:https://www.navidrome.org/docs/usage/configuration-options/

运行
在浏览器中输入 http://群晖IP:4533 ,首先要注册一个管理员

接下来就能看到主界面

设置中文
右上角 Settings –> Personal –> Language

选择 简体中文

播放歌曲
在 music 中拷入了一张无损碟

快速扫描

能够被识别

可以直接播放

外部集成
配置 Navidrome 可以从 Last.fm 和 Spotify 获取专辑信息和图像
Last.fm
首先需要一个 Last.fm 免费帐户,其次你要能访问 Last.fm
- 转到 https://www.last.fm/api/account/create 并创建一个
API帐户。只有应用程序名称字段是强制性的

- 提交表单后,可以从
API account Created页面获取API Key和Shared Secret

- 将上面的值复制到
Docker的环境变量
| 可变 | 值 |
|---|---|
ND_LASTFM_ENABLED |
设置 false 为完全禁用 Last.fm 集成 |
ND_LASTFM_APIKEY |
Last.fm 获取的 API Key |
ND_LASTFM_SECRET |
Last.fm 获取的 Shared Secret |
ND_LASTFM_LANGUAGE |
用于从 Last.fm 检索的语言的两个字母代码,简体中文为 zh |

Spotify
在 Spotify 中创建一个免费帐户,然后按照以下步骤操作:
- 单击
Spotify的开发者仪表板中的CREATE AN APP按钮:https://developer.spotify.com/dashboard/applications

- 填写所有字段并单击
CREATE按钮:

- 将值复制到
Docker的环境变量

| 可变 | 值 |
|---|---|
ND_SPOTIFY_ID |
Spotify 客户端 ID |
ND_SPOTIFY_SECRET |
Spotify 客户端 Secret |

转码设置
之所以要转码,是因为无损的文件比较大,一般都有几百M,所以需要进行转码成,便于客户端进行播放
但 Navidrome 出于安全原因,禁用了从 Web 界面更改参数,所以需要先修改 Docker 的环境变量
| 可变 | 值 |
|---|---|
ND_ENABLETRANSCODINGCONFIG |
设置为 true 才能支持转码功能 |
ND_TRANSCODINGCACHESIZE |
转码缓存的大小。设置 0 为禁用缓存,默认为 100MB |

默认设置中有两个转码方案,一个是转 MP3,另一个是转 OPUS

可以根据需要修改 比特率

然后选择需要转码的客户端
关于客户端,老苏推荐你看看
Subsonic Apps列表:http://www.subsonic.org/pages/apps.jsp

老苏还是用的 Android 客户端 Subsonic

修改完成

又拷了 2 张 MP3 格式的碟

从日志看,播放无损的 WAV 进行了转码

而播放 MP3 则没有

参考文档
navidrome/navidrome: 🎧☁️ Modern Music Server and Streamer compatible with Subsonic/Airsonic
地址:https://github.com/navidrome/navidromeNavidrome
地址:https://www.navidrome.org/Docker | Navidrome
地址:https://www.navidrome.org/docs/installation/docker/