Audio abspielen
Grundlegende Wiedergabe
Um eine importierte Soundwelle abzuspielen, verwenden Sie dieselben Funktionen wie für eine reguläre. Beispielsweise können Sie die PlaySound2D
-Funktion oder die Play
-Funktion von einer Audio-Komponente wie einem Sound Cue nutzen.
Wiedergabe steuern
Wiedergabezeit zurückspulen
Um die Wiedergabezeit der Soundwelle zurückzuspulen, verwenden Sie die Funktion RewindPlaybackTime
.
- Blueprint
- C++
// Assuming ImportedSoundWave is a UE reference to a UImportedSoundWave object
// Rewind playback time of the sound wave for 12.5 seconds
ImportedSoundWave->RewindPlaybackTime(12.5f);
In UE-Versionen bis einschließlich 4.27 müssen Sie möglicherweise die Funktion RewindPlaybackTime
verwenden, wenn Sie die Wiedergabe zu einer bestimmten Zeit größer als 0 starten möchten. Andernfalls kann es aufgrund interner Engine-Probleme bei der Handhabung prozeduraler Wellenformen zu fehlerhafter Wiedergabe kommen. Dieses Problem wurde seit Engine-Version 5.0 behoben.
Abrufen von Wiedergabeinformationen
Um die aktuelle Abspielzeit der Soundwelle zu erhalten, verwenden Sie die Funktionen GetPlaybackTime
oder GetPlaybackPercentage
. Die Dauer der Soundwelle können Sie mit der Funktion GetDuration
abrufen.
- Blueprint
- C++
// Assuming ImportedSoundWave is a UE reference to a UImportedSoundWave object
// Get the current playback time of the sound wave
float PlaybackTime = ImportedSoundWave->GetPlaybackTime();
// Get the current playback percentage of the sound wave
float PlaybackPercentage = ImportedSoundWave->GetPlaybackPercentage();
// Get the duration of the sound wave
float Duration = ImportedSoundWave->GetDuration();
Wiedergabestatus überprüfen
Wird aktuell abgespielt
Um festzustellen, ob die Soundwelle aktuell abgespielt wird, können Sie die Funktion IsPlaying
verwenden.
- Blueprint
- C++
// Assuming ImportedSoundWave is a UE reference to a UImportedSoundWave object
// Check if the sound wave is currently playing
bool bIsPlaying = ImportedSoundWave->IsPlaying();
Ist die Wiedergabe beendet
Um zu überprüfen, ob die Soundwelle das Abspielen beendet hat, können Sie die Funktion IsPlaybackFinished
verwenden.
- Blueprint
- C++
// Assuming ImportedSoundWave is a UE reference to a UImportedSoundWave object
// Check if the sound wave has finished playback
bool bIsFinished = ImportedSoundWave->IsPlaybackFinished();
Wiedergabe stoppen
Sie können die Soundwellen-Wiedergabe mit der Funktion StopPlayback
beenden.
- Blueprint
- C++
// Assuming ImportedSoundWave is a UE reference to a UImportedSoundWave object
// Stop the playback of the sound wave
ImportedSoundWave->StopPlayback();
Es wird empfohlen, die Wiedergabe der Schallwelle mit externen Mitteln zu stoppen (z.B. durch Aufruf von Stop auf der Audio-Komponente) und diese Funktion nur zu verwenden, wenn keine externen Mittel verfügbar sind. Beachten Sie außerdem, dass diese Funktion nicht für die Wiedergabe von MetaSounds funktioniert.