Control Dinámico
Cómo encadenar ganancia con ajustes consecutivos para control dinámico
Este ejemplo muestra cómo encadenar múltiples etapas de ganancia, aplicando ajustes al nivel de una señal de audio. Cada nodo Gain modifica la amplitud del flujo antes de enviarlo al siguiente, lo que permite construir sistemas de control dinámico o automatización de volumen.
// 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/source.mp3")
let source = MediaRenderer(contentsOf: url)
// Configurar etapas de ganacia para aplicar la fuente
let gainStage1 = Gain(defaultGain: 1.0)
let gainStage2 = Gain(defaultGain: 0.5)
// Configurar la conexión de los nodos
try context.connect(source: source, to: gainStage1)
try context.connect(source: gainStage1, to: gainStage2)
try context.connect(source: gainStage2, 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.
Última actualización