你关心的问题,这里都有答案
从安装、曲库、播放投屏到插件与备份,按你实际会遇到的情况整理。没找到答案?欢迎加入交流 QQ 群 700454910。
认识与选择
它是什么、适合谁、能播什么
LyraNest 是什么?需要什么设备?
一套自托管的音乐与有声书服务。把它装在你自己已有的设备上——NAS、家里的小主机、云服务器或一台常开的电脑——音乐文件始终留在你的硬盘里。之后用浏览器、Windows 客户端、Android 手机或电视上的 TV 客户端访问同一套曲库,歌单、收藏与播放进度全端同步。
完整版和开源社区版有什么区别?
完整版是功能齐全的主力版本:有声书、元数据刮削、插件中心、多用户权限、全平台客户端与各 NAS 原生安装包都在这里,持续更新。开源社区版是基于 MIT 许可的精简版,保留核心的曲库浏览与播放能力,代码完全开放、可自行编译二次开发。想直接用选完整版,想读代码或自己改造可以看社区版。
支持哪些音频格式?
FLAC、ALAC、WAV、APE、DSD(dsf / dff)、AAC、MP3、OGG、Opus、M4A 等常见格式都能识别与播放。局域网内播放时原样直出、不做二次编码,Hi-Res 与母带规格也能按原始采样率输出。
网易云、QQ 音乐下载的加密格式(ncm、mflac、mgg)能播吗?
不能。这些是各家平台的私有 DRM 加密格式,LyraNest 不支持也不打算绕过。请先用你购买的音乐,或自行取得无加密的标准音频文件(如 FLAC / MP3)再放入曲库。
对硬件要求高吗?老设备能跑吗?
不高。服务端默认内存上限 256 MB、预留 128 MB,空闲时占用很低,几年前的入门 NAS 也能稳定运行。只有批量刮削、音频转码这类动作会短暂吃一些 CPU;内存小于 2 GB 的机器建议开启低内存模式(MUSIC_LOW_MEMORY=1)。
安装与升级
怎么装上去、怎么安全升级
有哪些安装方式?
通用方式是 Docker Compose 一键部署,任何支持 Docker 的设备都适用。如果你用的是飞牛 fnOS、群晖 DSM、威联通 QTS、绿联 UGOS Pro 或铁威马 TOS,可以直接在各自的套件中心安装对应平台的原生套件,不用碰命令行。没有外网的环境还能用离线镜像包。前往下载页可以看到全部安装包。
不想敲 Docker 命令,NAS 上有原生安装包吗?
有。群晖(SPK)、威联通(QPKG)、绿联(UPK)、铁威马(DEB)与飞牛(FPK)都提供原生套件,在套件中心选择「手动安装」上传对应架构的包即可。安装向导会引导你选择数据存放的存储卷、音乐与有声书目录,并可以自定义访问端口。原生套件比 Docker 方式更省内存,也会随系统开机自动启动。
飞牛 fnOS 安装后打开是 404?
飞牛原生版走系统统一网关,访问地址必须带应用路径,形如 http://<飞牛IP>:<系统端口>/app/lyranest,最容易漏掉末尾的 /app/lyranest。另外原生 FPK 需要飞牛系统版本 ≥ 1.1.3,系统较老请改用兼容版(Compat)。如果你在应用设置里配了独立局域网端口,直接用 http://<飞牛IP>:<端口>/ 访问即可。
浏览器打不开,提示「无法访问此网站」?
按顺序看三件事:一是容器是否真的在运行(docker compose ps,状态应为 Up);二是端口有没有被别的软件占用,换个端口试试;三是地址要写全,带上 http:// 和端口号,例如 http://192.168.1.50:8080。如果都正常,再检查系统防火墙或云服务器安全组是否放行了该端口。
升级到新版本,曲库、账号和刮削结果会丢吗?
不会。改动只发生在程序本身,你的数据目录原样保留。Docker 用户执行 docker compose pull && docker compose up -d 即可;NAS 套件用户在套件中心「手动安装」新版本、选择覆盖更新,升级脚本会自动迁移原有配置与数据。关键一条:升级前不要删除或清空原有的数据目录。
服务器不能联网,还能部署吗?
可以。下载 Docker 离线镜像包(OCI 归档),用 docker load 导入本机后照常 docker compose up -d 启动,全程不需要访问任何镜像仓库。
群晖安装套件提示「签名无效 / 无法安装」?
进入套件中心右上角「设置 → 常规」,把信任层级改为「任何发布者」。另外要确认包和机器的 CPU 架构对应:Intel / AMD 机型选 x86_64,Realtek / ARM 机型选 armv8;安装向导里请选择已创建好的存储卷(如 volume1),不要选未初始化的空盘。
曲库与扫描
歌怎么进去、扫描卡住怎么办
装好之后曲库是空的,一首歌都没有?
先等一会儿。为了让你打开页面就能秒进,扫描是在后台异步跑的——上万首曲目或机械硬盘首次建立索引需要几分钟。到「设置 → 曲库管理」可以看到实时进度。如果一直是 0,多半是挂载路径写错了(进去看看目录里到底有没有文件),或者音乐目录缺少读取权限。
新加了一块硬盘,曲库里看不到上面的歌?
Docker 运行中无法动态添加目录映射,所以光改配置文件不生效。正确顺序是:在 docker-compose.yml 的 volumes 里加上新目录并设为只读(例如 - /volume2/music:/music2:ro)→ 执行 docker compose up -d 重建容器 → 打开「设置 → 曲库管理」,在对应曲库的挂载目录里点击「添加目录」勾选新目录并保存 → 点「开始扫描」。
刚往 NAS 里拷了新专辑,怎么让它立刻出现?
曲库和有声书架页面右上角有「快捷增量扫描」按钮,点一下就只扫描新增或修改过的文件,扫完当前页面会自动刷新,新歌和新章节直接出现,不用再进后台菜单。
扫描时报错,或者容器直接崩了?
通常是并发提取数设得太高:同时解码几万首高解析度 FLAC 或 APE 会耗尽 CPU 和磁盘 IO,甚至触发系统 OOM。把环境变量 MEDIA_EXTRACT_CONCURRENCY 调低到 2~4(内存小于 2 GB 的机器再开 MUSIC_LOW_MEMORY=1),并且避免在全量扫描的同时发起几千首的批量刮削。
长时间运行会不会让 NAS 硬盘无法休眠?
不会。LyraNest 采用系统内核级的文件事件监听,只在文件真正发生变化时被唤醒;初始扫描、刮削和实际播放结束后,后台进程就处于等待状态,不会定时轮询全盘。硬盘空闲到 NAS 设定的时间后可以正常进入休眠。
我的音乐文件会被修改吗?
不会。Docker 部署时媒体目录以只读方式挂载,程序只能读、不能写。刮削结果、封面、歌词、播放队列与缓存全部写入你自己的数据目录,原始音乐库始终保持原样。
刮削与元数据
封面、专辑信息与歌词的补全
批量刮削为什么这么慢?
默认使用的在线元数据源是国际开源组织 MusicBrainz,它的公共接口有每秒最多 1 次请求的硬性限速,任何客户端都无法绕过,所以几千首的批量刮削本身就是个慢工程。想显著提速,可以在「设置 → 刮削 → 刮削源管理」里导入自建或可信的第三方 JSON 刮削源,速率能放宽到每秒 10~30 次。
提示「没有可供应用的候选」,怎么处理?
两种常见原因:一是候选已经过期或被自动规则处理掉了,点审核页右上角的「刷新状态」重新拉取;二是置信度门槛设得太高,歌名有细微差异的候选会被提前丢弃,到「设置 → 刮削」把批量刮削置信度适当调低(例如从 95% 调到 80%)再重试。
重新刮削会不会在曲库里多出一份重复的歌?
不会。刮削只更新数据库里这首歌的元数据,磁盘上的音频文件始终只有一份,程序绝不会复制出一份新的音频。哪怕反复重新刮削,文件数量也不会变。
文件里明明有封面,为什么还显示「未刮削」?
因为这项统计不只看封面。它还会检查专辑名、艺术家、发行年份、音轨编号以及歌词是否齐全。如果只有一张内嵌图片而缺少这些文字信息或歌词,仍然会被列进「建议补齐」里。
播放、投屏与歌词
没声音、转圈、投屏与歌词问题
能把歌投到客厅电视、功放或智能音箱上放吗?
可以。播放页有投播按钮,会列出局域网内的 DLNA / UPnP 播放设备(电视、AV 功放、网络音箱等)。选中设备后当前歌曲直接推过去播放,面板会变成遥控器,可以拖进度、调音量、暂停。手机端和桌面端是底部滑出设备列表,体验一致。音频流由接收设备直接关源拉取,不做二次编码,音质无损。
投播时搜不到我的电视或音箱?
依次确认:手机 / 电脑与电视音箱连在同一个局域网、同一网段(如果路由器开了「AP 隔离」要关掉);部分电视和音箱需要先在自身设置里手动开启「DLNA 投屏」「媒体共享」一类的开关;网络里如果有防火墙或多级路由,要放行 SSDP 组播端口 UDP 1900。如果环境比较特殊(比如智能家居单独划分了 VLAN),可以在投播面板里「手动添加设备」,直接填设备 IP 或其描述地址。
投上去了,但电视一直转圈或提示不支持该格式?
多数智能电视只支持 MP3 或 16 bit / 44.1 kHz 的 AAC,解不了 24 bit / 96 kHz 的 FLAC、APE 或 DSD。在投播时勾选「转码」,服务端会实时把音频转成电视一定能播的高保真流。另外请确认反代没有拦截 Range 分片请求(见下一条)。
外网访问时能看列表和歌词,但一播放就一直转圈?
这是反向代理拦截了 Range 请求导致的——音频播放依赖 HTTP 分片拉流。在 nginx 对应的 location 里加上这几行再 reload 即可:
proxy_set_header Range $http_range;
proxy_set_header If-Range $http_if_range;
proxy_buffering off;
proxy_read_timeout 600s;电视上播放部分无损音乐,进度条在走但没声音?
这是电视芯片解不了高采样率母带(如 96 kHz / 24 bit 或 DSD、APE)。在 TV 客户端的「系统设置 → 音频输出」打开「服务端实时转码」,或在播放界面呼出菜单勾选转码播放,服务端会把音频实时转成电视芯片完全支持的格式,立刻出声。
歌词显示乱码,或者时间轴快 / 慢了半秒?
乱码是因为老歌词文件用了 ANSI、GBK 等旧编码,把 .lrc 用文本编辑器打开、以「UTF-8(无 BOM)」另存覆盖即可,程序会秒级自动重载。时间轴不准不用改文件:在全屏播放页的歌词设置里用「时间微调」加减 0.5 秒,这个偏移会按单曲保存、全端生效。
Android 桌面悬浮歌词一息屏就消失了?
两个权限要放开:在系统设置里给本应用开启「悬浮窗 / 显示在其他应用上层」;再把它的电池策略设为「无限制 / 允许后台运行」,避免被国产系统的省电策略在后台清理掉。
转码播放时 NAS 的 CPU 占用很高?
转码是把无损音频实时解码再重新编码,必然消耗算力。局域网内或带宽充足时,建议在客户端关闭转码、使用原始音频直接播放。确实需要外网省流转码时,目标格式优先选 Opus,码率 128k 或 192k,音质好且编码开销低。
离线时还能听歌吗?
可以。把歌曲、封面和歌词下载到本地后,离线状态下照常浏览与播放已下载的内容。在线播放时也会顺带写入缓存,临时断网不至于立刻中断。
换设备后能接着上次的位置听吗?
可以。跨端续播会保存当前歌曲、播放队列、队列位置与停止时间点,在另一台设备上打开就能继续,不用自己找上次听到哪。
曲库清理
重复歌曲怎么安全地清掉
曲库里有大量重复歌曲,怎么清理?
用插件中心里的「一键查重去重」。它会按「歌曲标题 + 艺术家」把相同曲目聚成一组,然后让你选择优先保留哪一份:文件体积最大(默认,通常规格最高)、体积最小、码率最高、采样率最高、修改时间最新,或文件路径最短。
点完去重,硬盘空间一点没释放?
这是设计如此——去重默认执行的是「软隐藏」,只会把这些重复项从曲库列表、搜索结果和随机播放里屏蔽掉,绝不删除磁盘上的文件,所以空间不会变化。如果你确认这些就是冗余副本、想真正腾出空间,请用管理员账号登录,在「账户设置 → 隐藏歌曲管理」里勾选条目,再点「批量物理删除」。
执行物理删除时提示「目录没有写入权限」?
这是安全探针在保护你——它在删除前会先试写一个临时文件,写不进去就中止,避免出现「数据库删了、硬盘文件还在」的脏数据。最常见的原因是挂载写成了只读:把 docker-compose.yml 里媒体目录末尾的 :ro 去掉(或改成 :rw),执行 docker compose up -d 重启;同时确认运行容器的用户对该目录有写权限。改好后物理删除会连同名 .lrc 歌词文件一起清掉。
账号、多用户与安全
家里人一起用、权限与登录
最多可以建几个账号?
单个服务端实例最多 5 个账号(含管理员)。创建第 6 个时会被拒绝并返回 409,这是系统设计的硬上限。如果确实需要更多,可以清理掉不再使用的账号后再添加。
我隐藏的歌曲,家里其他人还能看到吗?
能看到,这是有意设计的。隐藏是「用户级」的:只影响你自己的曲库列表、搜索结果和随机播放,用来过滤你个人不喜欢的歌。它不会删除硬盘文件,也不会干扰其他成员的歌单和收听。想恢复随时到「设置 → 隐藏歌曲」取消即可。
登录安全吗?多台设备会不会串号?
登录支持账号密码与扫码授权两种方式。媒体流和封面访问都使用与当前会话绑定的短期凭据,不会长期驻留;多台设备之间的登录态相互隔离,某一台退出或失效不影响其它设备。管理员还可以按曲库给成员分配可见范围。
扫码登录的二维码失效了?
二维码有 3~5 分钟的有效期,超时请刷新重新生成。另外手机客户端和展示二维码的设备(电视 / 网页)必须连的是同一个 LyraNest 服务端实例,并确认手机已授予相机权限。
客户端需要哪些权限?
Android 客户端只请求扫码登录所需的相机权限,不涉及通讯录、短信等敏感权限。悬浮歌词功能会额外需要「显示在其他应用上层」授权。
插件与小爱音箱
音源下载、歌单导入与语音播放
小爱音箱怎么连上自己的曲库?
安装「小爱音箱网桥」(XiaoAI Bridge)插件,它同样提供飞牛 / 群晖 / 威联通 / 绿联 / 铁威马的原生安装包。装好后在网桥里登录小米账号、选择音箱,并填写 LyraNest 的访问地址即可。之后对小爱说歌名就能播放你 NAS 里的音乐。
对小爱说「播放周杰伦的所有歌」,它说找不到?
先检查曲库里这首歌的「艺术家」标签到底写的是什么。如果本地文件里是英文的 Jay Chou 或者写成了群星合辑,用中文「周杰伦」当然匹配不到——把标签改成一致即可。另外确认网桥运行状态正常、目标音箱在线。也可以换个说法试试,比如「放周杰伦的歌」。
小爱音箱配置测试通过了,但播放时没声音?
最常见的原因是串流地址填错了。小爱音箱是直接去拉取音频流的,所以地址必须是它能访问到的局域网真实 IP(例如 http://192.168.1.50:8080),填 127.0.0.1 或 localhost 它当然访问不到。另外如果小米账号的授权凭证过期,需要回网桥后台重新验证登录。
能在网页或 App 里直接把歌推到小爱音箱吗?
可以。现在支持反向推送:播放页新增了「推送到小爱音箱」按钮,网页端和客户端都能点,不用再对着音箱说话。同时也支持语音连续播放某位歌手的全部歌曲、按歌单点播,以及「播放周杰伦最新专辑里的七里香」这类带修饰的说法。
配置第三方音源或其他插件时连接测试失败?
基本都是地址格式问题。Solara 要填根路径(例如 http://192.168.1.50:3333),末尾不要加 /proxy;SQMusic 要填后端的 API 端口,不要填前端网页端口。如果插件和 LyraNest 都跑在 Docker 里,还要确认两个容器在同一个 Docker 网络内、或者用宿主机的真实 IP 通信。
数据与备份
数据存在哪、怎么备份和回滚
我的数据都存在哪里?备份要备什么?
有两个目录:一个是你的媒体目录(音乐与有声书原始文件,程序只读),另一个是数据目录(数据库、歌单、收藏、刮削结果覆盖、账号与播放记录)。备份只需要定期打包数据目录即可,媒体文件本身一般另有备份。
换机器怎么迁移?升级出问题怎么回滚?
迁移:停掉容器,把数据目录整体拷贝到新机器,用同样的挂载路径启动即可,账号与曲库索引都在里面。回滚:部署时把镜像版本号写死(而不是用 latest),出问题时改回上一个版本号再 docker compose up -d,数据目录不受影响。
我的数据会离开局域网吗?
默认不会。LyraNest 不收集你的曲库信息,也不会上传任何文件。只有你主动启用网络刮削、使用音乐下载插件或小爱音箱网桥时,才会与你指定的外部服务通信。
把音乐,
放回你自己家里
现在开始建立属于自己的音乐库。
