📜  在Python中将文本转换为语音(1)

📅  最后修改于: 2023-12-03 14:51:20.795000             🧑  作者: Mango

在Python中将文本转换为语音

在Python中,可以使用SpeechRecognition和pyttsx3 库将文本转换为语音。

SpeechRecognition库

SpeechRecognition库支持多种语音识别引擎,并且可以轻松地在Python中进行安装和使用。以下是将文本转换为语音的步骤:

  1. 安装SpeechRecognition库

    pip install SpeechRecognition
    
  2. 导入SpeechRecognition库和pyttsx3库

    import speech_recognition as sr
    import pyttsx3
    
  3. 创建一个语音引擎

    engine = pyttsx3.init()
    
  4. 使用Python中的语音识别引擎将文本转换为语音

    def text_to_speech(text):
        engine.say(text)
        engine.runAndWait()
    

以下是完整的示例代码:

import pyttsx3
import speech_recognition as sr

engine = pyttsx3.init()

def text_to_speech(text):
    engine.say(text)
    engine.runAndWait()

r = sr.Recognizer()

with sr.Microphone() as source:
    print("请说话...")
    audio = r.listen(source)

try:
    text = r.recognize_google(audio, language='zh-CN')
    print("你说的是:", text)
    text_to_speech(text)
except sr.UnknownValueError:
    print("无法识别音频")
except sr.RequestError as e:
    print("无法识别音频: {0}".format(e))

这个程序将通过麦克风监听你说的话,并将其转换为语音输出。

pyttsx3库

pyttsx3库是一个文本到语音转换库,可以将输入的文本转换为语音。以下是将文本转换为语音的步骤:

  1. 安装pyttsx3库

    pip install pyttsx3
    
  2. 导入pyttsx3库

    import pyttsx3
    
  3. 创建一个语音引擎

    engine = pyttsx3.init()
    
  4. 使用语音引擎将文本转换为语音

    def text_to_speech(text):
        engine.say(text)
        engine.runAndWait()
    

以下是完整的示例代码:

import pyttsx3

engine = pyttsx3.init()

def text_to_speech(text):
    engine.say(text)
    engine.runAndWait()

text_to_speech("你好,欢迎来到Python世界!")

在这个示例程序中,text_to_speech函数接受一个字符串作为输入,并将其转换为语音输出。

参考资料