嗨,大家好。我来分享一下我创建的这个用于将epub书籍转换为有声书的小Python程序。
简而言之:
- 在Python 3.10及以上版本中,创建一个虚拟环境并运行
pip install audiobook - generator
(或者直接使用pipx
,它会自动为你管理Python虚拟环境)。请耐心等待,因为它会下载一些大型依赖项,如PyTorch和kokoro tts模型。在Ubuntu系统中,这些依赖项大约占用6GB空间。 - 运行:
abg <epub路径> <音频输出目录>
- 就这样。
特性:
- 在Windows/Ubuntu/Mac系统上测试过。
- 如果存在支持CUDA的GPU,则自动选择。
- 根据章节顺序和名称,为每个章节生成单独的音频文件(mp3)。
- 对于我测试的两本书,总大小约为300 - 500MB,大约是我试过的其他转换器生成文件大小的1/2 - 1/3。
- 如果存在封面图像,也会提取到同一目录。
为什么要做另一个电子书转有声书转换器?
- 我试过两个转换器,但都花了我不少时间来弄清楚如何让它们在CUDA GPU上运行(CPU运行没问题但速度慢),所以最后我决定自己创建一个,它的依赖项包含了所有东西,所以如果你想使用CUDA GPU就不需要安装任何额外的东西。
- 这纯粹是个人喜好,但我更喜欢一个文件名是章节名的mp3文件,而不是一个有声书的大文件。我只需将整个目录复制到有声书架(audiobookshelf),然后文件名就会显示为章节名。
- 我还想保留封面图像。
GitHub仓库:
https://github.com/houtianze/audiobook - generator
讨论总结
这个讨论围绕一个将epub转换为有声读物的Python程序展开。分享者介绍了程序的安装、运行方式和一些特性。评论者们总体态度积极,有的表达了对这类工具的期待已久,有的对程序表示认可和称赞,还有人针对程序使用中的问题进行提问,例如CUDA支持、是否有试听样本、语言支持等,也有人将这个程序与其他语音合成工具进行比较。
主要观点
- 👍 推荐使用“-s 1.3”参数来调整程序默认语音速度
- 支持理由:程序默认速度1.0很慢。
- 反对声音:无。
- 👍 对这个epub转有声读物的项目期待已久并想要尝试
- 正方观点:满足了一直以来的需求。
- 反方观点:无。
- 👍 认可分享的程序并询问是否有可试听的样本
- 支持理由:觉得程序很棒。
- 反对声音:无。
- 💡 在Windows机器上安装程序后默认使用CPU编码且CUDA检测可能受已安装的特定旧版本pytorch或pipx影响
- 解释:分享了自己的安装体验和遇到的问题。
- 💡 Kokoro TTS在早期版本能以小样本量生成高质量语音且在语调上有优势
- 解释:回答关于程序与手机TTS区别的提问时提到的。
金句与有趣评论
- “😂 use -s 1.3 for normal, slightly fast speed default voice (af_heart). The default speed of 1.0 is veeery slow.”
- 亮点:以幽默的方式指出程序默认速度慢并给出解决方案。
- “🤔 我自从电子书成为一种事物以来就一直期待着这样一个项目。”
- 亮点:表达了对该项目长久的期待。
- “👀 Awesome! Got any samples we can listen to?”
- 亮点:在认可程序的基础上提出合理的试听样本需求。
- “😎 On an old Intel i5 4440 system (4 cores), you get 125 minutes of audiobook per 60 minutes of realtime encoding work.”
- 亮点:提供了具体的性能数据。
- “😊 我长时间以来一直在寻找像这样的东西,甚至用claude制作了自己的较差版本,但你的更好,哈哈。”
- 亮点:通过对比衬托出这个程序的优势。
情感分析
总体情感倾向是积极正面的。主要分歧点较少,可能因为这是一个比较小众的工具分享,大家更多是基于自己的需求和好奇来提问和发表看法,没有太多矛盾冲突的地方。
趋势与预测
- 新兴话题:可能会有更多关于如何优化程序在不同系统(如Windows)下的性能(如CUDA支持)的讨论。
- 潜在影响:如果这个程序得到更多推广,可能会对喜欢将epub转换为有声读物的人群在阅读方式上产生影响,也可能促使更多类似功能的工具出现或者已有的工具进行改进。
详细内容:
《创新的 EPUB 转有声书转换器引发热烈讨论》
近日,Reddit 上一则关于 Python 程序“audiobook-generator”将 EPUB 书籍转换为有声书的帖子备受关注,获得了众多点赞和大量评论。
原帖详细介绍了这个程序的使用方法,包括在 Python 3.10+环境下创建虚拟环境、安装依赖、运行命令等步骤。还列举了程序的特点,如在多种操作系统上测试通过、自动选择可用的 CUDA 显卡、按章节生成单独的音频文件、生成的文件大小较其他转换器更优、提取封面图像等。同时提供了项目的 GitHub 仓库链接。
讨论焦点主要集中在以下几个方面: 有人建议使用“-s 1.3”参数设置正常稍快的语音速度。有人表示从电子书出现时就期待这样的项目,并且迫不及待想要尝试。有人询问使用的模型,答案是“models–hexgrad–Kokoro-82M”。有人询问是否有示例音频可供聆听,分享了相关链接。还有人探讨了在 Windows 系统上实现 CUDA 支持的问题,并分享了 CPU 转换速度的参考数据。
对于与手机内置 TTS 程序的区别,有人解释 Kokoro TTS 是一个较小的语言模型,能够生成高质量的 TTS 声音,语调更自然,计算强度大,还可以创建自己的声音,而手机上的 TTS 通常较差。有人询问该程序是否支持波兰语,回复称可能不支持,并提供了查询语言支持的相关链接。
在众多讨论中,共识在于大家对这个创新的 EPUB 转有声书程序表现出了浓厚的兴趣和期待。特别有见地的观点如对语言模型和不同 TTS 系统的详细比较和分析,丰富了讨论的深度和广度。
总之,这个创新的程序在 Reddit 上引发了热烈的讨论和关注,为 EPUB 书籍的有声转换带来了新的可能性。
感谢您的耐心阅读!来选个表情,或者留个评论吧!