Automatización de ganancia

Como automatizar parámetros y rampas suaves para crear transiciones

Este ejemplo muestra cómo programar cambios automáticos en la ganancia de una señal de audio. Se reproduce un archivo y se aplican rampas lineales y exponenciales al nivel de volumen a lo largo del tiempo. Este flujo es útil para crear transiciones suaves o automatizaciones.

// Configurar el grafo para renderizado
let context = Assembler(rendering: .live).createAudioGraph()

// Configurar una fuente de audio (Renderer) a partir de un archivo local
let url = URL(fileURLWithPath: "/path/to/audio.wav")
let source = FileRenderer(contentsOf: url)

// Configurar la automatización de ganancia en tiempo real
source.$gain.linearRampValue(to: 0.1, at: 2)
source.$gain.setValue(to: 1.0, at: 3)
source.$gain.exponentialRampValue(to: 0.1, at: 5)
source.$gain.setValue(to: 1.0, at: 7)

// Configurar la conexión de los nodos
try context.connect(source: source, to: context.destination)
source.play(after: 0)

El siguiente video muestra el código de ejemplo en acción y su procesamiento en tiempo real.

Para obtener una descripción completa de cada clase, método y propiedad mencionada en esta sección, consultá la documentación oficial de la API, donde encontrarás referencias detalladas, parámetros disponibles y ejemplos adicionales de uso.

Última actualización