Saltar al contenido principal

Importar Audio

Descripción General

El proceso de importar audio en tiempo de ejecución se puede dividir en varios pasos:

  1. Crear un Runtime Audio Importer
  2. Vincularse a los delegados necesarios (OnProgress y OnResult)
  3. Importar audio desde un archivo o búfer
  4. Reproducir la onda de sonido importada obtenida del delegado OnResult (más información aquí)
Nota Importante

Asegúrate de que tanto las instancias de Runtime Audio Importer como de Sound Wave no sean recolectadas prematuramente por el recolector de basura manteniendo una referencia fuerte a ellas. Esto se puede hacer asignándolas a variables separadas usando UPROPERTY(), TStrongObjectPtr, o cualquier otro método que evite que el objeto sea destruido.

Formatos de Audio Soportados

Runtime Audio Importer admite importar los siguientes formatos de audio:

FormatoDescripción
MP3MPEG-1/2/2.5 Audio Layer I/II/III
WAVWaveform Audio File Format
FLACFree Lossless Audio Codec
OGG VORBISContenedor Ogg con audio Vorbis
OGG OPUSContenedor Ogg con audio Opus
BINKBink Audio
RAW (PCM)Datos de audio Pulse-Code Modulation sin comprimir (Int8, UInt8, Int16, UInt16, Int32, UInt32, Float32)
tip

Al importar audio, puedes especificar el formato explícitamente o usar la detección automática de formato basada en la extensión del archivo o su contenido.

Importaciones de Audio en Streaming

Para escenarios de streaming donde los datos de audio se reciben de forma incremental (por ejemplo, desde un servidor, captura en tiempo real o flujos de red), considera usar Streaming Sound Waves.

Este método proporciona una forma continua de agregar datos de audio al mismo búfer de la onda de sonido, lo que lo hace adecuado para transmisiones en vivo o archivos grandes procesados en fragmentos. Consulta la documentación de Streaming Sound Wave para más detalles.

Pasos Básicos de Implementación

1. Crear Runtime Audio Importer

Primero, necesitas crear un objeto Runtime Audio Importer. Debes asegurarte de que sea tratado como una referencia fuerte por el recolector de basura.

Create Runtime Audio Importer node

2. Lier au Délégué OnProgress

Pour suivre la progression de l'importation des données audio, vous pouvez lier au délégué OnProgress (Blueprints) / OnProgressNative (C++).

Un exemple de liaison au délégué On Progress

tip

Esto te permitirá monitorear el progreso y, por ejemplo, implementar una pantalla de carga.

3. Vincular al Delegado OnResult

Para ser notificado cuando el proceso de importación de datos de audio esté completo y para acceder a la referencia de la onda de sonido resultante, debes vincular al delegado OnResult (Blueprints) / OnResultNative (C++).

Un ejemplo de vinculación al delegado On Result

aviso

Asegúrate de que la onda de sonido importada sea tratada como una referencia fuerte por el recolector de basura para evitar una recolección prematura no deseada. Esto se puede hacer colocándola como una variable separada en Blueprints.

4. Démarrer l'import audio

Inicia el proceso de importación de audio llamando a la función relevante, que puede manejar tanto formatos de datos de audio comprimidos como sin comprimir.

Ejemplos de nodos Import Audio

Funciones de Utilidad

Buscar Archivos de Audio

Puedes escanear un directorio en busca de archivos de audio compatibles:

Scan Directory For Audio Files node

Ejemplo Completo

Aquí tienes un ejemplo de implementación completo para importar audio:

Ejemplo completo