在 Python 中将文本转换为语音
由于过去几十年的技术进步,我们拥有许多配备语音识别功能的设备。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 兼容。
相关文章
Django 中的 Slug
发布时间:2023/05/04 浏览次数:173 分类:Python
-
本篇文章旨在定义一个 slug 以及我们如何使用 slug 字段在 Python 中使用 Django 获得独特的帖子。
在 Django 中按降序过滤查询集中的项目
发布时间:2023/05/04 浏览次数:157 分类:Python
-
在这个讲解中,学习如何借助 Django 中的 order_by() 方法按降序过滤出查询集中的项目。
Django ALLOWED_HOSTS 介绍
发布时间:2023/05/04 浏览次数:181 分类:Python
-
本文展示了如何创建您的 Django 网站,为公开发布做好准备,如何设置 ALLOWED_HOSTS 以及如何在使用 Django 进行 Web 部署期间修复预期的主要问题。
Django 中的 Select_related 方法
发布时间:2023/05/04 浏览次数:129 分类:Python
-
本文介绍了什么是查询集,如何处理这些查询以及我们如何利用 select_related() 方法来过滤 Django 中相关模型的查询。
使用 Post 请求将数据发送到 Django 服务器
发布时间:2023/05/04 浏览次数:159 分类:Python
-
在这篇关于Django的讲解中,我们简要介绍了post和get请求以及如何在Django中用post实现CSRF token。
Django 返回 JSON
发布时间:2023/05/04 浏览次数:106 分类:Python
-
在与我们的讨论中,我们简要介绍了 JSON 格式,并讨论了如何借助 Django 中的 JsonResponse 类将数据返回为 JSON 格式。
在 Django 中创建对象
发布时间:2023/05/04 浏览次数:59 分类:Python
-
本文的目的是解释什么是模型以及如何使用 create() 方法创建对象,并了解如何在 Django 中使用 save() 方法。
在 Django 中为多项选择创建字段
发布时间:2023/05/04 浏览次数:75 分类:Python
-
在本文中,我们将着眼于为多项选择创建一个字段,并向您展示如何允许用户在 Django 中进行多项选择。