Separación/Intercambio

Cómo separar canales estéreo o recombinar señales mono

Este ejemplo muestra cómo separar y reorganizar canales de audio, utilizando los nodos ChannelSeparator y ChannelMerger para dividir una señal estéreo y recombinar sus canales. Esta técnica es útil para procesamiento independiente de canales.

// 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 un mezclador y separador estéreo
let separator = ChannelSeparator(numberOfOutputs: 2)
let merger = ChannelMerger(numberOfInputs: 2)

// Configurar la conexión de los nodos
try context.connect(source: source, to: separator)
try context.connect(source: separator, to: merger, with: .init(source: 0, destination: 1))
try context.connect(source: separator, to: merger, with: .init(source: 1, destination: 0))
try context.connect(source: merger, 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