Qt TextToSpeechエンジン

Qt TextToSpeechは、プラットフォームや、機能、可用性、実行コストのトレードオフの違いによって、いくつかのエンジン実装をサポートしています。

エンジンは、QTextToSpeech インスタンスが構築されたとき、またはすでにインスタンス化されたオブジェクトで、engine プロパティを設定することで選択できます。エンジンが指定されていない場合は、現在のプラットフォームに適したエンジンが使用されます。availableEngines() を呼び出して、現在のシステムで使用できるエンジンのリストを取得します。これには、テスト用に使用され、ターゲット・システムにデプロイされるべきでない「モック」エンジンが含まれる。

エンジンを設定する際、アプリケーションはエンジン固有のパラメーターのキー/値のペアを持つQVariantMap をエンジンに渡すことができる。以下のセクションでは、各エンジンでサポートされている設定パラメーターを示します。エンジンでサポートされていないパラメーターは無視されます。

WinRT

winrt "エンジンはWindows.Media.SpeechSynthesis NamespaceのAPIを使用します。最新のWindows SDKが必要で、MinGWコンパイラを使用している場合は使用できません。このエンジンは、現在のWindowsバージョンにインストール可能なすべての音声へのアクセスを提供します。

この実装では、Qt Multimediaの QAudioSink 、シンセサイザーによって生成されたPCMデータストリームをオーディオデバイスに再生します。

名称タイプ備考
audioDeviceQAudioDevice

SAPI

sapi "エンジンはWindows SDKに含まれるSAPI 5.3フレームワークを使用します。winrt "エンジンに比べて音質は落ちますが、限られた種類の音声を提供します。

SAPIエンジンは、エンジン固有のパラメータをサポートしていません。

ダーウィン

darwin "エンジンは、iOSデバイスとmacOS 10.15で利用可能なAVFoundationフレームワークを使用しています。フレームワークのドキュメントにはmacOS 10.14のサポートも記載されていますが、デフォルトではそのプラットフォームで利用可能なボイスはありません。

Darwinエンジンは、エンジン固有のパラメータをサポートしていません。

macOS

macos "エンジンは、AppKitのNSSpeechDispatcherフレームワークを使用します。これはmacOSシステムでのみ利用可能ですが、macOS 10.14ではすぐに動作します。利用可能な音声の数はiOSエンジンに比べて限られています。

macOSエンジンは、エンジン固有のパラメータをサポートしていません。

注意: "macos "エンジンにはSynthesize の機能はありません。darwin "エンジンは、Qt がサポートするすべての macOS および iOS システムで、デフォルトかつ優先的に使用されるエンジンです。macOS エンジンは、Qt 6.8 で削除される予定です。

アンドロイド

android "エンジンは Android プラットフォームで利用できる唯一のエンジンです。TextToSpeechパッケージを使用しており、複数のバックエンドをサポートしています。

Note: "android "エンジンはPauseResume の機能を持っていません。

エンジン名タイプ備考
アンドロイドエンジンQStringインストールされているエンジンのリストを取得するAPIはQtにはありません。

flite

flite "エンジンはfliteシンセサイザーを使います。このエンジンはフットプリントが小さいので、組み込み環境で特に有用です。プラグインには少なくとも Flite 2.2 が必要で、Qt MultimediaQAudioSink を使って生成された PCM データストリームをレンダリングします。

エンジン・プラグインは、環境変数LD_LIBRARY_PATH にリストされたディレクトリで音声ライブラリを検索し、/usr/lib/usr/lib64/usr/lib/x86_64-linux-gnu などの一般的なライブラリの場所を検索するようにフォールバックします。

Fliteを静的ライブラリとして使用する場合は、必要な音声ライブラリもエンジン・プラグインに静的にリンクする必要があります。現在のところ、Qt の設定時にこのような音声ライブラリを選択するためのビルドシステム API は実装されていません。

名前タイプ備考
audioDeviceQAudioDevice

speech-dispatcher

speechd" エンジンはspeech-dispatcherデーモンと通信し、少なくとも libspeechd 0.9 が必要です。

注意: speech-dispatcher エンジンにはWordByWordProgress またはSynthesize の機能はありません。

speech-dispatcherエンジンは、エンジン固有のパラメータをサポートしていません。

本ドキュメントに含まれる文書の著作権は、各所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。