Właściwości Fali Dźwiękowej
Dostęp do Danych Audio
Pobieranie Bufora PCM
Możesz pobrać cały bufor PCM bezpośrednio z fali dźwiękowej.
- Blueprint
- C++

// Assuming ImportedSoundWave is a UE reference to a UImportedSoundWave object
TArray<float> PCMBuffer = ImportedSoundWave->GetPCMBufferCopy();
Jeśli potrzebujesz przekonwertować uzyskane dane PCM na bajty, zobacz Float Array to Bytes.
Właściwości Odtwarzania
Zapętlanie
Aby stworzyć płynną pętlę audio, możesz ustawić zapętlanie, aby automatycznie przewinąć czas odtwarzania fali dźwiękowej do zera i odtworzyć po zakończeniu odtwarzania.
- Blueprint
- C++

// Assuming ImportedSoundWave is a UE reference to a UImportedSoundWave object
ImportedSoundWave->SetLooping(false);
Kontrola Głośności
Możesz dostosować głośność odtwarzanego dźwięku do swoich potrzeb.
- Blueprint
- C++

// Assuming ImportedSoundWave is a UE reference to a UImportedSoundWave object
ImportedSoundWave->SetVolume(1.0f);
Dostosowanie Tonacji
Możesz modyfikować tonację odtwarzanego dźwięku według własnych preferencji.
- Blueprint
- C++

// Assuming ImportedSoundWave is a UE reference to a UImportedSoundWave object
ImportedSoundWave->SetPitch(1.0f);
Dodatkowe Funkcje
Napisy
Możesz ustawiać napisy, czyli definiować tekst oraz czas, w którym powinny być wyświetlane.
- Blueprint
- C++

// Assuming ImportedSoundWave is a UE reference to a UImportedSoundWave object
TArray<FEditableSubtitleCue> Subtitles;
FEditableSubtitleCue Subtitle;
Subtitle.Text = FText::FromString("Example");
Subtitle.Time = 2.0f;
Subtitles.Add(Subtitle);
ImportedSoundWave->SetSubtitles(Subtitles);
Tryb Wirtualizacji
Możesz ustawić tryb wirtualizacji, taki jak Odtwarzaj Gdy Cisza, który pozwala fali dźwiękowej kontynuować odtwarzanie nawet podczas ciszy.
- Blueprint
- C++

// Assuming ImportedSoundWave is a UE reference to a UImportedSoundWave object
ImportedSoundWave->SetVirtualizationMode(EVirtualizationMode::PlayWhenSilent);
Jest to szczególnie przydatne, jeśli używasz tłumienia dźwięku do kontrolowania, jak audio zanika wraz z odległością.
Ambisonics
Możesz oznaczyć falę dźwiękową jako źródło Ambisonics do przestrzennego kodowania audio 3D. Silnik audio obsługuje tylko Ambisonics pierwszego rzędu (FOA), co wymaga dokładnie 4 kanałów.
- Blueprint
- C++

// Assuming ImportedSoundWave is a UE reference to a UImportedSoundWave object
ImportedSoundWave->SetIsAmbisonics(true);
Modyfikacje Formatów Audio
Ręczne Próbkowanie Ponowne i Mieszanie Kanałów
Jeśli potrzebujesz zmienić częstotliwość próbkowania lub liczbę kanałów w zaimportowanej fali dźwiękowej, możesz użyć odpowiednich funkcji do ponownego próbkowania i mieszania danych audio.
- Blueprint
- C++

// Assuming ImportedSoundWave is a UE reference to a UImportedSoundWave object
ImportedSoundWave->ResampleSoundWave(44100);
ImportedSoundWave->MixSoundWaveChannels(2);
Spowoduje to modyfikację całych danych fali dźwiękowej i wpłynie odpowiednio na dane wyjściowe z delegatów OnGeneratePCMData i OnPopulateAudioData.
Automatyczna Konwersja Formatów
Możesz automatycznie próbkować ponownie i miksować wszystkie nadchodzące dane audio, które mają zostać wypełnione, do określonej żądanej częstotliwości próbkowania i liczby kanałów.
- Blueprint
- C++

// Assuming ImportedSoundWave is a UE reference to a UImportedSoundWave object
ImportedSoundWave->SetInitialDesiredSampleRate(44100);
ImportedSoundWave->SetInitialDesiredNumOfChannels(2);
Wpłynie to również odpowiednio na dane wyjściowe z delegatów OnGeneratePCMData i OnPopulateAudioData.