Reverb (Convolution)

Convolution-based reverberation configuration to simulate acoustics

This example demonstrates how to apply a reverb effect based on an impulse response (IR), simulating the reverberation of a real acoustic space. The Reverb subgraph uses a previously recorded impulse response to recreate the sound reflections.

// Configure the graph for rendering
let context = Assembler(rendering: .live).createAudioGraph()

// Configure an audio source (Renderer) from a local audio file
let url = URL(fileURLWithPath: "/path/to/audio.mp3")
let source = MediaRenderer(contentsOf: url)

// Configure the impulse response (IR) from a local file
let impulse = URL(fileURLWithPath: "/path/to/reverb_ir.wav")
let reverb = Reverb(contentsOf: impulse, channels: .stereo)
let destination = Graph(from: reverb)

// Configure node connections
try context.connect(source: source, to: destination)
try context.connect(source: destination, to: context.destination)
source.play(after: 0)

The following video shows the sample code in action and its real-time processing.

circle-info

For a complete description of each class, method, and property referenced in this section, refer to the official API documentationarrow-up-right, where you will find detailed references, available components, parameters, and additional usage code examples.

Last updated