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.
Última actualización