QTextToSpeech Class
Die Klasse QTextToSpeech bietet einen bequemen Zugang zu Text-to-Speech-Engines. Mehr...
Kopfzeile: | #include <QTextToSpeech> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS TextToSpeech) target_link_libraries(mytarget PRIVATE Qt6::TextToSpeech) |
qmake: | QT += texttospeech |
Vererbt: | QObject |
Öffentliche Typen
enum class | BoundaryHint { Default, Immediate, Word, Sentence, Utterance } |
flags | Capabilities |
(since 6.6) enum class | Capability { None, Speak, PauseResume, WordByWordProgress, Synthesize } |
enum class | ErrorReason { NoError, Initialization, Configuration, Input, Playback } |
enum | State { Ready, Speaking, Synthesizing, Paused, Error } |
Eigenschaften
|
Öffentliche Funktionen
QTextToSpeech(QObject *parent = nullptr) | |
QTextToSpeech(const QString &engine, QObject *parent = nullptr) | |
(since 6.4) | QTextToSpeech(const QString &engine, const QVariantMap ¶ms, QObject *parent = nullptr) |
virtual | ~QTextToSpeech() override |
QList<QLocale> | availableLocales() const |
QList<QVoice> | availableVoices() const |
QString | engine() const |
QTextToSpeech::Capabilities | engineCapabilities() const |
QTextToSpeech::ErrorReason | errorReason() const |
QString | errorString() const |
(since 6.6) QList<QVoice> | findVoices(Args &&... args) const |
QLocale | locale() const |
double | pitch() const |
double | rate() const |
(since 6.4) bool | setEngine(const QString &engine, const QVariantMap ¶ms = QVariantMap()) |
QTextToSpeech::State | state() const |
(since 6.6) void | synthesize(const QString &text, Functor &&functor) |
(since 6.6) void | synthesize(const QString &text, const QObject *context, Functor &&functor) |
QVoice | voice() const |
double | volume() const |
Öffentliche Slots
(since 6.6) qsizetype | enqueue(const QString &utterance) |
void | pause(QTextToSpeech::BoundaryHint boundaryHint = QTextToSpeech::BoundaryHint::Default) |
void | resume() |
void | say(const QString &text) |
void | setLocale(const QLocale &locale) |
void | setPitch(double pitch) |
void | setRate(double rate) |
void | setVoice(const QVoice &voice) |
void | setVolume(double volume) |
void | stop(QTextToSpeech::BoundaryHint boundaryHint = QTextToSpeech::BoundaryHint::Default) |
Signale
(since 6.6) void | aboutToSynthesize(qsizetype id) |
void | engineChanged(const QString &engine) |
void | errorOccurred(QTextToSpeech::ErrorReason reason, const QString &errorString) |
void | localeChanged(const QLocale &locale) |
void | pitchChanged(double pitch) |
void | rateChanged(double rate) |
(since 6.6) void | sayingWord(const QString &word, qsizetype id, qsizetype start, qsizetype length) |
void | stateChanged(QTextToSpeech::State state) |
void | voiceChanged(const QVoice &voice) |
void | volumeChanged(double volume) |
Statische öffentliche Mitglieder
QStringList | availableEngines() |
Ausführliche Beschreibung
Verwenden Sie say(), um das Lesen von Text auf dem Standard-Audiogerät zu starten, und stop(), pause() und resume(), um das Lesen des Textes zu steuern.
connect(ui.speakButton, &QPushButton::clicked, m_speech, [this]{ m_speech->say(ui.plainTextEdit->toPlainText()); }); connect(ui.stopButton, &QPushButton::clicked, m_speech, [this]{ m_speech->stop(); }); connect(ui.pauseButton, &QPushButton::clicked, m_speech, [this]{ m_speech->pause(); }); connect(ui.resumeButton, &QPushButton::clicked, m_speech, &QTextToSpeech::resume);
Zum Synthetisieren von Text in PCM-Daten für die weitere Verarbeitung verwenden Sie synthesize().
Verwenden Sie findVoices(), um eine Liste der passenden Stimmen zu erhalten, oder verwenden Sie availableVoices(), um die Liste der Stimmen zu erhalten, die das aktuelle Gebietsschema unterstützen. Ändern Sie die Eigenschaft locale, indem Sie eine der availableLocales() verwenden, die gut zu der Sprache, in der der Eingabetext verfasst ist, und zu dem Akzent der gewünschten Sprachausgabe passt. Dadurch wird die Liste der verfügbaren Stimmen auf den meisten Plattformen geändert. Verwenden Sie dann eine der verfügbaren Stimmen in einem Aufruf von setVoice().
Nicht jede Engine unterstützt alle Funktionen. Verwenden Sie die Funktion engineCapabilities(), um zu testen, welche Funktionen verfügbar sind, und passen Sie die Verwendung der Klasse entsprechend an.
Hinweis: Welche Sprachumgebungen und Stimmen die Engine unterstützt, hängt normalerweise von der Konfiguration des Betriebssystems ab. Unter macOS z. B. können Endbenutzer Stimmen über das Bedienfeld Barrierefreiheit in den Systemeinstellungen installieren.
Dokumentation der Mitgliedstypen
enum class QTextToSpeech::BoundaryHint
beschreibt, wann das Sprechen gestoppt und pausiert werden sollte.
Konstante | Wert | Beschreibung |
---|---|---|
QTextToSpeech::BoundaryHint::Default | 0 | Verwendet das motorenspezifische Standardverhalten. |
QTextToSpeech::BoundaryHint::Immediate | 1 | Die Engine sollte die Wiedergabe sofort stoppen. |
QTextToSpeech::BoundaryHint::Word | 2 | Sprache anhalten, wenn das aktuelle Wort beendet ist. |
QTextToSpeech::BoundaryHint::Sentence | 3 | Sprache anhalten, wenn der aktuelle Satz zu Ende ist. |
QTextToSpeech::BoundaryHint::Utterance (since Qt 6.6) | 4 | Beendet die Sprachausgabe, wenn die aktuelle Äußerung zu Ende ist. Eine Äußerung ist der Textblock, der in einem Aufruf von say() oder enqueue() verwendet wird. |
Hinweis: Dies sind Hinweise für die Engine. Die aktuelle Engine unterstützt möglicherweise nicht alle Optionen.
[since 6.6]
enum class QTextToSpeech::Capability
flags QTextToSpeech::Capabilities
Diese Aufzählung beschreibt die Fähigkeiten einer Text-to-Speech-Engine.
Konstante | Wert | Beschreibung |
---|---|---|
QTextToSpeech::Capability::None | 0 | Die Engine implementiert keine der Fähigkeiten. |
QTextToSpeech::Capability::Speak | 1 << 0 | Die Engine kann die Audioausgabe von Text abspielen. |
QTextToSpeech::Capability::PauseResume | 1 << 1 | Die Engine kann die Audioausgabe unterbrechen und dann wieder fortsetzen. |
QTextToSpeech::Capability::WordByWordProgress | 1 << 2 | Die Engine gibt das Signal sayingWord() für jedes Wort aus, das gesprochen wird. |
QTextToSpeech::Capability::Synthesize | 1 << 3 | Die Engine kann synthesize PCM-Audiodaten aus Text ausgeben. |
Diese Aufzählung wurde in Qt 6.6 eingeführt.
Der Capabilities-Typ ist ein Typedef für QFlags<Capability>. Er speichert eine ODER-Kombination von Capability-Werten.
Siehe auch engineCapabilities().
enum class QTextToSpeech::ErrorReason
Diese Aufzählung beschreibt den aktuellen Fehler, falls vorhanden, der QTextToSpeech Engine.
Konstante | Wert | Beschreibung |
---|---|---|
QTextToSpeech::ErrorReason::NoError | 0 | Es ist kein Fehler aufgetreten. |
QTextToSpeech::ErrorReason::Initialization | 1 | Das Backend konnte nicht initialisiert werden, z.B. aufgrund eines fehlenden Treibers oder einer Betriebssystemanforderung. |
QTextToSpeech::ErrorReason::Configuration | 2 | Die angegebene Backend-Konfiguration ist inkonsistent, z.B. aufgrund eines falschen Stimmennamens oder falscher Parameter. |
QTextToSpeech::ErrorReason::Input | 3 | Der angegebene Text konnte nicht synthetisiert werden, z.B. wegen ungültiger Größe oder Zeichen. |
QTextToSpeech::ErrorReason::Playback | 4 | Die Audiowiedergabe ist fehlgeschlagen, z. B. aufgrund eines fehlenden Audiogeräts, eines falschen Formats oder einer Unterbrechung des Audiostreamings. |
Verwenden Sie errorReason(), um den aktuellen Fehler zu erhalten, und errorString(), um die zugehörige Fehlermeldung zu erhalten.
Siehe auch errorOccurred().
enum QTextToSpeech::State
Diese Aufzählung beschreibt den aktuellen Zustand der Text-to-Speech-Engine.
Konstante | Wert | Beschreibung |
---|---|---|
QTextToSpeech::Ready | 0 | Der Synthesizer ist bereit, einen neuen Text zu beginnen. Dies ist auch der Zustand, nachdem ein Text beendet wurde. |
QTextToSpeech::Speaking | 1 | Der Text wird gesprochen. |
QTextToSpeech::Synthesizing | 4 | Der Text wird in PCM-Daten synthetisiert. Das Signal synthesized() wird mit Datenpaketen ausgegeben. |
QTextToSpeech::Paused | 2 | Die Synthese wurde angehalten und kann mit resume() fortgesetzt werden. |
QTextToSpeech::Error | 3 | Es ist ein Fehler aufgetreten. Einzelheiten sind in errorReason() enthalten. |
Siehe auch QTextToSpeech::ErrorReason, errorReason(), und errorString().
Dokumentation der Eigenschaften
[since 6.4]
engine : QString
Diese Eigenschaft enthält die Engine, die zur Synthese von Text in Sprache verwendet wird.
Wenn Sie die Engine ändern, wird die laufende Sprachausgabe gestoppt.
Auf den meisten Plattformen wird bei einer Änderung der Engine die Liste von available locales und available voices aktualisiert.
Diese Eigenschaft wurde in Qt 6.4 eingeführt.
Zugriffsfunktionen:
QString | engine() const | |
bool | setEngine(const QString &engine, const QVariantMap ¶ms = QVariantMap()) | [see note below] |
Hinweis: Diese Funktion kann über das Meta-Objektsystem und von QML aus aufgerufen werden. Siehe Q_INVOKABLE.
Benachrichtigungssignal:
void | engineChanged(const QString &engine) |
[read-only, since 6.6]
engineCapabilities : const Capabilities
Diese Eigenschaft enthält die von der aktuellen Engine implementierten Fähigkeiten
Diese Eigenschaft wurde in Qt 6.6 eingeführt.
Zugriffsfunktionen:
QTextToSpeech::Capabilities | engineCapabilities() const |
Notifier-Signal:
void | engineChanged(const QString &engine) |
Siehe auch engine.
locale : QLocale
Diese Eigenschaft enthält das aktuell verwendete Gebietsschema.
Standardmäßig wird das Systemgebietsschema verwendet.
Auf einigen Plattformen wird bei einer Änderung des Gebietsschemas die Liste available voices aktualisiert, und wenn die aktuelle Stimme mit dem neuen Gebietsschema nicht verfügbar ist, wird eine neue Stimme eingestellt.
Zugriffsfunktionen:
QLocale | locale() const |
void | setLocale(const QLocale &locale) |
Benachrichtigungssignal:
void | localeChanged(const QLocale &locale) |
Siehe auch voice und findVoices().
pitch : double
Diese Eigenschaft enthält die Tonhöhe der Stimme, die von -1,0 bis 1,0 reicht.
Der Standardwert von 0,0 ist die normale Stimmlage.
Zugriffsfunktionen:
double | pitch() const |
void | setPitch(double pitch) |
Melder-Signal:
void | pitchChanged(double pitch) |
rate : double
Diese Eigenschaft enthält die aktuelle Sprachrate, die von -1,0 bis 1,0 reicht.
Der Standardwert von 0,0 entspricht dem normalen Sprachfluss.
Zugriffsfunktionen:
double | rate() const |
void | setRate(double rate) |
Anmelder-Signal:
void | rateChanged(double rate) |
[read-only]
state : const State
Diese Eigenschaft enthält den aktuellen Status des Sprachsynthesizers.
void MainWindow::stateChanged(QTextToSpeech::State state) { switch (state) { case QTextToSpeech::Speaking: ui.statusbar->showMessage(tr("Speech started...")); break; case QTextToSpeech::Ready: ui.statusbar->showMessage(tr("Speech stopped..."), 2000); break; case QTextToSpeech::Paused: ui.statusbar->showMessage(tr("Speech paused...")); break; default: ui.statusbar->showMessage(tr("Speech error!")); break; } ui.pauseButton->setEnabled(state == QTextToSpeech::Speaking); ui.resumeButton->setEnabled(state == QTextToSpeech::Paused); ui.stopButton->setEnabled(state == QTextToSpeech::Speaking || state == QTextToSpeech::Paused); }
Verwenden Sie say(), um die Textsynthese mit dem aktuellen voice und locale zu starten.
Zugriffsfunktionen:
QTextToSpeech::State | state() const |
Benachrichtigungssignal:
void | stateChanged(QTextToSpeech::State state) |
voice : QVoice
Diese Eigenschaft enthält die Stimme, die für die Sprache verwendet werden soll.
Die Stimme muss eine der voices available für die Engine sein.
Auf einigen Plattformen werden durch das Einstellen der Stimme andere Stimmattribute wie locale, pitch usw. geändert. Diese Änderungen lösen die Aussendung von Signalen aus.
Zugriffsfunktionen:
QVoice | voice() const |
void | setVoice(const QVoice &voice) |
Melder-Signal:
void | voiceChanged(const QVoice &voice) |
Siehe auch findVoices().
volume : double
Diese Eigenschaft enthält die aktuelle Lautstärke, die von 0,0 bis 1,0 reicht.
Der Standardwert ist die Standardlautstärke der Plattform.
Zugriffsfunktionen:
double | volume() const |
void | setVolume(double volume) |
Benachrichtigungssignal:
void | volumeChanged(double volume) |
Dokumentation der Mitgliedsfunktionen
[since 6.6]
template <typename Functor> void QTextToSpeech::synthesize(const QString &text, Functor &&functor)
[since 6.6]
template <typename Functor> void QTextToSpeech::synthesize(const QString &text, const QObject *context, Functor &&functor)
Synthetisiert die text in rohe Audiodaten.
Diese Funktion synthetisiert die Sprache asynchron in rohe Audiodaten. Wenn Daten verfügbar sind, wird functor als functor(QAudioFormat format, QByteArray bytes)
aufgerufen, wobei format
die format der Daten in bytes
beschreibt; oder als functor(QAudioBuffer &buffer)
.
Die Eigenschaft state wird auf Synthesizing gesetzt, wenn die Synthese beginnt, und auf Ready, wenn die Synthese beendet ist. Während der Synthese kann die functor mehrfach aufgerufen werden, möglicherweise mit wechselnden Werten für format
.
Die functor kann eine Callable sein, wie eine Lambda- oder Free-Funktion, mit einem optionalen context Objekt:
tts.synthesize("Hello world", [](const QAudioFormat &format, const QByteArray &bytes){ // process data according to format });
oder eine Mitgliedsfunktion des context Objekts sein:
struct PCMProcessor : QObject { void processData(const QAudioFormat &format, const QByteArray &bytes) { // process data according to format } } processor; tts.synthesize("Hello world", &processor, &PCMProcessor::processData);
Wenn context zerstört wird, dann wird functor nicht mehr aufgerufen.
Hinweis: Diese API erfordert, dass die Engine die Synthesize Fähigkeit besitzt.
Diese Funktion wurde in Qt 6.6 eingeführt.
[explicit]
QTextToSpeech::QTextToSpeech(QObject *parent = nullptr)
Lädt eine Text-to-Speech-Engine aus einem Plug-in, das das Standard-Engine-Plug-in verwendet, und erstellt ein QTextToSpeech-Objekt als Kind von parent.
Die Standard-Engine ist plattformspezifisch.
Wenn die Engine korrekt initialisiert wird, ändert sich die state der Engine zu QTextToSpeech::Ready; beachten Sie, dass dies asynchron geschehen kann. Wenn das Plugin nicht geladen werden kann, wird state auf QTextToSpeech::Error gesetzt.
Siehe auch availableEngines().
[explicit]
QTextToSpeech::QTextToSpeech(const QString &engine, QObject *parent = nullptr)
Lädt eine Text-to-Speech-Engine aus einem Plug-in, das dem Parameter engine entspricht, und erstellt ein QTextToSpeech-Objekt als Kind von parent.
Wenn engine leer ist, wird das Standard-Engine-Plug-in verwendet. Die Standard-Engine ist plattformspezifisch.
Wenn die Engine korrekt initialisiert wird, wird state der Engine auf QTextToSpeech::Ready gesetzt. Wenn das Plugin nicht geladen werden kann oder wenn die Engine nicht initialisiert werden kann, wird state der Engine auf QTextToSpeech::Error gesetzt.
Siehe auch availableEngines().
[explicit, since 6.4]
QTextToSpeech::QTextToSpeech(const QString &engine, const QVariantMap ¶ms, QObject *parent = nullptr)
Lädt eine Text-to-Speech-Engine aus einem Plug-in, das mit dem Parameter engine übereinstimmt, und konstruiert ein QTextToSpeech-Objekt als Kind von parent, wobei params an die Engine weitergegeben wird.
Wenn engine leer ist, wird das Standard-Engine-Plug-in verwendet. Die Standard-Engine ist plattformspezifisch. Welche Schlüssel/Wertpaare in params unterstützt werden, hängt von der Engine ab. Einzelheiten finden Sie in der Dokumentation der Engine. Nicht unterstützte Einträge werden ignoriert.
Wenn die Engine korrekt initialisiert wird, wird die state der Engine auf QTextToSpeech::Ready gesetzt. Wenn das Plugin nicht geladen werden kann oder die Engine nicht initialisiert werden kann, wird die state der Engine auf QTextToSpeech::Error gesetzt.
Diese Funktion wurde in Qt 6.4 eingeführt.
Siehe auch availableEngines().
[override virtual noexcept]
QTextToSpeech::~QTextToSpeech()
Zerstört dieses QTextToSpeech Objekt und unterbricht jede Rede.
[signal, since 6.6]
void QTextToSpeech::aboutToSynthesize(qsizetype id)
Dieses Signal wird ausgegeben, kurz bevor die Engine beginnt, das Sprachaudio für id zu synthetisieren. id ist der Wert, der durch einen Aufruf von enqueue() zurückgegeben wird. Anwendungen können dieses Signal verwenden, um in letzter Minute Änderungen an voice Attributen vorzunehmen oder um den Prozess von Text zu verfolgen, der über enqueue() in die Warteschlange gestellt wurde.
Diese Funktion wurde in Qt 6.6 eingeführt.
Siehe auch enqueue(), synthesize(), und voice.
[static invokable]
QStringList QTextToSpeech::availableEngines()
Ruft die Liste der unterstützten Text-to-Speech-Engine-Plug-ins ab.
Hinweis: Diese Funktion kann über das Meta-Objektsystem und von QML aus aufgerufen werden. Siehe Q_INVOKABLE.
Siehe auch engine.
[invokable]
QList<QLocale> QTextToSpeech::availableLocales() const
Gibt die Liste der Gebietsschemata zurück, die von der aktiven engine unterstützt werden.
Hinweis: Diese Funktion kann über das Meta-Objektsystem und von QML aus aufgerufen werden. Siehe Q_INVOKABLE.
Siehe auch availableVoices() und findVoices().
[invokable]
QList<QVoice> QTextToSpeech::availableVoices() const
Gibt die Liste der für die aktuelle locale verfügbaren Stimmen zurück.
Hinweis: Wenn kein Gebietsschema festgelegt wurde, wird das Systemgebietsschema verwendet.
Hinweis: Diese Funktion kann über das Meta-Objektsystem und von QML aus aufgerufen werden. Siehe Q_INVOKABLE.
Siehe auch availableLocales() und findVoices().
[slot, since 6.6]
qsizetype QTextToSpeech::enqueue(const QString &utterance)
Fügt utterance in die Warteschlange der zu sprechenden Texte ein und beginnt zu sprechen. Gibt den Index des Textes in der Warteschlange zurück, oder -1 im Falle eines Fehlers.
Wenn die Engine state gerade Ready
ist, wird utterance sofort gesprochen. Andernfalls beginnt die Maschine, utterance zu sprechen, sobald sie den aktuellen Text beendet hat.
Jedes Mal, wenn die Engine mit dem nächsten Texteintrag in der Warteschlange fortfährt, wird das Signal aboutToSynthesize() ausgegeben. Dies ermöglicht es Anwendungen, den Fortschritt zu verfolgen und Änderungen an den Sprachattributen in letzter Minute vorzunehmen.
Der Aufruf von stop() löscht die Warteschlange. Um die Engine am Ende eines Textes anzuhalten, verwenden Sie den Utterance boundary hint.
Diese Funktion wurde in Qt 6.6 eingeführt.
Siehe auch say(), stop(), aboutToSynthesize(), und synthesize().
[signal]
void QTextToSpeech::errorOccurred(QTextToSpeech::ErrorReason reason, const QString &errorString)
Dieses Signal wird ausgegeben, wenn ein Fehler aufgetreten ist und der Parameter state auf QTextToSpeech::Error gesetzt wurde. Der Parameter reason gibt die Art des Fehlers an, und errorString liefert eine von Menschen lesbare Fehlerbeschreibung.
QTextToSpeech::ErrorReason ist kein registrierter Metatyp, daher müssen Sie ihn für Warteschlangenverbindungen mit Q_DECLARE_METATYPE() und qRegisterMetaType() registrieren.
Siehe auch errorReason(), errorString(), und Erstellen von benutzerdefinierten Qt-Typen.
[invokable]
QTextToSpeech::ErrorReason QTextToSpeech::errorReason() const
Gibt den Grund zurück, warum die Engine einen Fehler gemeldet hat.
Hinweis: Diese Funktion kann über das Meta-Objektsystem und von QML aus aufgerufen werden. Siehe Q_INVOKABLE.
Siehe auch state und errorOccurred().
[invokable]
QString QTextToSpeech::errorString() const
Gibt die aktuelle Fehlermeldung der Engine zurück.
Hinweis: Diese Funktion kann über das Meta-Objektsystem und von QML aus aufgerufen werden. Siehe Q_INVOKABLE.
Siehe auch errorOccurred().
[since 6.6]
template <typename... Args> QList<QVoice> QTextToSpeech::findVoices(Args &&... args) const
Gibt die Liste der Stimmen zurück, die den Kriterien in args entsprechen.
Die Argumente in args werden verarbeitet, um die Liste der Stimmen zusammenzustellen, die alle Kriterien erfüllen. Ein Argument vom Typ QString wird mit dem name der Stimme abgeglichen, ein Argument vom Typ QLocale mit dem locale der Stimme usw. Es ist möglich, nur die Language oder Territory der gewünschten Stimmen anzugeben, und der Name kann mit einem regular expression abgeglichen werden.
Diese Funktion gibt alle Stimmen zurück, wenn die Liste der Kriterien leer ist. Mehrere Kriterien desselben Typs sind nicht möglich und führen zu einem Kompilierfehler.
Hinweis: Sofern args nicht die aktuelle locale enthält, muss diese Funktion möglicherweise das Gebietsschema der Engine ändern, um die Liste aller Stimmen zu erhalten. Dies ist engine-spezifisch, kann aber Auswirkungen auf die laufende Sprachsynthese haben. Es ist daher ratsam, diese Funktion nur dann aufzurufen, wenn die state Ready ist.
Diese Funktion wurde in Qt 6.6 eingeführt.
Siehe auch availableVoices().
[slot]
void QTextToSpeech::pause(QTextToSpeech::BoundaryHint boundaryHint = QTextToSpeech::BoundaryHint::Default)
Unterbricht die laufende Rede bei boundaryHint.
Ob die boundaryHint beachtet wird, hängt von der engine ab.
Siehe auch resume() und PauseResume.
[slot]
void QTextToSpeech::resume()
Setzen Sie das Sprechen fort, nachdem pause() aufgerufen wurde.
Hinweis: Unter Android wird bei der Wiederaufnahme von angehaltener Sprache wieder von vorne begonnen. Dies ist eine Einschränkung der zugrunde liegenden Text-to-Speech-Engine.
Siehe auch pause().
[slot]
void QTextToSpeech::say(const QString &text)
Startet das Sprechen der text.
Diese Funktion beginnt mit der asynchronen Sprachsynthese und liest den Text auf dem Standard-Audioausgabegerät vor.
connect(ui.speakButton, &QPushButton::clicked, m_speech, [this]{ m_speech->say(ui.plainTextEdit->toPlainText()); });
Hinweis: Alle laufenden Lesevorgänge werden angehalten, bevor mit dem Lesen des gerade synthetisierten Textes begonnen wird.
Der aktuelle Zustand ist über die Eigenschaft state verfügbar und wird auf Speaking gesetzt, sobald das Lesen beginnt. Wenn das Lesen beendet ist, wird state auf Ready gesetzt.
Siehe auch enqueue(), stop(), pause(), resume(), und synthesize().
[signal, since 6.6]
void QTextToSpeech::sayingWord(const QString &word, qsizetype id, qsizetype start, qsizetype length)
Dieses Signal wird ausgegeben, wenn der word, d.h. der Textabschnitt, der durch start und length in der Äußerung id angegeben wird, auf dem Audiogerät abgespielt wird.
Hinweis: Dieses Signal setzt voraus, dass die Engine über die Fähigkeit WordByWordProgress verfügt.
Diese Funktion wurde in Qt 6.6 eingeführt.
Siehe auch Capability und say().
[invokable, since 6.4]
bool QTextToSpeech::setEngine(const QString &engine, const QVariantMap ¶ms = QVariantMap())
Setzt die von diesem QTextToSpeech -Objekt verwendete Engine auf engine und übergibt params an den Engine-Konstruktor.
Gibt zurück, ob engine erfolgreich gesetzt werden konnte.
Welche Schlüssel/Wertpaare in params unterstützt werden, hängt von der Engine ab. Siehe die Dokumentation der Engine für Details. Nicht unterstützte Einträge werden ignoriert.
Hinweis: Diese Funktion kann über das Meta-Objektsystem und von QML aus aufgerufen werden. Siehe Q_INVOKABLE.
Hinweis: Setter-Funktion für die Eigenschaft engine.
Diese Funktion wurde in Qt 6.4 eingeführt.
Siehe auch engine().
[slot]
void QTextToSpeech::stop(QTextToSpeech::BoundaryHint boundaryHint = QTextToSpeech::BoundaryHint::Default)
Stoppt das aktuelle Lesen unter boundaryHint und löscht die Warteschlange der anstehenden Texte.
Der Lesevorgang kann nicht fortgesetzt werden. Ob boundaryHint beachtet wird, hängt von der Engine ab.
© 2025 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.