Propriedades da onda sonora
Acessando dados de áudio
Recuperando o buffer PCM
Você pode recuperar todo o buffer PCM de uma onda sonora diretamente.
- Blueprint
- C++
// Assuming ImportedSoundWave is a UE reference to a UImportedSoundWave object
TArray<float> PCMBuffer = ImportedSoundWave->GetPCMBufferCopy();
Se precisar converter os dados PCM obtidos para bytes, consulte Float Array to Bytes.
Propriedades de Reprodução
Looping
Para criar um loop de áudio contínuo, você pode configurar o looping para rebobinar automaticamente o tempo de reprodução da onda sonora para zero e tocar novamente após o término da reprodução.
- Blueprint
- C++
// Assuming ImportedSoundWave is a UE reference to a UImportedSoundWave object
ImportedSoundWave->SetLooping(false);
Controle de Volume
Você pode ajustar o volume do som que está sendo reproduzido para atender às suas necessidades.
- Blueprint
- C++
// Assuming ImportedSoundWave is a UE reference to a UImportedSoundWave object
ImportedSoundWave->SetVolume(1.0f);
Ajuste de Tom (Pitch)
Você pode modificar o tom (pitch) do som que está sendo reproduzido de acordo com sua preferência.
- Blueprint
- C++
// Assuming ImportedSoundWave is a UE reference to a UImportedSoundWave object
ImportedSoundWave->SetPitch(1.0f);
Recursos Adicionais
Legendas
Você pode configurar legendas, ou seja, definir o texto e o momento em que elas devem ser exibidas.
- 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);
Modo de Virtualização
Você pode definir o modo de virtualização, como Play When Silent, que permite que a forma de onda de áudio continue a reprodução mesmo durante o silêncio.
- Blueprint
- C++
// Assuming ImportedSoundWave is a UE reference to a UImportedSoundWave object
ImportedSoundWave->SetVirtualizationMode(EVirtualizationMode::PlayWhenSilent);
Isso é particularmente útil se você estiver usando atenuação de som para controlar como o áudio desaparece com a distância.
Modificações de Formato de Áudio
Reamostragem e Mistura de Canais Manual
Se você precisar alterar a taxa de amostragem ou o número de canais no sound wave importado, pode usar as funções apropriadas para reamostrar e misturar os dados de áudio.
- Blueprint
- C++
// Assuming ImportedSoundWave is a UE reference to a UImportedSoundWave object
ImportedSoundWave->ResampleSoundWave(44100);
ImportedSoundWave->MixSoundWaveChannels(2);
Isso modificará todos os dados da onda sonora e afetará a saída dos delegados OnGeneratePCMData
e OnPopulateAudioData
de acordo.
Conversão Automática de Formato
Você pode automaticamente resamplear e mixar todos os próximos dados de áudio a serem preenchidos para a taxa de amostragem e número de canais desejados especificados.
- Blueprint
- C++
// Assuming ImportedSoundWave is a UE reference to a UImportedSoundWave object
ImportedSoundWave->SetInitialDesiredSampleRate(44100);
ImportedSoundWave->SetInitialDesiredNumOfChannels(2);
Isso também afetará a saída dos delegates OnGeneratePCMData
e OnPopulateAudioData
correspondentemente.