迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

在 Python 中将文本转换为语音

作者:迹忆客 最近更新:2023/02/28 浏览次数:

由于过去几十年的技术进步,我们拥有许多配备语音识别功能的设备。Python 有多种可用的模块可以处理音频对象。一些模块可以将一些书面文本转换为音频。

在本教程中,我们将讨论如何使用 Python 将文本转换为语音。

Google 创建了一个名为 Google Text-To-Speech 的 API,他们用它来读取文本并提供音频输出。此 API 与名为 gtts 的 Python 模块集成,该模块可以将文本转换为语音、执行音频操作等,通过将音频存储在字节大小的对象中,甚至保存最终输出。

我们将使用 gTTS 函数创建一个对象,该对象将读取文本并将其转换为音频对象。我们可以在这个函数中使用许多参数。我们可以使用 slow 参数降低输出速度。Google API 支持不同的语言,我们可以使用 lang 参数提及支持的语言。

我们将在下面的代码中实现这个方法。

from gtts import gTTS
from playsound import playsound

s = gTTS("Sample Text")
s.save('sample.mp3')
playsound('sample.mp3')

在上面的代码中,我们创建了一个读取所需文本的对象。我们使用 save() 函数保存这个包含语音音频的对象,然后使用 playsound() 函数播放它。从 playsound 库导入的 playsound() 函数可以播放音频文件。

请注意,鉴于此模块使用 Google API 将文本转换为语音,因此需要有效的互联网连接。如果你希望它脱机运行,你可以参考下面讨论的方法。

pyttsx3 是另一个可以执行此类转换并在没有互联网连接的情况下工作的模块。首先,我们将使用该模块中的 init() 构造函数创建一个引用 pyttsx3.Engine 的对象。然后 say() 函数在此处添加要在队列中朗读的所需文本。然后我们使用 runAndWait() 函数从队列中播放命令。

例如,

import pyttsx3  
s = pyttsx3.init()  
data = "Sample Text"  
s.say(data)  
s.runAndWait()  

我们可以使用 setProperty() 方法设置最终输出的播放速率等属性。该模块与 Python 2 和 Python 3 兼容。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

Pandas read_csv()函数

发布时间:2024/04/24 浏览次数:254 分类:Python

Pandas read_csv()函数将指定的逗号分隔值(csv)文件读取到 DataFrame 中。

Pandas 追加数据到 CSV 中

发布时间:2024/04/24 浏览次数:352 分类:Python

本教程演示了如何在追加模式下使用 to_csv()向现有的 CSV 文件添加数据。

Pandas 多列合并

发布时间:2024/04/24 浏览次数:628 分类:Python

本教程介绍了如何在 Pandas 中使用 DataFrame.merge()方法合并两个 DataFrames。

Pandas loc vs iloc

发布时间:2024/04/24 浏览次数:837 分类:Python

本教程介绍了如何使用 Python 中的 loc 和 iloc 从 Pandas DataFrame 中过滤数据。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便