Vosk-Erweiterung
Standardmäßig verwendet das Runtime Speech Recognizer Plugin whisper.cpp zur Erkennung. Auf Plattformen ohne GPU-Beschleunigungsunterstützung in whisper.cpp, insbesondere Android und Android-basierten Plattformen wie Meta Quest, fällt die Erkennung auf CPU + Intrinsics zurück, was langsamer ist und den Akku stärker belastet. Das Vosk extension plugin fügt einen alternativen Anbieter basierend auf Vosk hinzu, einem leichtgewichtigen Spracherkennungs-Toolkit, das auf eingeschränkter Hardware gut funktioniert und sich besonders auf Meta Quest bewährt.
Der Wechsel zwischen whisper.cpp und Vosk erfordert nur ein paar Blueprint-Knoten, und der Wechsel zurück ist genauso einfach, sodass Sie beide Optionen verfügbar halten und bei Bedarf einen Anbieter pro Plattform auswählen können.
Installation
Um die Vosk-Erweiterung zu verwenden:
-
Stellen Sie sicher, dass das Haupt-Plugin „Runtime Speech Recognizer“ bereits in Ihrem Projekt installiert ist.
-
Laden Sie das Vosk-Erweiterungs-Plugin hier herunter.
-
Entpacken Sie den Ordner aus dem heruntergeladenen Archiv in den
Plugins-Ordner Ihres Projekts (erstellen Sie diesen Ordner, falls er nicht existiert). -
Erstellen Sie Ihr Projekt neu (diese Erweiterung erfordert ein C++-Projekt).
-
Die Vosk-Erweiterung unterstützt Unreal Engine 5.0 bis 5.8.
-
Diese Erweiterung wird als Quellcode bereitgestellt und erfordert ein C++-Projekt zur Nutzung.
-
Weitere Informationen zum manuellen Erstellen von Plugins finden Sie im Tutorial zum Erstellen von Plugins.
Wechseln zum Vosk-Anbieter
Sobald die Erweiterung installiert ist, besteht das Umschalten eines Spracherkenners auf Vosk aus drei Knoten, direkt nach CreateSpeechRecognizer:

- Rufen Sie Set Speech Recognizer Provider auf und übergeben Sie die Vosk-Anbieterklasse.
- Führen Sie Cast To Runtime Vosk Speech Recognizer Provider auf dem Ergebnis aus.
- Rufen Sie Set Vosk Model Path (By Name) auf dem Cast-Ergebnis auf und wählen Sie ein heruntergeladenes Modell aus dem Dropdown-Menü aus.
Alles andere in Ihrer bestehenden Einrichtung (Start Speech Recognition, Process Audio Data, die Delegaten, VAD usw.) funktioniert weiterhin unverändert. Um zu whisper.cpp zurückzuwechseln, entfernen Sie diese drei Knoten oder rufen Sie einfach Set Speech Recognizer Provider gar nicht auf, da whisper.cpp die Standardeinstellung ist.
Vosk-Modelle herunterladen
Vosk-Modelle werden über Projekteinstellungen -> Plugins -> Runtime Speech Recognizer Vosk heruntergeladen und verwaltet. Das Bedienfeld listet den vordefinierten Modellkatalog, gruppiert nach Sprache, und jeder Eintrag hat eine Schaltfläche Herunterladen, wobei während des Downloads und der Extraktion ein Fortschrittsbalken angezeigt wird, sowie eine Schaltfläche Löschen, sobald das Modell auf der Festplatte liegt.

