自托管的音乐流媒体服务器Black Candy

简介

Black Candy 是一个自托管的音乐流媒体服务器,旨在为用户提供个人音乐中心。用户可以通过该平台集中管理和播放他们的音乐库,享受个性化的音乐体验。

主要特点

  1. 自托管:用户可以在自己的服务器上运行 Black Candy,确保数据的隐私和安全。
  2. 支持多种音频格式:可以播放多种常见的音频格式,如 MP3、AAC 等。
  3. Docker 支持:通过 Docker 容器轻松部署和管理,简化安装过程。
  4. 移动应用:提供 Android 和其他平台的移动应用,方便用户在不同设备上访问音乐。
  5. 可扩展性:支持通过环境变量和配置文件自定义设置,如数据库类型和媒体路径。
  6. 集成第三方 API:可以与 Discogs API 集成,获取艺术家和专辑信息。

应用场景

  • 个人音乐中心:用户可以在家中或任何支持的环境中创建自己的音乐流媒体服务。
  • 小型音乐工作室:适合小型录音室或音乐工作室,方便管理和播放音乐。
  • 开发和测试:开发者可以使用 Black Candy 作为测试环境,进行音乐相关的应用开发。

不想自己搭建的话,官方也提供了在线 demo,可以去体验一番

  • 地址: https://demo.blackcandy.org
    • 账号: admin@admin.com
    • 密码: foobar

Black Candy 提供了一种灵活、可定制的方式来管理和享受音乐,非常适合音乐爱好者和开发者使用。

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 blackcandy ,选择第一个 blackcandy/blackcandy,版本选择 latest

本文写作时, latest 版本对应为 3.0.0

docker 文件夹中,创建一个新文件夹 blackcandy,并在其中建一个子文件夹 data

文件夹 装载路径 说明
docker/blackcandy/data /media_data 存放音乐文件

端口

本地端口不冲突就行,不确定的话可以用命令查一下

1
2
# 查看端口占用
netstat -tunlp | grep 端口号
本地端口 容器端口
3939 3000

环境

可变
MEDIA_PATH 设为 /media_data,用于设置 Black Candy 的媒体路径

更多的环境变量,请参考官方的文档: https://github.com/blackcandy-org/blackcandy?tab=readme-ov-file#environment-variables

命令行安装

如果你熟悉命令行,可能用 docker cli 更快捷

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 新建文件夹 blackcandy 和 子目录
mkdir -p /volume1/docker/blackcandy/data

# 进入 blackcandy 目录
cd /volume1/docker/blackcandy

# 运行容器
docker run -d \
--restart unless-stopped \
--name blackcandy \
-p 3939:3000 \
-v $(pwd)/data:/media_data \
-e MEDIA_PATH=/media_data \
blackcandy/blackcandy:latest

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

1
2
3
4
5
6
7
8
9
10
11
12
13
version: '3'

services:
blackcandy:
image: blackcandy/blackcandy:latest
container_name: blackcandy
restart: unless-stopped
ports:
- 3939:3000
volumes:
- ./data:/media_data
environment:
- MEDIA_PATH=/media_data

然后执行下面的命令

1
2
3
4
5
6
7
8
9
10
# 新建文件夹 blackcandy 和 子目录
mkdir -p /volume1/docker/blackcandy/data

# 进入 blackcandy 目录
cd /volume1/docker/blackcandy

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:3939 就能看到登录界面

默认的账号:admin@admin.com,密码: foobar

登录成功后的主界面,目前还是空空的

Filestation 中上传音乐文件夹或者文件

都是 mp3 格式的文件

从参考文档 2 看,Black Candy 支持 mp3m4aoggogaopusflacwmawav 格式的音乐文件

右上角进入 Settings, 在 Library 部分勾选 Enable Media Listener,会自动监听媒体库的变化

回到 Library –> Songs 就能看到了

选中即可播放

如果申请了 Discogs Token ,可以用在 Integration 中填写

移动端

Black Candy 支持移动应用程序,包括了 iOSAndroid 。其中 Android 可以在 F-DriodGithub 下载

  • iOS地址: https://apps.apple.com/app/blackcandy/id6444304071
  • F-Driod 地址: https://f-droid.org/packages/org.blackcandy.android
  • Github 地址: https://github.com/blackcandy-org/android/releases/tag/v1.0.0

Android 为例,需要输入 Server Address,也就是 http://群晖IP:3939

输入账号密码,可以是默认的账号,也可以是后台新建的其他账号

登录成功后,就能选择音乐进行播放了

参考文档

blackcandy-org/blackcandy: A self hosted music streaming server
地址:https://github.com/blackcandy-org/blackcandy

Black Candy
地址:https://github.com/blackcandy-org

Black Candy - Music streaming server – HL2GO.COM
地址:https://hl2go.com/downloads/software/media-streaming/black-candy-music-streaming-server/