Distortion

Saturation with bias and gain to model nonlinear transformations

This example demonstrates how to apply a distortion effect to an audio source, altering its timbre through saturation and harmonic enhancement. The Distortion node is configured with bias, saturation, and drive parameters that define the intensity of the effect.

// 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 distortion effect with standard oversample
let destination = Distortion(oversample: .standard)
destination.bias = 0.01
destination.saturation = 0.5
destination.drive = 1.0

// 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