Zum Hauptinhalt springen

Erfassbare Schallwelle

Übersicht

Eine erfassbare Schallwelle leitet sich von der Streaming-Schallwelle ab. Sie unterstützt die Erfassung von Audiodaten von Eingabegeräten wie einem Mikrofon und deren Wiedergabe, mit denselben Fähigkeiten wie eine importierte Schallwelle (einschließlich Zurückspulen, Verwendung in SoundCues usw.). Sie können sogar Audio gleichzeitig erfassen und abspielen, ohne Einschränkungen.

tipp

Für Voice Activity Detection (VAD) siehe diese Seite.

hinweis

Die erfassbare Schallwelle fordert automatisch Mikrofonberechtigungen auf iOS und Android an, sobald die Erfassung gestartet wird.

Grundlegende Verwendung

Erstellen einer erfassbaren Schallwelle

Zuerst sollten Sie eine erfassbare Schallwelle erstellen.

Create Capturable Sound Wave node

warnung

Sie sollten die aufnehmbare Schallwelle als starke Referenz behandeln, um vorzeitige Zerstörung zu verhindern (z.B. durch Zuweisung zu einer separaten Variable in Blueprints oder Verwendung von UPROPERTY() in C++).

Verfügbare Eingabegeräte abrufen

Um diese Funktion zu nutzen, müssen Sie zunächst alle verfügbaren Audio-Eingabegeräte abrufen, die für die Aufnahme verwendet werden können.

Get Available Audio Input Devices node

Aufnahme starten und stoppen

Nachdem die verfügbaren Geräte ermittelt wurden, können Sie mit der Erfassung von Audiodaten vom Eingabegerät beginnen und diese bei Bedarf beenden.

Start- und Stop-Aufnahme-Knoten

info

DeviceId ist der Index des Geräts im Array der verfügbaren Geräte, die im vorherigen Schritt ermittelt wurden.

Überprüfen des Aufnahmestatus

Sie können überprüfen, ob die Schallwelle aktuell Audio aufnimmt:

Is Capturing node

Erweiterte Funktionen

Stummschalten und Aktivieren der Aufnahme

Sie können die Tonaufnahme stumm schalten oder aktivieren, um die Ansammlung von Audiodaten zu verhindern, ohne den Aufnahmeprozess zu unterbrechen.

Toggle Mute nodes

Leistungsoptimierung

Dies ist nützlich, wenn Sie häufig zwischen Aufnahmen wechseln, da das Starten der Aufnahme über StartCapture zu leichten Rucklern auf der Engine-Seite führen kann. Sie sollten zunächst die Aufnahme selbst starten und erst dann stummschalten oder die Stummschaltung aufheben.

Wenn Ihr Ziel darin besteht, ein leichtes Einfrieren zu vermeiden, könnten Sie in Betracht ziehen, die Aufnahme während einer Zeit zu starten, in der dieses Einfrieren vernachlässigbar sein könnte. Beispielsweise könnten Sie die Aufnahme während des Ladebildschirms Ihres Spiels starten, die aufnehmbare Schallwelle direkt danach stummschalten und dann die Stummschaltung der aufnehmbaren Schallwelle aufheben, wenn Sie benötigt wird, um Audiodaten ohne Ruckler aufzunehmen.

Vollständiges Beispiel

Hier ist ein vollständiges Implementierungsbeispiel für die Verwendung einer aufnehmbaren Schallwelle:

Ein Beispiel für die Verwendung einer aufnehmbaren Schallwelle