跳到正文
Berth

Berth 与 Audiobookshelf:自托管有声书服务器该选哪个

更新于 2026 年 10 月 27 日

Audiobookshelf 是最知名的自托管有声书服务器:成熟稳定,支持播客,社区庞大。Berth 是一款新服务器,思路不同:书库保存在数据库中,音频可以放在对象存储里,手机扫二维码即可连接。下面介绍两者的区别以及各自适合的场景。

简短回答

并排对比

BerthAudiobookshelf
定位有声书有声书和播客
书库来源数据库;通过网页后台上传书籍扫描媒体文件夹
文件存放位置本地磁盘或任意兼容 S3 的存储本地或挂载的文件系统
音频分发通过签名链接从存储或 CDN 获取,或经由服务器经由服务器
听众登录二维码,无需密码用户名和密码
移动应用自有 Android 和 iOS 应用(尚未上架)官方 Android 应用;iOS 应用处于 TestFlight 测试阶段
服务器许可证Apache-2.0GPL-3.0
成熟度服务器 1.0(2026 年 10 月)成熟,社区庞大

依据截至 2026 年 10 月的公开文档和 issue 跟踪记录。Berth 于 2026 年 10 月发布了首个服务器版本,应用尚未上架应用商店。

用数据库代替文件夹扫描

Audiobookshelf 通过扫描媒体文件夹并推测哪些文件属于哪本书来构建书库。文件夹整齐时这很好用,但一个多余的文件就可能把两本书合并在一起,把文件挪到另一块磁盘还可能丢失与收听进度的关联。

在 Berth 中,一本书就是数据库里的一条记录。你在网页后台上传文件夹或文件,核对 Berth 从标签中读取的书名、作者、朗读者、系列和年龄分级,然后加入书库。章节、曲目顺序和封面都与书一起保存,因此重命名或移动文件不会改变它。

存储与分发

Audiobookshelf 从服务器的文件系统读取书籍。Berth 同样可以把书放在本地磁盘上,也可以放在任意兼容 S3 的存储中——AWS S3、Cloudflare R2、Backblaze B2、Bunny Storage、MinIO、Yandex Object Storage——并为 Cloudflare R2 提供引导式向导。

使用对象存储时,手机可以通过短时效签名链接直接从存储桶或 CDN 下载音频,小型家庭服务器或廉价 VPS 不会成为瓶颈。参见 S3 存储。

连接手机

在 Berth 中,管理员创建听众并出示二维码;手机扫码后书库就会出现。二维码只能使用一次,两分钟后失效;应用会同时获得服务器的家庭网络地址和互联网地址,管理员可以撤销任何设备。详情:连接手机。

Audiobookshelf 能做而 Berth(暂时)不能做的

常见问题

Berth 是 Audiobookshelf 的分支吗?

不是。Berth 是用 Rust 编写的独立服务器,拥有自己的数据库模型、API(用 OpenAPI 描述)和移动应用。

能把我的书库自动迁移到 Berth 吗?

暂时不能。书籍需要在网页后台上传:拖入文件夹或文件,Berth 会读取标签、章节和封面。Audiobookshelf 导入工具已列入路线图,计划在首个版本之后推出。

Berth 和 Audiobookshelf 能同时运行吗?

可以。它们是相互独立的容器;Berth 默认监听 8080 端口,数据保存在自己的文件夹中。