Zum Hauptinhalt springen

Pixel Streaming Audio Capture

Pixel Streaming ist ein Plugin für Unreal Engine, das gerenderte Frames streamt und Ein-/Ausgaben über WebRTC synchronisiert. Die Anwendung läuft auf der Serverseite, während die Clientseite das Rendering und die Benutzerinteraktion übernimmt. Weitere Details zu Pixel Streaming und dessen Einrichtung finden Sie in der Pixel Streaming Dokumentation.

Pixel Streaming vs Pixel Streaming 2

Dieses Plugin unterstützt beide in Unreal Engine verfügbaren Pixel Streaming-Versionen:

  • Pixel Streaming - Das ursprüngliche Plugin, verfügbar seit UE 5.2 und wird in aktuellen Engine-Versionen noch aktiv genutzt
  • Pixel Streaming 2 - Eingeführt in UE 5.5 als eine Implementierung der nächsten Generation mit einer verbesserten internen Architektur. Erfahren Sie mehr über Pixel Streaming 2

Beide Versionen werden vollständig unterstützt und sind in den neuesten Unreal Engine-Versionen verfügbar. Wählen Sie die Version, die dem Pixel Streaming-Setup Ihres Projekts entspricht.

info

Die API für beide Versionen ist identisch, mit dem einzigen Unterschied, dass Pixel Streaming 2-Klassen und -Funktionen eine "2" in ihren Namen enthalten (z.B. UPixelStreamingCapturableSoundWave vs UPixelStreaming2CapturableSoundWave).

Kompatibilität

Diese Lösung funktioniert mit:

Die Implementierung wurde in diesen Umgebungen getestet und funktioniert unabhängig von der verwendeten Pixel Streaming-Hosting-Lösung korrekt.

Erweiterungs-Plugin-Installation

Diese Funktion wird als Erweiterung zum Runtime Audio Importer Plugin bereitgestellt. Um sie zu nutzen, müssen Sie:

  1. Sicherstellen, dass das Runtime Audio Importer Plugin bereits in Ihrem Projekt installiert ist
  2. Das Erweiterungs-Plugin für Ihre Pixel Streaming-Version herunterladen:
  3. Den Ordner aus dem heruntergeladenen Archiv in den Plugins-Ordner Ihres Projekts extrahieren (diesen Ordner erstellen, falls er nicht existiert)
  4. Ihr Projekt neu kompilieren (diese Erweiterung erfordert ein C++-Projekt)
important
  • Diese Erweiterungen werden als Quellcode bereitgestellt und erfordern ein C++-Projekt zur Nutzung
  • Pixel Streaming-Erweiterung: Unterstützt in UE 5.2 und später
  • Pixel Streaming 2-Erweiterung: Unterstützt in UE 5.5 und später
  • Weitere Informationen zum manuellen Kompilieren von Plugins finden Sie im Building Plugins Tutorial

Überblick

Die Pixel Streaming Capturable Sound Wave erweitert die standardmäßige Capturable Sound Wave, um die direkte Aufnahme von Audio von den Mikrofonen der Pixel Streaming-Clients zu ermöglichen. Diese Funktion ermöglicht es Ihnen:

  • Audio von Browsern, die über Pixel Streaming verbunden sind, aufzunehmen
  • Audio von bestimmten Spielern/Peers zu verarbeiten
  • Sprachchat, Sprachbefehle oder Audioaufnahmen von entfernten Benutzern zu implementieren

Grundlegende Verwendung

Erstellen einer Pixel Streaming Capturable Sound Wave

Zuerst müssen Sie ein Pixel Streaming Capturable Sound Wave-Objekt erstellen:

Create Pixel Streaming Capturable Sound Wave node

warnung

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

Aufnahme starten und stoppen

Sie können die Audioaufnahme mit einfachen Funktionsaufrufen starten und stoppen:

Start and Stop Capture nodes

hinweis

Der DeviceId-Parameter in StartCapture wird für Pixel Streaming Capturable Sound Waves ignoriert, da die Aufnahmequelle automatisch oder durch die von Ihnen festgelegten Player-Informationen bestimmt wird.

Überprüfen des Aufnahmestatus

Sie können überprüfen, ob die Sound Wave derzeit Audio aufnimmt:

Is Capturing node

Vollständiges Beispiel

Hier ist ein vollständiges Beispiel für die Einrichtung der Pixel Streaming Audio-Aufnahme:

Complete Pixel Streaming Capture Example

Arbeiten mit mehreren Pixel Streaming Playern

In Szenarien, in denen mehrere Pixel Streaming-Clients gleichzeitig verbunden sind, müssen Sie möglicherweise Audio von bestimmten Playern erfassen. Die folgenden Funktionen helfen Ihnen bei der Verwaltung.

Verfügbare Pixel Streaming Player abrufen

Um zu identifizieren, welche Pixel Streaming-Player verbunden sind:

Get Available Pixel Streaming Players node

Festlegen des Players für die Aufnahme

Wenn Sie von einem bestimmten Player aufnehmen müssen:

Set Player To Capture From node

info

Wenn Sie die Player-ID leer lassen, lauscht die Schallwelle automatisch auf den ersten verfügbaren Spieler, der sich verbindet. Dies ist das Standardverhalten und funktioniert gut für Einzelspieler-Szenarien.

Häufige Anwendungsfälle

Implementierung von Sprachchat

Sie können Pixel Streaming Capturable Sound Waves verwenden, um Sprachchat zwischen entfernten Benutzern und lokalen Spielern zu implementieren:

  1. Erstellen Sie eine Pixel Streaming Capturable Sound Wave für jeden verbundenen Spieler
  2. Richten Sie ein System ein, um zu verwalten, welche Spieler gerade sprechen
  3. Verwenden Sie das Voice Activity Detection-System, um zu erkennen, wann Benutzer sprechen
  4. Räumlichen Sie das Audio bei Bedarf mit dem Audiosystem der Unreal Engine aus

Sprachbefehle mit Spracherkennung

Sie können die Erkennung von Sprachbefehlen für entfernte Benutzer implementieren, indem Sie diese Funktion mit dem Runtime Speech Recognizer-Plugin kombinieren:

  1. Erfassen Sie Audio von Pixel Streaming-Clients mit Pixel Streaming Capturable Sound Wave
  2. Führen Sie das erfasste Audio direkt an den Runtime Speech Recognizer
  3. Verarbeiten Sie den erkannten Text in Ihrer Spiellogik

Ersetzen Sie einfach die standardmäßige Capturable Sound Wave durch eine Pixel Streaming Capturable Sound Wave (oder Pixel Streaming 2 Capturable Sound Wave) in den Beispielen des Runtime Speech Recognizer, und es funktioniert nahtlos mit der Pixel Streaming-Audioeingabe.

Aufzeichnen von Audio entfernte Benutzer

Sie können Audio von entfernten Benutzern für die spätere Wiedergabe aufzeichnen:

  1. Erfassen Sie Audio mit Pixel Streaming Capturable Sound Wave
  2. Exportieren Sie das erfasste Audio in eine Datei mit Export Audio
  3. Speichern Sie die Datei für die spätere Verwendung oder Analyse