Skip to content

Blend Dry and Wet

Send the track to the effect bus, and send it to its own output with the complementary amount. A send to the track’s own output sets the level of the dry signal instead of adding a copy.

use "std/instruments" { Sampler, Kit };
use "std/effects" { Reverb };
let wet_bus = AudioTrack("wet");
wet_bus.set_effects(#[Reverb("reverb", 0.9, 0.2)]);
let drums = AudioTrack("drums");
drums.set_instrument(Sampler(Kit("CR-78")));
drums << [bd sd bd sd];
drums.set_send(wet_bus, 0.7); // 70% through the reverb
drums.set_send(master, 0.3); // 30% dry
PLAY;

For a constant-power crossfade, use amount.sqrt() for one side and (1.0 - amount).sqrt() for the other.

To hear only the effect, route the track to nowhere — Live’s Sends Only. The track leaves the mix and its sends keep feeding their buses:

drums >> nowhere;
drums.set_send(wet_bus, 1.0); // all of it through the reverb

drums >> master; puts the dry signal back, at 100%.