Heruntergeladene Modelle werden unter Content/RuntimeSpeechRecognizerVosk/Models extrahiert, und das Plugin übernimmt automatisch das Bereitstellen dieses Ordners für das Packaging. Sie sind auch nicht auf ein einzelnes gepacktes Modell beschränkt: Jedes heruntergeladene Modell bleibt verfügbar und kann zur Laufzeit mit Set Vosk Model Path (By Name) ausgewählt werden. Unter Android werden die Modelldateien in der gepackten App mitgeliefert und beim ersten Verwenden in den persistenten Speicher kopiert, was intern beim Auswählen des Modells gehandhabt wird.
Unterstützte Sprachen (zum Erweitern klicken)
Der vordefinierte Katalog umfasst Modelle für: Englisch, Indisches Englisch, Chinesisch, Russisch, Französisch, Deutsch, Spanisch, Portugiesisch/Brasilianisches Portugiesisch, Griechisch, Türkisch, Vietnamesisch, Italienisch, Niederländisch, Katalanisch, Arabisch, Tunesisch-Arabisch, Farsi, Filipino, Ukrainisch, Kasachisch, Schwedisch, Japanisch, Esperanto, Hindi, Tschechisch, Polnisch, Usbekisch, Koreanisch, Bretonisch, Gujarati, Tadschikisch, Telugu, Kirgisisch und Georgisch sowie ein dediziertes Sprecheridentifikationsmodell.
Manche Sprachen haben mehrere Varianten im Panel (zum Beispiel ein kleineres Modell, das für mobile Hardware geeignet ist, neben einem größeren, genaueren), daher lohnt es sich, die Optionen für deine Zielsprache direkt im Projekteinstellungen-Panel zu prüfen, anstatt anzunehmen, dass nur eine Variante verfügbar ist. Siehe die vollständige Vosk-Modellliste für Details zu Genauigkeit, Größe und Lizenzierung jeder Variante.
Parameter und Verhalten
Vosk ist ein grundlegend anderer Spracherkenner als whisper.cpp, daher treffen die meisten Einträge aus der Parameterliste für die Erkennung nicht auf ihn zu. Das Aufrufen eines nicht unterstützten Setters beim Vosk-Anbieter hat keine Auswirkung, sodass für whisper.cpp geschriebene Blueprint-Logik nach dem Wechsel des Anbieters unverändert weiter funktioniert. Die Funktionen, die bei Vosk tatsächlich eine Auswirkung haben, sind:
- Sprache festlegen: wählt aus, welches Sprachmodell verwendet wird. Vosk unterstützt keine automatische Spracherkennung. Wenn die Sprache auf Auto gesetzt ist, wird das ignoriert.
- Schrittgröße festlegen: wie viel Audio sich ansammelt, bevor es zur Erkennung gesendet wird, gleicher Mechanismus wie bei whisper.cpp. Da Vosk ein Streaming-Erkennungssystem ist, sorgt ein kleiner Wert (der Vosk-Anbieter verwendet standardmäßig 200 ms) dafür, dass Teilergebnisse reaktionsschnell bleiben.
- Maximale Tokenanzahl festlegen: für Vosk umfunktioniert, siehe unten.
Max. Tokens und Streaming-Ausgabe festlegen
Der Parameter Set Max Tokens steuert, wie der Vosk-Anbieter erkannten Text über On Recognized Text Segment bereitstellt:
- 0 (Standard): Der Text wird intern angesammelt und als ein einzelnes fertiges Segment bereitgestellt, sobald die Erkennung abgeschlossen ist – entweder über einen VAD-ausgelösten Stopp (wie in den Beispielen Sprachgesteuerte Befehlserkennung oder Automatisch initialisierende Spracherkennung) oder durch eine beliebige Logik in Ihrem Projekt, die Stop Speech Recognition aufruft oder den letzten Audio-Chunk durchzwingt. Dies entspricht dem segmentbasierten Verhalten, das whisper.cpp verwendet.
- Größer als 0: Der Provider wechselt in einen Streaming-Modus. Anstatt auf ein fertiges Segment zu warten, sendet er während der Erkennung fortlaufend Teilergebnisse, wobei jedes das vorherige durch eine längere Version desselben Satzes ersetzt, bis das Segment abgeschlossen ist und der Text für das nächste zurückgesetzt wird. Eine kurze Äußerung könnte über mehrere Sendungen von On Recognized Text Segment so aussehen:
"The"
"The cat"
"The cat is"
"The cat is sleeping"
Der genaue Zahlenwert spielt für Vosk selbst keine Rolle, da es kein eingebautes Token-Limit hat. Jeder Wert über 0 aktiviert die Streaming-Übertragung.
Da Teilantworten nur so oft eintreffen, wie Audio in die Warteschlange gestellt wird (gesteuert durch Set Step Size), kombinieren Sie einen niedrigen Max Tokens-Wert mit einer niedrigen Step Size für eine reaktionsschnelle Live-Ausgabe.
Plattformunterstützung
Die Vosk-Erweiterung funktioniert unter Windows, Android und Android-basierten Plattformen wie Meta Quest. Sie ist am nützlichsten auf Android und Meta Quest, wo whisper.cpp keinen GPU-Beschleunigungspfad hat, und sie funktioniert besonders gut auf Meta Quest im Speziellen. Wenn Sie bereits Windows oder eine andere Desktop-Plattform mit verfügbarer Vulkan- oder Metal-Beschleunigung nutzen, ist whisper.cpp wahrscheinlich die bessere Standardwahl. Vosk ist als Alternative für die Plattformen gedacht, auf denen whisper.cpp am schwächsten ist.
Fortgeschritten: direkt mit Modellen arbeiten
Das Bedienfeld „Projekt-Einstellungen" deckt das Herunterladen und Löschen von Modellen für die meisten Projekte ab. Wenn Ihr Projekt direkt mit Modellen arbeiten muss, anstatt sich auf das Editor-Bedienfeld zu verlassen, z. B. um die Verfügbarkeit zu prüfen oder Dateien zur Laufzeit zu verwalten, macht das Plugin die zugrunde liegenden Bibliotheksfunktionen verfügbar:
- Get Available Vosk Model Names: gibt die Namen der Modelle zurück, die sofort einsatzbereit sind, egal ob sie bereits auf der Festplatte extrahiert wurden oder nur verpackt sind und auf ihre erste Verwendung warten. Das ist es, was das Dropdown-Menü bei Set Vosk Model Path (By Name) befüllt.
- Is Vosk Model Available: dieselbe Prüfung wie oben, für ein einzelnes Modell anhand der ID.
- Get Vosk Models Directory: gibt den absoluten Pfad zu dem Verzeichnis zurück, aus dem Modelle zur Laufzeit gelesen werden.
- Get Vosk Model Folder Path: gibt den absoluten Pfad zum Ordner eines bestimmten Modells auf der Festplatte zurück.
- Delete Vosk Model Files: löscht die extrahierten Dateien eines Modells von der Festplatte.