如果你已经用 Plex 管理电影和音乐,它自然也适合存放有声书:每本书在你自己的服务器上只放一份,你所有的设备都能播放。Plex 本身是为音乐和视频设计的,所以有声书在服务器端需要稍作整理,手机上也需要一个明白自己在看什么的应用。这篇札记把两边都讲到。
服务器端:音乐资料库,按书来整理
Plex 没有有声书资料库类型。所有 Plex 有声书应用都遵循的惯例是使用音乐资料库,按如下方式整理:
| Plex 里叫 | 对一本书来说是 |
|---|---|
| 艺人 | 作者 |
| 专辑 | 书 |
| 音轨 | 书的一个音频文件 |
一本书如果是一个 M4B,就是只有一条音轨的专辑。一本书如果是四十个 MP3,就是有四十条音轨的专辑,它们的顺序很重要。让 Plex 扫描之前,先把文件的标签整理好(专辑名就是书名,专辑艺人就是作者,音轨编号按顺序),并让每本书单独放一个文件夹。1
把有声书放在单独的音乐资料库里,不要和你的专辑混在一起。这样音乐库保持干净,有声书应用也只显示书。
iPhone 端:登录你自己的服务器
在 Voxlight 中,前往 “设置”→“连接Plex服务器”,或点按“书籍”标签左上角的服务器按钮。登录使用 Plex 自己的链接:Voxlight 打开 plex.tv,你在那里批准,应用就会自动连上。你的 Plex 密码从不经过 Voxlight。
接着,Voxlight 会找到服务器的各个地址并选出最好的路线:先本地网络,再远程访问,最后才用 Plex 的中继。服务器旁边的彩色圆点告诉你当前状态:
- 绿色:已连接。
- 黄色:正在连接或同步。
- 红色:已退出登录或无法访问。
随后,服务器上的书会出现在“书籍”标签中,和手机上的书放在一起。尚未下载的书带一个小小的云朵图标。
在线播放还是下载
打开一本服务器上的书,你有两个选择:
- 在线播放立即开始,但整个收听过程都需要服务器可以访问。
- 下载把书保存在手机上离线收听,适合坐飞机、过隧道,或者服务器夜里会休眠的情况。
连接中断时,下载会从停下的地方继续;Voxlight 会在开始前确认空间足够,而不是把你的手机塞满。如果你先在线播放过,已经听过的部分会被复用,不会再下载一遍。
在蜂窝网络下,蜂窝网络下省流量会以更轻、适合人声的音质在线播放;在 Wi-Fi 下,你始终得到原始文件。
分成许多文件的书
很多 Plex 有声书方案恰恰在多文件的书上出问题。Voxlight 会下载专辑的每一条音轨,排好顺序(每个文件都有音轨编号时按编号,否则用一种懂得“Part 10”排在“Part 9”之后的排序),然后合成一本书,每一段对应一个章节。如果下载被打断,重试时只会获取缺失的部分。
连不上的时候
大多数连接问题出在下面三处之一。
- 本地网络权限。在家里、和服务器同一个 Wi-Fi 时,iOS 必须允许 Voxlight 访问你的本地网络:iOS“设置”→“App”→“Voxlight”→“本地网络”。被拒绝的权限,表现得和服务器宕机一模一样。
- 远程访问。在外面时,服务器需要在 Plex 中开启远程访问,或者使用中继。如果你通过 VPN 或 Tailscale 访问服务器,Voxlight 也可以使用那个地址。
- 休眠的服务器。磁盘会停转的 NAS,或者离开 Wi-Fi 的手机,都会让在线播放中断。如果需要稳定收听,就下载这本书。
重新打开应用,总会再尝试连接一次。如果你想从头来过,彻底重置Plex会退出登录,并移除该服务器的书目、封面和已下载的书,但会保留你的收听历史和时刻;再次下载同样的书时,它们会重新连上。
不止一台服务器
如果你还有第二台 Plex 服务器,Voxlight 也能显示它的资料库。你最先连接的服务器始终是主服务器;其他服务器在 Plex 设置页面中按需开启。
如果你用的是 Audiobookshelf
Audiobookshelf 是专为有声书打造的自托管服务器,不需要上面那些按音乐资料库整理的步骤。从 “设置”→“连接Audiobookshelf” 连接:输入服务器地址并登录,书目就会以同样的方式出现在“书籍”标签中。
这一切的简短版本在用户指南里:使用你自己的 Plex 服务器。如果你的有声书还没放到服务器上,正在找可以完全归你所有的书,请从无 DRM 目录开始。