-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathREADME
More file actions
38 lines (31 loc) · 1.82 KB
/
README
File metadata and controls
38 lines (31 loc) · 1.82 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
20250131:将createtxtbyword和createmp3.py合并为easyTTS.py
20250130:增加调用本地GPTSoVits服务的脚本createmp3-gptsovits.py
20241214:初始创建。
缘起:
本人在喜马拉雅运营一个账号,会制作一些学佛相关的语音书,运营账号一段时间后,希望有一些工具软件可以用来提高效率,但是我在网上没有找到,所以就希望自己做一个。
需求主要是:
1、需要从一个word文档中根据标题拆分出来txt文件,用于tts准备。
2、需要调用TTS服务的api,根据txt文件生成mp3文件。
运行环境:
1、需要安装python,我安装的是3.12.4
2、安装python-docx库
pip install python-docx
3、安装pydub
pip install pydub
4、安装ffmpeg
brew install ffmpeg
5、安装azure.cognitiveservices.speech,这是微软的api sdk
pip3 install azure-cognitiveservices-speech
代码说明:
1、createtxtbyword.py.py
这个文件主要是选择一个后缀是docx的word文档,然后根据word文档的一级标题和二级标题生成若干txt文件。
2、createmp3.py
这个文件功能主要是选择一个txt文件所在目录,遍历里面的所有txt文件,调用tts服务生成对应的mp3.
如果mp3已经生成则会跳过。
处理时会按照1500字符拆分为若干小的文件生成mp3文件,然后再合并。
TTS服务:
代码里内置的微软的Azure的TTS服务,暂时还未适配其他厂家的TTS服务,如果网友有需求,可以把api文档发给我,我抽时间完善一下。
createmp3.py运行时,需要先填写:
speech_key = "你的服务的key" //在微软的网站服务portal可以查看获得,是一个比较长的字符串
service_region = "所在的服务区域代码" //例如我这里就是service_region = "eastasia"
当然有动手能力的,自己修改一下python代码也不复杂。