このページでは

Qt TextToSpeech エンジン

Qt TextToSpeech は、さまざまなプラットフォーム向けの複数のエンジン実装をサポートしており、機能、可用性、および実行時のコストの間で異なるトレードオフがあります。

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

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

WinRT

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

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

名前型備考
audioDeviceQAudioDevice

SAPI

「sapi」エンジンは、Windows SDK に含まれているSAPI 5.3フレームワークを使用します。このエンジンは、限られた種類のボイスを提供しており、「winrt」エンジンに比べて音質が低下します。

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

Darwin

「darwin」エンジンは、iOS デバイスおよび macOS 10.15 で利用可能なAVFoundationフレームワークを使用します。このフレームワークのドキュメントには macOS 10.14 への対応も記載されていますが、デフォルトでは、そのプラットフォームでは音声が利用できません。

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

Android

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

注: 「android」エンジンには 、PauseResume 機能はありません。

名前タイプ備考
androidEngineQStringQt には、インストールされているエンジンのリストを取得するための API はありません。

HarmonyOS

HarmonyOSのエンジンは、Core Speech Kitのテキスト読み上げ(TTS)APIを使用します。システムエンジンが音声を合成し、再生します。

Core Speech Kitエンジンは特定の言語向けに作成されており、プラグインではこれをzh-CN に設定します。createEngine()のドキュメントに記載されている通り、サポートされているのは中国語と英語のみであり、中国語にはzh-CN 、英語にはen-US の使用が推奨されています。

注:HarmonyOSのエンジンには Speak 機能のみが搭載されています。PauseResume 、WordByWordProgress 、Synthesize はいずれもサポートされていません。

Flite

QAudioSink 「flite」エンジンはfliteシンセサイザーを使用します。このエンジンはフットプリントが小さいため、組み込み環境での利用に特に適しています。このプラグインは Flite 2.2 以上を必要とし、生成された PCM データストリームをレンダリングするために Qt Multimedia から取得したxml-ph-0000@deepl.internalを使用して、生成された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 エンジンは、エンジン固有のパラメータをサポートしていません。

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.