English | 简体中文
这是一个 Home Assistant 自定义组件,可以利用你现有的 TTS 服务来朗读本地的 .txt 格式电子书。它可以自动将文本拆分成自然的句子,并记住你的阅读进度。
- 本地文件读取: 从配置的本地目录读取
.txt文件。 - 智能分章: 支持按正则自动识别章节,或按固定长度分段。
- 断点续播: 自动记录每本书的阅读位置(章节和段落),重启 HA 后依然记得。
- 媒体库集成:
- 在 Home Assistant 左侧“媒体”栏目直接浏览所有书籍。
- 支持按章节分组浏览(每50章一组),防止大量章节卡顿。
- 点击任意章节即可直接调用播放器播放。
- 播放控制: 提供标准的播放、暂停、上一曲(上一章)、下一曲(下一章)控制。
- 无缝切书: 在媒体库中切换书籍时,会自动停止当前播放并加载新书,避免音频混叠。
在配置集成之前,你需要将 .txt 格式的电子书放入 Home Assistant 可以访问的目录。
例如,通过 Samba 访问 Home Assistant 的 /media 目录,并创建一个 ebooks 文件夹:
提示: 请记住这个路径(例如
/media/ebooks),在配置集成时需要填写。默认是/media/ebooks,如果不存在,会自动创建这个路径。
- 在 HACS 中点击右上角菜单,选择 Custom repositories。
- 添加本仓库地址:
https://github.com/neqq3/ebook_tts - 类别选择:
Integration。 - 点击 Download 下载。
- 重启 Home Assistant。
-
前往 设置 > 设备与服务。
-
点击 添加集成 并搜索 Ebook TTS。
-
填写以下信息:
- Source Path: 存放
.txt电子书的绝对路径 (例如/config/www/books或/media/ebooks)。 - TTS Service: 你想要使用的 TTS 服务实体 ID (例如
tts.google_translate_say或tts.edge_tts)。 - Target Player: 实际播放声音的媒体播放器实体 ID (例如
media_player.living_room_speaker)。
- Source Path: 存放
这是最稳定和推荐的使用方式。
-
在仪表盘中添加一个媒体控制卡片,实体选择
media_player.ebook_reader(或你自己命名的实体)。 -
点击卡片上的 浏览媒体 图标选择书籍。
-
在浏览界面中选择书籍和章节,点击即可播放。
- 点击 Home Assistant 左侧边栏的 媒体。
- 选择 电子书 TTS 图标。
- 浏览并点击章节播放。
- 注意:侧边栏模式下的体验可能不如卡片模式流畅,建议优先使用方式一。
- 目前仅支持 UTF-8 或 GB18030 (兼容 GBK) 编码的
.txt文件。 - 确保 Home Assistant 对你配置的 Source Path 有读取权限。
- TTS 服务的生成速度取决于你的网络或本地硬件性能。




