【工具】AI有声书制作简易指南
📚 AI有声书制作简易指南
目标
将任意书籍(纸质或电子)通过AI工具生成有声书稿,再批量转为MP3/MP4,最终导入B站或手机随时收听。
一、AI生成有声书稿
工具推荐:Claude、ChatGPT、文心一言(任选其一)
操作步骤:
-
准备书籍文本(扫描OCR或直接复制电子书)。
-
向AI发送如下指令:
请将以下文本改写成适合朗读的有声书稿。要求:
- 保留原意,增加口语化;
- 标注语气(如【语气:紧张】);
- 对话前加角色名;
- 每段不超过300字;
- 生僻字注音。
[粘贴文本]
-
将AI输出的结果按章节保存为 .txt 文件(例如 第01章.txt)。
二、TTS工具将文稿转为MP3
推荐方案:使用 Edge TTS(免费,无需API密钥)
批量转换命令(Windows/macOS/Linux均可):
安装依赖
pip install edge-tts
单文件转换示例
edge-tts --text “$(cat 第01章.txt)” --voice zh-CN-XiaoxiaoNeural --write-media 第01章.mp3
若需批量,可用简单循环脚本(见下文tkinter工具)。
三、基于tkinter的批量转换工具
功能:一键选择文件夹 → 自动将所有txt转为MP3或MP4 → 显示进度。
代码精简版(保存为 converter.py):
import tkinter as tk
from tkinter import filedialog, ttk
import asyncio, edge_tts, os
class Converter:
def init(self, root):
self.root = root
root.title(“有声书批量转换器”)
self.in_dir = tk.StringVar()
self.out_dir = tk.StringVar()
self.fmt = tk.StringVar(value=“MP3”)
self.voice = tk.StringVar(value=“zh-CN-XiaoxiaoNeural”)
self.build_ui()
def build_ui(self):
tk.Label(root, text="输入文件夹").grid(row=0, column=0)
tk.Entry(root, textvariable=self.in_dir).grid(row=0, column=1)
tk.Button(root, text="浏览", command=lambda: self.in_dir.set(filedialog.askdirectory())).grid(row=0, column=2)
tk.Label(root, text="输出文件夹").grid(row=1, column=0)
tk.Entry(root, textvariable=self.out_dir).grid(row=1, column=1)
tk.Button(root, text="浏览", command=lambda: self.out_dir.set(filedialog.askdirectory())).grid(row=1, column=2)
ttk.Combobox(root, textvariable=self.fmt, values=["MP3","MP4"]).grid(row=2, column=1)
ttk.Combobox(root, textvariable=self.voice, values=["zh-CN-XiaoxiaoNeural","zh-CN-YunxiNeural"]).grid(row=3, column=1)
self.progress = ttk.Progressbar(root, length=400)
self.progress.grid(row=4, columnspan=3, pady=10)
tk.Button(root, text="开始转换", command=self.start).grid(row=5, columnspan=3)
def start(self):
files = [f for f in os.listdir(self.in_dir.get()) if f.endswith('.txt')]
self.progress['maximum'] = len(files)
asyncio.run(self.batch(files))
async def batch(self, files):
for i, f in enumerate(files):
text = open(os.path.join(self.in_dir.get(), f), encoding='utf-8').read()
out = os.path.join(self.out_dir.get(), f.replace('.txt', f'.{self.fmt.get().lower()}'))
await edge_tts.Communicate(text, self.voice.get()).save(out)
self.progress['value'] = i+1
self.root.update()
root = tk.Tk()
Converter(root)
root.mainloop()
使用方法:
- 运行脚本,选择存放txt的文件夹和输出文件夹。
- 点击“开始转换”,等待完成即可获得MP3/MP4文件。
四、导入B站或手机
导入B站(私人收听)
• 打开B站 → 创作中心 → 投稿 → 选择“音频”
• 上传MP3文件,标题注明书名
• 权限设为“仅自己可见”或“私密”
导入手机
• iPhone:通过iTunes同步或“文件”App直接拖入
• Android:USB连接电脑,复制到Music文件夹;或用百度网盘下载
五、总结
整个流程只需三步:
- AI改写 → 得到有声书稿txt
- TTS转换 → 用上述tkinter工具批量生成MP3/MP4
- 导入设备 → B站或手机随时听
全部工具免费,无编程基础也可直接使用提供的脚本。祝你听书愉快!
更多推荐


所有评论(0)