どうすればPythonテキストを言うことができますか?
Festivalをサブプロセスで使用することはできますが、それを制御することはできません(またはインタラクティブモードでは可能ですが、クリーンではありません)。
Python TTSライブラリはありますか?Festival、eSpeakなどのAPIのように...?
これはpython 2.xでのみ機能することに注意してください
PyTTSは古いため、PyTTSxパッケージを使用してみてください。 PyTTSxは最新のpythonバージョンで動作します。
http://pypi.python.org/pypi/pyttsx/1. ->パッケージ
それが役に立てば幸い
少し安っぽいですが、macを使用している場合は、pythonから端末コマンドをコンソールに渡すことができます。
ターミナルで次を入力してみてください。
$ say 'hello world'
そして、それを話すMacからの声があります。 From pythonこのようなことは比較的簡単です:
import os
os.system("echo 'hello world'")
os.system("say 'hello world'")
from win32com.client import Dispatch
speak = Dispatch("SAPI.SpVoice")
speak.Speak("Ciao")
Cmdにgttsモジュールをインストールした後:pip install gtts
from gtts import gTTS
import os
tts = gTTS(text="This is the pc speaking", lang='en')
tts.save("pcvoice.mp3")
# to start the file from python
os.system("start pcvoice.mp3")
python-espeak パッケージは、Debian、Ubuntu、Redhat、およびその他のLinuxディストリビューションで利用可能です。最近の更新があり、正常に動作します。
from espeak import espeak
espeak.synth("Hello world.")
Jonathan Leadersは、Windowsでも動作することを指摘し、mbrolaボイスもインストールできます。 espeak Webサイト http://espeak.sourceforge.net を参照してください。
簡単なGoogleに導かれて pyTTS と、いくつかの それに関するドキュメント になりました。しかし、メンテナンスされていないように見え、Microsoftの音声エンジンに固有です。
少なくともMac OS Xでは、subprocess
を使用してsay
コマンドを呼び出すことができます。これは同僚とのやり取りには非常に楽しいですが、ニーズにはあまり役立ちません。
FestivalにはいくつかのパブリックAPIもあるようです。
FestivalはBSDソケットベースのインターフェースを提供します。これにより、Festivalをサーバーとして実行し、クライアントプログラムがそれにアクセスできるようになります。基本的に、サーバーは、接続する各クライアントに対して新しいコマンドインタープリターを提供します。サーバーはクライアントごとに分岐しますが、フェスティバルプロセスがゼロから開始されるのを待つよりもはるかに高速です。また、サーバーはより大きなマシンで実行でき、はるかに高速な合成を提供します。linky
フル機能のC++ API もあります。これは、Pythonモジュール(楽しい!)を作成できる場合があります。フェスティバルでは、簡略化されていますC API-そのドキュメントをスクロールし続けます-一度だけctypes
を投げることができるかもしれません。
おそらく、あなたは市場に穴を見つけましたか?
Python Python3とPython2の両方で話すには、2つの素晴らしい方法があります:
Macを使用している場合は、コンピューターにosモジュールが組み込まれています。以下を使用してosモジュールをインポートできます。
import os
その後、osを使用して、os.systemコマンドを使用して端末コマンドを実行できます。
os.system("Your terminal")
ターミナルでは、コンピューターに発話させる方法は「say」コマンドを使用することです。したがって、コンピューターに発話させるには、単に次のようにします。
os.system("say 'some text'")
これを使用して変数を話す場合は、次を使用できます。
os.system("say " + myVariable)
pythonを話すための2番目の方法は、
これを使用してインストールする必要があります
pip isntall pyttsx3
またはPython3の場合
pip3 install pyttsx3
その後、次のコードを使用して、話をすることができます。
import pyttsx3
engine = pyttsx3.init()
engine.say("Your Text")
engine.runAndWait()
これがお役に立てば幸いです! :)
espeakを使用できます。pythonを音声変換コンバーターに使用します。
例を次に示しますpython code
from subprocess import call speech = "Hello World!" call(["espeak"、speech])
追記:Linuxシステムにespeakがインストールされていない場合は、最初にインストールする必要があります。
ターミナルを開き(ctrl + alt + Tを使用)、入力します
Sudo apt install espeak
python 3とwindows 10を使用している場合、私が働いていることがわかった最良の解決策はGiovanni Gianniからです。これは私のために男性の声で演奏しました:
import win32com.client as wincl
speak = wincl.Dispatch("SAPI.SpVoice")
speak.Speak("This is the pc voice speaking")
また、YouTubeで video を見つけたので、本当にしたい場合は、知り合いを獲得して、自分でDIY tts音声を作成できます。
「Python固有」のものはないかもしれませんが、KDEおよびGNOMEデスクトップは、アクセシビリティサポートの一部として音声合成を提供し、またpythonライブラリバインディングを提供します。 pythonバインディングを使用して、テキスト読み上げ用のデスクトップライブラリを制御します。
JVM上でPython=)のJython実装を使用している場合、 FreeTTS システムが使用可能です。
最後に、 [〜#〜] osx [〜#〜] および Windows には、テキスト読み上げ用のネイティブAPIがあります。これらをpythonからctypesまたはCOMなどの他のメカニズムを介して使用できる場合があります。
これはあなたが探しているものです。 Mac用の完全なTTSソリューション。このスタンドアロンまたはWebアプリのコロケーションMacサーバーとして使用できます。
THE COMPLETE SOLUTION TO ALL YOU PYTHON TEXT-TO-SPEECH NEEDS
Pyttsx3は、pythonpyttsxPython 2.xのモジュール。ただし、Python 3!
100%MULTI-PLATFORM[〜#〜] and [〜#〜]WORKS OFFLINE[〜#〜] and [〜#〜]アクティブ/まだ開発中です[〜#〜] and [〜#〜] PYTHON VERSION
pip install pyttsx3
で簡単にインストールでき、使用方法はpyttsxと同じです。
import pyttsx3;
engine = pyttsx3.init();
engine.say("I will speak this text");
engine.runAndWait();
簡単かつ完璧に機能するので、これが最良の解決策だと思います