Преобразование текста в речь на Python

Преобразование текста в речь используется для создания голосового вывода на основе текста.

БЕСПЛАТНО СКАЧАТЬ КНИГИ по Python на русском языке можно у нас в телеграм канале "Python книги на русском"

Это может быть полезно, когда вы хотите не читать текст, а слушать его. Кроме того, некоторые более продвинутые инструменты преобразования текста в речь можно использовать для создания реалистичного голоса для видео, рекламы или подкастов.

В этой статье мы расскажем, как реализовать преобразование текста в речь на Python. Прочитав это руководство, вы сможете создать свой собственный преобразователь.

Если хочется сразу получить результат, установим следующий модуль:

pip install gTTS

А дальше напишем скрипт:

from gtts import gTTS
import os

mytext = "Hi, this is an example of converting text to audio. This is a bot speaking here, not a real human!"
audio = gTTS(text=mytext, lang="en", slow=False)
audio.save("example.mp3")
os.system("start example.mp3")

Когда мы запускаем данный скрипт, он генерирует новый mp3-файл и воспроизводит его. Файл находится в той же папке, что и сам скрипт.

А теперь давйте пошагово разберем, как работает этот код.

Как преобразовать текст в речь на Python

Совершенно не удивительно, что для Python существует множество различных инструментов для преобразования текста в речь. Тот, о котором пойдет речь в этой статье, называется Google Text-to-Speech API (сокращенно gTTS API).

gTTS API преобразует файл с расширением .txt в файл с расширением .mp3

API в библиотеке gTTS прост в использовании. Ему можно просто передать текстовый документ и получить mp3-файл с устной версией текста.

Чтобы использовать gTTS API для преобразования текста в голос, необходимо:

  1. Установить библиотеку gTTs.
  2. Импортировать gTTS в программу.
  3. Определить фрагмент текста для преобразования его в аудио.
  4. Передать этот текст в gTTS, указав при этом язык и скорость.
  5. Сохранить результат в файл.
  6. Открыть этот файл и прослушать записанное.

1. Установка библиотеки gTTS

Как обычно, прежде чем использовать библиотеку Python, ее надо установить в вашу систему.

Для этого можно использовать менеджер pip. Откройте командную строку и запустите там следующую команду:

pip install gTTS

2. Импорт gTTS

После установки модуля gTTS его можно импортировать его в свой проект.

Кстати, чтобы использовать программу для воспроизведения mp3-файлов, также необходимо импортировать встроенный модуль os.

Поэтому давайте добавим следующие две строчки в начало нашего файла программы на Python:

from gtts import gTTS
import os

3. Определяем фрагмент текста

Теперь в файле кода есть все необходимые инструменты и можно начать преобразование текста.

Зададим сам текст, который нужно преобразовать в речь, и сохраним его в переменную.

Например:

mytext = "Hi, this is an example of converting text to audio. This is a bot speaking here, not a real human!"

4. Передаем текст в gTTS

Теперь мы передадим текст в gTTS, указав при этом английский язык.

audio = gTTS(text=mytext, lang="en", slow=False)

5. Сохраняем результат в файл

Теперь, когда у нас есть полученный звуковой объект, его можно сохранить в mp3-файл:

audio.save("example.mp3")

Эта команда сохраняет аудиофайл в той папке, где находится сам файл программы. После этого можно открыть сохранённый файл и прослушать его.

Значок аудиофайла в папке

6. Слушаем и наслаждаемся

Чтобы реализовать воспроизведение в программе, нужно вызвать функцию os.system().

Это можно сделать следующим образом:

os.system("start example.mp3")

Это последняя строка нашей программы. Если запустить сейчас данный файл, то можно будет услышать сообщение, которое говорит машина. В добавление к этому аудиофайл будет сохранен на диске.

Полный код

Для удобства приведем здесь полный код из нашего руководства:

from gtts import gTTS
import os
mytext = "Hi, this is an example of converting text to audio. This is a bot speaking here, not a real human!"
audio = gTTS(text=mytext, lang="en", slow=False)
audio.save("example.mp3")
os.system("start example.mp3")

Заключение

В этой статье мы разобрали, как при помощи модуля gTTS реализовать преобразование текста в речь на Python.

Подводя итог, заметим, что все, что для этого нужно сделать, это просто установить библиотеку gTTS в вашу систему и задать необходимый текст для его преобразования в речь.

Спасибо за внимание, успешного кодинга!

Перевод статьи Arturri Jalli “Python: Convert Text to Speech [Beginner’s Guide]”.

4 комментария к “Преобразование текста в речь на Python”

  1. Аноним

    а как сделать что бы она было виде процедуры и ей можно было обращаться

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *