Захватываемая звуковая волна
Обзор
Захватываемая звуковая волна (Capturable Sound Wave) наследуется от потоковой звуковой волны. Она поддерживает захват аудиоданных с входных устройств, таких как микрофон, и их воспроизведение с теми же возможностями, что и у импортированной звуковой волны (включая перемотку, использование в SoundCues и т.д.). Вы даже можете одновременно захватывать и воспроизводить аудио без каких-либо ограничений.
Для обнаружения голосовой активности (Voice Activity Detection, VAD) обратитесь к этой странице.
Захватываемая звуковая волна автоматически запрашивает разрешения на использование микрофона на iOS и Android при начале захвата.
Базовое использование
Создание захватываемой звуковой волны
Сначала необходимо создать захватываемую звуковую волну.
- Blueprint
- C++
UCapturableSoundWave* CapturableSoundWave = UCapturableSoundWave::CreateCapturableSoundWave();
Вам следует рассматривать захватываемую звуковую волну как сильную ссылку, чтобы предотвратить преждевременное уничтожение (например, присвоив её отдельной переменной в Blueprints или используя UPROPERTY()
в C++).
Получение доступных входных устройств
Для использования этой функции вам сначала необходимо получить все доступные аудио входные устройства, которые можно использовать для захвата.
- Blueprint
- C++
UCapturableSoundWave::GetAvailableAudioInputDevices(FOnGetAvailableAudioInputDevicesResultNative::CreateWeakLambda(this, [](const TArray<FRuntimeAudioInputDeviceInfo>& AvailableDevices)
{
// Handle the result
}));