随着自媒体的兴起,文字转语音服务的需求越来越大,下面介绍下如何自己用python脚本实现文字语音
第一步: 注册百度开发者账号
https://ai.baidu.com/tech/speech
第二步:安装相关扩展
pip3 install baidu-aip pip3 install playsound pip3 install pyobjc
第三步:代码
from aip import AipSpeech from playsound import playsound APP_ID = 'xxxx' API_KEY = 'xxxx' SECRET_KEY = 'xxxx' client = AipSpeech(APP_ID, API_KEY, SECRET_KEY) # text 合成的文本,使用UTF-8编码。小于2048个中文字或者英文数字。 text = '春种一粒粟,秋收万颗子。四海无闲田,农夫犹饿死。' # spd 语速,取值0-15,默认为5中语速 spd = 5 # pit 音调,取值0-15,默认为5中语调 pit = 5 # vol 音量,取值0-15,默认为5中音量 vol = 5 # per per(基础音库) 度小宇=1,度小美=0,度逍遥=3,度丫丫=4;(精品音库)度博文=106,度小童=110,度小萌=111,度米朵=103,度小娇=5 per = 0 # aue 3为mp3格式(默认); 4为pcm-16k;5为pcm-8k;6为wav(内容同pcm-16k); 注意aue=4或者6是语音识别要求的格式,但是音频内容不是语音识别要求的自然人发音,所以识别效果会受影响。 aue = 3 result = client.synthesis(text, 'zh', 1, { 'spd': spd, 'pit': pit, 'vol': vol, 'per': per, 'aue': aue }) audio_file = 'auido.mp3' # 生成音频文件 if not isinstance(result, dict): with open(audio_file, 'wb') as f: f.write(result) # mac播放音频文件 playsound(audio_file)