最初に、この投稿で使用する略語と基本的な用語について説明します。 TTS が何を意味するかを知らない人のために、それは Text To Speech を意味します。 私たちがやりたいことは、テキストの一部をプログラムに与えることです。プログラムはそのテキストを音声に変換して読み上げてくれます。 つまり、コンピューターに読み上げさせるということです。 現在、この TTS を行うにはさまざまな方法がありますが、ここでは、私が個人的に使用して良好な結果を得ているライブラリについて説明します。 を使用します。 pyttsx3 とは pyttsx3 pyttsx3 は、テキストを音声に変換できる Python ライブラリです。そのため、テキストを提供すると、そのテキストが音声に変換されます。 これは、Microsoft のテキスト読み上げ (TTS) エンジンを含む、いくつかのテキスト読み上げエンジンのラッパーです。 楽しいもの 次に、このライブラリを TTS に使用する方法を見てみましょう。 最初に行う必要があるのは、このライブラリをインストールすることです。これは、python インストールにバンドルされている を使用して実行できます。 pip このインストールの構文は、すべての に似ています。 pip installs pip install pyttsx3 このインストールでエラー 表示される場合は、次のように の代わりに を使用してみてください。 cmd not found pip pip3 pip3 install pyttsx3 インストール後、次のコマンドを実行して、正常にインストールされたかどうかを確認します。 pip3 freeze 環境にインストールされているすべてのパッケージのリストを返します。このリストに が見つかった場合、 は正常にインストールされており、これをプロジェクトで使用する準備ができています。 pyttsx3 pyttsx3 インストールが完了したら、このライブラリをプロジェクトにインポートし、テキスト読み上げエンジンを初期化する必要があります。このエンジンは最も重要な部分であり、TTS を実行するのはこのエンジンです。 Importing pyttsx3 and initializing the text-to-speech engine: import pyttsx3 engine = pyttsx3.init() は、エンジンを初期化するために呼び出す必要があるメソッドです。 .init() これで、エンジンが初期化されたので、 メソッドを呼び出して TTS に使用できます。 say(text) engine.say(text) engine.runAndWait() この読み上げテキストの速度と音量がデフォルトになり、次の方法で変更できます。 必要なのは、エンジンにいくつかの値を設定することだけです。これは、何を使用するかをエンジンに指示するようなものです。 したがって、次の方法でこれを行う必要があります。 まず、 を使用してそのプロパティを取得します。 getProperty(name) 次に を使用してそのプロパティを設定します。 setProperty(name, value) エンジンのレートとボリュームを設定します。 スピーチの速度と音量の設定: rate = engine.getProperty('rate') engine.setProperty('rate', rate-100) デフォルトではレートは 200 なので、100 に下げます。 は話す速度であり、200 は私たちにとって高いです。だから私たちはそれを下げました。 rate 率は単に、話者が渡されたテキストを話すペースです。 レートを設定したら、最初にボリューム プロパティを取得してから設定することで、ボリュームを変更または設定します。 volume = engine.getProperty('volume') engine.setProperty('volume', volume+0.50) デフォルトのボリュームは 1、つまり 100% です。ボリューム プロパティを読み取って受け取った値に .50 を追加することで、150% に増やします。 これで、これら 2 つのプロパティの設定が完了しました を呼び出すと、音声には の速度と の音量というパラメーターが設定されます。 say() 1x 1.50 engine.say("Hello, This is the test for the pyttsx3") engine.runAndWait() この は重要です。このエンジンを実行し、渡されたテキストの TTS が完了するまで実行し続けます。 runAndWait また、音量を変えることで、話している声を変えることもできます。ここには2つのボイスがあります。 1 つは女性の声用で、もう 1 つは男性の声用です。 プロパティの設定には、前に行ったのと同じ構文を使用します。 次の点に注意してください。 は男性の声です。 voices[0] は女性の声です。 voices[1] 声を変えてみましょう: voices = engine.getProperty('voices') engine.setProperty('voice', voices[1].id) 選択した音声の プロパティを呼び出す必要があり、それで準備は完了です。 id 上のコードをコピーすると、デフォルトの男性の声が女性の声になります。 パラメータの設定と TTS のテストが完了したら、生成された TTS の音声ファイルを保存できます。 を呼び出す代わりに、今度は を呼び出し、テキストと、TTS オーディオを保存する出力ファイルの名前を渡します。 .say() .save_to_file 今回は、テキストを読み上げるのではなく、渡した名前のファイルに保存します。 engine.save_to_file("Hello, this is test for pyttsx3.", "test.mp3") engine.runAndWait() これを実行すると、生成された TTS を という名前のファイルが作成されます。 test.mp3 また、pyttsx3 には、ピッチや言語などの設定など、テキスト読み上げの出力をカスタマイズするために使用できる他のいくつかのメソッドとプロパティがあります。これらの詳細については、 のドキュメントを参照してください。 pyttsx3 最後の言葉 テキストまたはテキストを含むファイルから TTS を生成するのはどれほど簡単でしょうか? これらの生成された TTS をさまざまな目的で使用できますが、それはあなた次第です。 これで、この TTS を簡単に実行できるようになり、これを使用して素晴らしいプロジェクトを作成できるようになります。 コンテンツが好きで、つながりを保ちたい場合は、 で私をフォローしてください。 Twitter 読んでくれてありがとう、コンテンツを楽しんでください。