Python でテキストを音声に変換する

過去数十年にわたる技術の進歩により、音声認識を備えた多くのデバイスがあります。Python には、オーディオオブジェクトを操作できるさまざまなモジュールがあります。一部のモジュールは、書かれたテキストを音声に変換できます。
このチュートリアルでは、Python を使用してテキストを音声に変換する方法について説明します。
Python で gTTS
モジュールを使用してテキストを音声に変換する
Google は、テキストを読み、音声出力を提供するために使用する GoogleText-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()
関数は、オーディオファイルを再生できます。
このモジュールは GoogleAPI を使用してテキストを音声に変換するため、アクティブなインターネット接続が必要になることに注意してください。オフラインで実行する場合は、以下で説明する方法を検討できます。
Python で pyttsx3
モジュールを使用してテキストを音声に変換する
pyttsx3 は、このような変換を実行し、インターネットに接続しなくても機能する別のモジュールです。まず、このモジュールの init()
コンストラクターを使用して、pyttsx3.Engine
を参照するオブジェクトを作成します。次に、ここの say()
関数は、キューで話される必要のあるテキストを追加します。次に、runAndWait()
関数を使用して、キューからコマンドを再生します。
例えば、
import pyttsx3
s = pyttsx3.init()
data = "Sample Text"
s.say(data)
s.runAndWait()
setProperty()
メソッドを使用して、最終出力の再生速度などのプロパティを設定できます。このモジュールは、Python 2 および Python 3 と互換性があります。
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedIn