Skip to content
madphaseBack to website ↗
Contact support ↗

Sonification

Treat image bytes as audio, process them with audio effects, then map the result back into pixels.

Add Sonification

Open an image or build the source composition first. Put this effect after the content it should process in stack processing order. Choose Glitch → Sonification in the effects picker, or search for Sonification with Cmd/Ctrl + F. Select the new layer in Layers to open its Effect Panel.

Choose the processing

Choose Processing for the audio-style operation applied to the image bytes. Set Scan Direction for how the image is read, and Ignore Alpha when transparency should be excluded.

Tune the selected processor

Open its matching controls, such as Echo delay and decay or Flanger depth and speed. Make small changes and inspect the image; the controls affect pixel structure, not an audible soundtrack.

Vary the result

Change Phase for a different position through the signal treatment. Animate supported controls in Video or Live and compare the result with the layer eye.

Sonification: source left and current native result right
Source left; Sonification result right. Example settings. Source: SHIBUN RYO (Unsplash).

Compare and finish

Toggle the layer eye to compare with the incoming composition. Use the Effect Panel footer for opacity and blend mode, or add a mask to limit the affected area. In Video or Live, use the function menu on a supported control to add keyframes or a driver.

Control reference

Show individual controls
ControlWhat it doesValues and animation
Scan Directionaxis pixels are read along — artefacts align with this0° to 360°
Default: 0°
Continuous keyframes
Ignore Alphaleave alpha untouched, process only RGBOn / Off
Default: On
Discrete keyframes
Phasegently moves the sonification artifacts along the scan track; keyframe 0 to 1 for a loop0 to 1
Default: 0
Continuous, overflow allowed
ProcessingInterleaved scans RGB bytes as one sequence. Per channel processes each colour channel separately.Interleaved / Per channel
Default: Interleaved
Not keyframeable
Echo / DecayStrength retained by repeated or feedback pixel-stream samples.0.01 to 1
Default: 0.3
Continuous keyframes
Echo / Delayecho gap or comb-filter offset0 to 100 % (typed input: 0 to 400); 0 to 500 px (typed input: 0 to 8000); 0 to 5000 ms (typed input: 0 to 60000)
Default: 6 %
Continuous keyframes
Echo / Input GainInput level applied to the scanned pixel stream before processing.0 to 1
Default: 0.8
Continuous keyframes
Echo / Output GainOutput level applied after the pixel-stream transform.0 to 1
Default: 0.9
Continuous keyframes
Echo / Speedmodulation cycle length — %/px scales with the canvas; Hz keeps legacy audio timing0.1 to 100 % (typed input: 0.1 to 400); 1 to 500 px (typed input: 1 to 8000); 0.1 to 20000 Hz (typed input: 0.1 to 20000)
Default: 20 %
Continuous keyframes
Bass Boost / Gainboost (positive) or cut (negative) the targeted frequencies-20dB to 20dB
Default: 5dB
Continuous keyframes
Treble Boost / Gainboost (positive) or cut (negative) the targeted frequencies-20dB to 20dB
Default: 5dB
Continuous keyframes
Phaser / DecayStrength retained by repeated or feedback pixel-stream samples.0 to 0.99
Default: 0.4
Continuous keyframes
Phaser / Delayecho gap or comb-filter offset0 to 100 % (typed input: 0 to 400); 0 to 500 px (typed input: 0 to 8000); 0 to 5000 ms (typed input: 0 to 60000)
Default: 1.5 %
Continuous keyframes
Phaser / Input GainInput level applied to the scanned pixel stream before processing.0 to 1
Default: 0.8
Continuous keyframes
Phaser / Output GainOutput level applied after the pixel-stream transform.0 to 1
Default: 0.7
Continuous keyframes
Flanger / Delayecho gap or comb-filter offset0 to 100 % (typed input: 0 to 400); 0 to 500 px (typed input: 0 to 8000); 0 to 5000 ms (typed input: 0 to 60000)
Default: 0 %
Continuous keyframes
Flanger / DepthDepth of the delay modulation applied to the pixel stream.0 to 100 % (typed input: 0 to 400); 0 to 500 px (typed input: 0 to 8000); 0 to 5000 ms (typed input: 0 to 60000)
Default: 3 %
Continuous keyframes
Flanger / Regenerationfeedback — higher intensifies the sweep0 to 1
Default: 0.5
Continuous keyframes
Flanger / Shapemodulator waveform — Sine is smooth, Triangle linearSine / Triangle
Default: Sine
Discrete keyframes
Flanger / Speedmodulation cycle length — %/px scales with the canvas; Hz keeps legacy audio timing0.1 to 100 % (typed input: 0.1 to 400); 1 to 500 px (typed input: 1 to 8000); 0.1 to 20000 Hz (typed input: 0.1 to 20000)
Default: 20 %
Continuous keyframes
Flanger / Widthhigher = more chromatic banding across channels0% to 100%
Default: 71%
Continuous keyframes
Chorus / DecayStrength retained by repeated or feedback pixel-stream samples.0 to 1
Default: 0.4
Continuous keyframes
Chorus / Delayecho gap or comb-filter offset0 to 100 % (typed input: 0 to 400); 0 to 500 px (typed input: 0 to 8000); 0 to 5000 ms (typed input: 0 to 60000)
Default: 8 %
Continuous keyframes
Chorus / DepthDepth of the delay modulation applied to the pixel stream.0 to 100 % (typed input: 0 to 400); 0 to 500 px (typed input: 0 to 8000); 0 to 5000 ms (typed input: 0 to 60000)
Default: 3 %
Continuous keyframes
Chorus / Input GainInput level applied to the scanned pixel stream before processing.0 to 1
Default: 0.7
Continuous keyframes
Chorus / Output GainOutput level applied after the pixel-stream transform.0 to 1
Default: 0.9
Continuous keyframes
Vibrato / DepthDepth of the delay modulation applied to the pixel stream.0 to 100 % (typed input: 0 to 400); 0 to 500 px (typed input: 0 to 8000); 0 to 5000 ms (typed input: 0 to 60000)
Default: 1 %
Continuous keyframes
Vibrato / Cyclemodulation cycle length — %/px scales with the canvas; Hz keeps legacy audio timing0.1 to 100 % (typed input: 0.1 to 400); 1 to 500 px (typed input: 1 to 8000); 0.1 to 20000 Hz (typed input: 0.1 to 20000)
Default: 20 %
Continuous keyframes
Tremolo / DepthDepth of the periodic pixel-value amplitude modulation.0 to 1
Default: 0.5
Continuous keyframes
Tremolo / Cyclemodulation cycle length — %/px scales with the canvas; Hz keeps legacy audio timing0.1 to 100 % (typed input: 0.1 to 400); 1 to 500 px (typed input: 1 to 8000); 0.1 to 20000 Hz (typed input: 0.1 to 20000)
Default: 20 %
Continuous keyframes
Distortion / Amounthigher = harsher banding and clipping0 to 1
Default: 0.5
Continuous keyframes
Distortion / Input Leveldrive into the distortion0 to 10
Default: 1
Continuous keyframes
Distortion / Output Leveloutput level — compensates for heavy drive0 to 10
Default: 1
Continuous keyframes
Bit Crusher / BitsBit depth retained in each quantized pixel-stream sample; fewer bits create coarser banding.1 to 16
Default: 8
Continuous keyframes
Bit Crusher / Input Leveldrive into the distortion0.1 to 4
Default: 1
Continuous keyframes
Bit Crusher / Output Leveloutput level — compensates for heavy drive0.1 to 4
Default: 1
Continuous keyframes
Time Stretch / Tempobelow 1 stretches, above 1 compresses and repeats0.5x to 2x
Default: 0.5x
Continuous keyframes
Compressor / Attackshort clamps edges, long lets them through0.001s to 1s
Default: 0.2s
Continuous keyframes
Compressor / DecayStrength retained by repeated or feedback pixel-stream samples.0.001s to 1s
Default: 0.8s
Continuous keyframes
Compressor / Makeup Gainoutput boost to compensate for compression0dB to 20dB
Default: 8dB
Continuous keyframes
Compressor / Ratio1 = no compression, 20 = hard limiting1 to 20
Default: 20
Continuous keyframes
Compressor / Soft Kneehow gradually compression engages near the threshold0.01 to 1
Default: 0.01
Continuous keyframes
Compressor / Thresholdlevel above which compression engages-60dB to 0dB
Default: -20dB
Continuous keyframes
High-pass Filter / Cutoff Scalecutoff scale — %/px follows canvas size; Hz keeps legacy audio timing0.1 to 100 % (typed input: 0.1 to 400); 1 to 500 px (typed input: 1 to 8000); 0.1 to 20000 Hz (typed input: 0.1 to 20000)
Default: 1 %
Continuous keyframes
Low-pass Filter / Cutoff Scalecutoff scale — %/px follows canvas size; Hz keeps legacy audio timing0.1 to 100 % (typed input: 0.1 to 400); 1 to 500 px (typed input: 1 to 8000); 0.1 to 20000 Hz (typed input: 0.1 to 20000)
Default: 0.1 %
Continuous keyframes

Related