Qt TextToSpeech Les moteurs
Qt TextToSpeech Qt 5 supporte plusieurs implémentations de moteurs pour différentes plateformes, avec différents compromis entre les capacités, la disponibilité et le coût d'exécution.
Un moteur peut être sélectionné lors de la construction d'une instance de QTextToSpeech, ou sur un objet déjà instancié en définissant la propriété engine. Si aucun moteur n'est spécifié, le moteur préféré de la plateforme actuelle sera utilisé. Appelez availableEngines() pour obtenir la liste des moteurs qui peuvent être utilisés sur le système actuel. Cette liste comprendra un moteur "fictif" utilisé pour les tests et qui ne doit pas être déployé sur les systèmes cibles.
Lors de la configuration du moteur, les applications peuvent transmettre au moteur une adresse QVariantMap contenant des paires clé/valeur de paramètres spécifiques au moteur. Les sections suivantes énumèrent les paramètres de configuration pris en charge par chaque moteur. Les paramètres qui ne sont pas pris en charge par le moteur sont ignorés.
WinRT
Le moteur "winrt" utilise les API de l'espace de nommage Windows.Media.SpeechSynthesis. Il nécessite un SDK Windows récent et n'est pas disponible avec le compilateur MinGW. Le moteur donne accès à toutes les voix disponibles pour l'installation sur les versions actuelles de Windows.
L'implémentation utilise QAudioSink à partir de Qt Multimedia pour lire le flux de données PCM généré par le synthétiseur sur un périphérique audio.
| Nom | Type | Remarques |
|---|---|---|
| audioDevice | QAudioDevice |
SAPI
Le moteur "sapi" utilise le cadre SAPI 5.3 qui est inclus dans le SDK Windows. Il fournit une sélection limitée de voix, avec une qualité réduite par rapport au moteur "winrt".
Le moteur SAPI ne prend en charge aucun paramètre spécifique au moteur.
Darwin
Le moteur "darwin" utilise le framework AVFoundation disponible sur les appareils iOS et sur macOS 10.15. La documentation du framework indique qu'il supporte également macOS 10.14, mais par défaut aucune voix n'est disponible sur cette plateforme.
Le moteur Darwin ne prend en charge aucun paramètre spécifique au moteur.
Android
Le moteur "android" est le seul moteur disponible sur la plateforme Android. Il utilise le paquet TextToSpeech, qui supporte à son tour plusieurs moteurs.
Remarque : le moteur "android" n'a pas la capacité PauseResume.
| Nom | Type | Remarques |
|---|---|---|
| androidEngine | QString | Il n'y a pas d'API dans Qt pour obtenir la liste des moteurs installés. |
Flite
Le moteur "flite" utilise le synthétiseur flite. Le faible encombrement du moteur le rend particulièrement utile pour les environnements embarqués. Le plugin nécessite au moins Flite 2.2, et utilise QAudioSink de Qt Multimedia pour rendre le flux de données PCM généré.
Le plugin moteur recherche les bibliothèques vocales dans les répertoires listés dans la variable d'environnement LD_LIBRARY_PATH, et se rabat sur les bibliothèques les plus courantes telles que /usr/lib, /usr/lib64, et /usr/lib/x86_64-linux-gnu.
Si Flite est utilisé comme une bibliothèque statique, les bibliothèques vocales souhaitées doivent également être liées statiquement dans le plugin du moteur. Il n'y a actuellement pas d'API de système de construction pour sélectionner ces bibliothèques vocales lors de la configuration de Qt.
| Nom | Type | Remarques |
|---|---|---|
| audioDevice | QAudioDevice |
speech-dispatcher
Le moteur "speechd" communique avec le démon speech-dispatcher, et nécessite au moins libspeechd 0.9.
Note : Le moteur speech-dispatcher n'a pas les capacités WordByWordProgress ou Synthesize.
Le moteur speech-dispatcher ne supporte aucun paramètre spécifique au moteur.
© 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.