首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >AudioDock: NAS和服务器最好的音频播放软件!

AudioDock: NAS和服务器最好的音频播放软件!

作者头像
萌萌哒草头将军
发布2025-12-31 19:25:22
发布2025-12-31 19:25:22
3600
举报
文章被收录于专栏:前端框架前端框架

前言

前几天介绍了我开发 AudioDock 项目的一些问题。好多小伙伴很感兴趣这个项目。

https://github.com/mmdctjj/AudioDock

桌面端
桌面端

桌面端

今天就简单介绍下这个项目吧!

AudioDock

AudioDock 是一款免费开源的音频播放器,

AudioDock logo

  • 多端支持 💻:包含移动端、web端、桌面端、小程序、电视端!
  • 双模式无缝切换 ♻️:有声书、音乐模式一键无缝切换,记忆不同模式下的播放信息!
  • 支持 docker 部署 📦:可以通过 docker 部署服务端和 web 端!
  • 多用户支持 👥:支持多用户交互联动!
  • 设备接力 📱:支持多设备之间无缝切换!
  • 解析元数据 🖼️:如果是带元信息的歌曲,可以展示歌词、封面等信息!

目前已经完成了移动端、桌面端、web端的开发,正在有节奏的测试中,即将正式发版!

AudioDock 依赖的服务端已经完成了所有功能的支持了。

下面是完整的开发情况:

✅:完成 ❌:未开发/未完成开发 🚫:无设计

功能描述

桌面端

移动端

切换有声书和音乐模式

自动导入数据

播放器功能

歌词展示

专辑、艺术家

聚合搜索

边听边存

多端同步

迷你播放器

🚫

多用户同步播放

播放记录

收藏记录

桌面歌词

和系统交互

TTS 生成有声书

云盘聚合

快速体验
NAS 部署
代码语言:javascript
复制
docker pull ctjj/audiodock-api:latest
docker pull ctjj/audiodock-web:latest

然后复制 readme 对应的内容到 nas 项目位置启动即可,

无法拉镜像的小伙伴公众号后台输入:audiodock ,获取链接!

本地运行

准备:

  • 复制 services/api、 packages/db 包 根目录下的 .env.example 文件,修改名称为 .env
  • 修改下面文件路径
代码语言:javascript
复制
AUDIO_BOOK_DIR=./music/audio
MUSIC_BASE_DIR=./music/music
CACHE_DIR=./music/cover

然后运行下面的命令,自动打开桌面端

代码语言:javascript
复制
nvm use 22
pnpm install
npm run dev

移动端需要进入 /apps/mobile 目录启动:

代码语言:javascript
复制
npx expo run:ios --device
docker 启动

修改 docker-compose 的环境变量 和 volumes:

代码语言:javascript
复制
environment:
  - AUDIO_BOOK_DIR=/audio
  - MUSIC_BASE_DIR=/music
  - CACHE_DIR=/covers
  - DATABASE_URL=file:/data/dev.db

# 挂载数据文件和缓存,使用 Docker 命名卷更安全
volumes:
  - ./audio:/audio
  - ./music:/music
  - ./covers:/covers
  - api-db:/data

根目录下运行构建命令:

代码语言:javascript
复制
docker-compose build --no-cache
docker-compose up
产品由来

首先我是一名重度的 NAS 用户,一方面是需要将孩子、家人的海量照片存储起来,另一方面我本人也是数据爱好者。

我遇到的最大的问题是没有一款让 NAS 用户用起来舒服的音频播放器!厂家也是在摆烂中,没办法那就自己开发吧!

用心的设计

对于有各种想法的开发者来说,自己开发一款属于自己的产品,无疑是件开心的事情,因为天马行空的想象有天变成了可落地的产品!

所以,AudioDock 无限趋近我心中完美的样子!

歌词滚动展示:

歌词滚动展示
歌词滚动展示

歌词滚动展示

桌面歌词:

桌面歌词
桌面歌词

桌面歌词

mini播放器:

mini播放器
mini播放器

mini播放器

和系统集成:

和系统集成
和系统集成

和系统集成

可以在系统导航栏随意控制!

同步播放:

同步播放请求
同步播放请求

同步播放请求

不同用户之间可以互相邀请同步播放,同意后播播邀请者当前的音频和列表,给生活多一点分享的乐趣!

设备接力:

设备接力
设备接力

设备接力

当我在通勤时用手机听歌,回到公司,打开电脑,可以继续听!

激动人心的功能

除了上面基础的功能,我目前正在调研准备下个阶段功能的开发。

TTS 生成有声书

有的时候很喜欢一本书,但是有不想坐着,只想躺着听,找不到合适的工具来满足我的使用场景。

所以,下个阶段努力实现这个功能。

早期调研使用 edge-tts python 库来实现这个基础功能。

鉴于最近 Index TTS 的强势出圈,也打算跟进克隆音色朗读文本的方案!

云盘聚合

我的仓鼠行为很早就出现了,在云盘囤积了各种音乐,为了方便入库,后面也会实现将云盘的音频统一入库。

简单的方案是,通过云盘授权 AList,然后通过 AList 的服务和 AudioDock 服务对接,实现音频自动入库。

未来展望

后续,还会考虑做个小程序,让大家的使用更加方便,如果后面我家里买了大电视,会考虑做个电视端的播放器,这样整个生态就全了!

最后

希望 AudioDock 的出现,可以给 Docker 党、Nas 党带来更多的便利!欢迎小伙伴给我 star!!!

https://github.com/mmdctjj/AudioDock

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-12-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 萌萌哒草头将军 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • AudioDock
    • 快速体验
      • NAS 部署
      • 本地运行
      • docker 启动
    • 产品由来
    • 用心的设计
    • 激动人心的功能
      • TTS 生成有声书
      • 云盘聚合
    • 未来展望
  • 最后
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档