En raison des besoins du projet, je dois convertir la synthèse vocale, la première étape consiste donc à mener des recherches
Comme mentionné ci-dessus Comme mentionné, bien qu'il existe de nombreux produits sur le marché, en tant que développeur, je veux un outil gratuit capable de déboguer le code. Après avoir recherché du matériel, j'ai découvert que la bibliothèque gTTs, la bibliothèque pyttsx3 et la parole. bibliothèque peut me satisfaire. Pour faire une comparaison horizontale en fonction des besoins, on peut éviter les détours.Synthèse vocale (text to Speech), appelée TTS. C'est une technologie qui convertit le texte en parole. Elle permet à l'ordinateur de simuler la bouche humaine et d'exprimer ce qu'il veut exprimer à travers différents timbres. Elle fait partie du dialogue homme-machine.
Maintenant, de nombreux fabricants ont lancé leurs propres services ou API de synthèse vocale. Vous pouvez également le vérifier par vous-même. Cet article effectue uniquement des recherches sur les bibliothèques de synthèse vocale tierces dans l'environnement Python. ?
TTS peut convertir intelligemment le texte en flux vocal naturel grâce à la conception du réseau neuronal. Il facilite grandement l'utilisation des patients malvoyants et améliore également la lisibilité du texte. Les applications TTS incluent du matériel piloté par la parole et des systèmes sensibles au son, et sont souvent utilisées avec des programmes de reconnaissance vocale.
Nécessite une connexion InternetNom de la bibliothèque tierce
Prend en charge le japonais | Vitesse de parole réglable | Comme le niveau de la voix humaine | ggts | ||
---|---|---|---|---|---|
√ | discours | X | √ | X | Écrivez des données vocales mp3 dans un fichier |
Dans la fonction de lecture vocale, nous avons choisi deux méthodes | La première est la bibliothèque de sons de lecture pour lire automatiquement l'audio (la progression de la lecture ne peut pas être ajustée) | Le la deuxième est la bibliothèque OS pour appeler le propre lecteur du système (progression réglable) | |||
la fonction | Veuillez consulter la bibliothèque OS pour lire et la bibliothèque GTTS pour convertir le texte | fonction# 函数功能: 用gtts库阅读文本,保存为.mp3文件后, 用playsound库阅读出来, 阅读完毕, 函数执行结束 def gtts_debug(text,mp3_filepath,language):#参数说明:参数1是朗读的文字,参数2是保存路径,参数3是数字{0英文,1中文,2日语} #大成功,已经实现了定制化文字转语音,但是播放的playsound需要改进(playsound库本身可能会出现bug...) from gtts import gTTS from playsound import playsound import os if int(language) ==0 : s = gTTS(text=text, lang='en', tld='com') # s = gTTS(text=text, lang='en', tld='co.uk')#我比较喜欢美音,但是如果你喜欢英国口音可以尝试这个 elif int(language) ==1 : s = gTTS(text=text, lang='zh-CN') elif int(language) ==2 : s = gTTS(text=text, lang='ja') try: s.save(mp3_filepath) except: os.remove(mp3_filepath) print(mp3_filepath,"文件已经存在,但是没有关系!已经删掉了") s.save(mp3_filepath) print(mp3_filepath,"保存成功") playsound(mp3_filepath) gtts_debug(text="I'm gtts library,from google Artificial Intelligence & Google Translate.",mp3_filepath="gtts英文测试.mp3",language=0) gtts_debug(text="我是gtts库, 你想听听我的声音吗",mp3_filepath="gtts中文测试.mp3",language=1) gtts_debug(text="真実はいつもひとつ" ,mp3_filepath="gtts日语测试.mp3",language=2) Copier après la connexion | bibliothèque pyttsx3 bibliothèque pyttsx3 | : C'est une bibliothèque de conversion de texte en parole en Python, elle peut fonctionner hors ligneAvantages : Peut fonctionner hors ligne, prend en charge la lecture directe de la parole, le volume et la vitesse réglables | Inconvénients : Initialement, seules les voix anglaises (féminines) et chinoises (féminines) sont disponibles, les autres paquets vocaux doivent être téléchargés séparément
def pyttsx3_debug(text,language,rate,volume,filename,sayit=0): #参数说明: 六个重要参数,阅读的文字,语言(0-英文/1-中文),语速,音量(0-1),保存的文件名(以.mp3收尾),是否发言(0否1是) import pyttsx3 engine = pyttsx3.init() # 初始化语音引擎 engine.setProperty('rate', rate) # 设置语速 #速度调试结果:50戏剧化的慢,200正常,350用心听小说,500敷衍了事 engine.setProperty('volume', volume) # 设置音量 voices = engine.getProperty('voices') # 获取当前语音的详细信息 if int(language)==0: engine.setProperty('voice', voices[0].id) # 设置第一个语音合成器 #改变索引,改变声音。0中文,1英文(只有这两个选择) elif int(language)==1: engine.setProperty('voice', voices[1].id) if int(sayit)==1: engine.say(text) # pyttsx3->将结果念出来 elif int(sayit)==0: print("那我就不念了哈") engine.save_to_file(text, filename) # 保存音频文件 print(filename,"保存成功") engine.runAndWait() # pyttsx3结束语句(必须加) engine.stop() # pyttsx3结束语句(必须加) pyttsx3_debug(text="我是pyttsx3, 初次见面, 给您拜个早年",language=0,rate=200,volume=0.9,filename="ptttsx3中文测试.mp3",sayit=1) pyttsx3_debug(text="I'm fake Siri, your smart voice Manager",language=1,rate=200,volume=0.9,filename="ptttsx3英文测试.mp3",sayit=1)
paroleConvient au processus de débogage de code, laissez le langage froid de l'IA me réveiller de l'écriture de bugs QAQ
: Module de synthèse vocale basé sur Windows, une ligne de code peut réaliser la lecture
Avantages : S'appuyant sur le système Windows, l'installation et l'utilisation sont extrêmement simples et super pratiques.
Inconvénients : seule la langue du système (chinois et anglais), ne prend pas en charge le réglage de la vitesse de parole et l'exportation audio
Fonction
import speech speech.say("甘霖娘,又出bug了") speech.say("Don't ask me .I have no idea why bug exist again") # 如你所见, 代码编译究极简单, 而且单机, 但是!每次使用都会呼出微软语音助手...
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!