sig~

Interface for a flanger

This patch shows an appropriate interface for a flanger, including dials to control delay time, flanging rate, flanging depth, and control over the mix between the dry (unaltered) and wet (altered) signal. Control over the dry/wet mix is a good thing to include in most audio effects.

Abstraction for S-curve crossfading

A good way to mix two sounds is to give one sound a gain between 0 and 1 and give the other sound a gain that's equal to 1 minus that amount. Thus, the sum of the two gain factors will always be 1, so the sum of the sounds will not clip. When sound A has a gain of 1, sound B will have a gain of 0, and vice versa. As one gain goes from 0 to 1, the gain of the other sound will go from 1 to 0, so you can use this method to create a smooth crossfade between two sounds.

A/B audio crossfade

This patch shows how to crossfade between two sounds. Initially, two different sound files are loaded into two different sfplay~ objects. When you click the toggle marked "start/stop", both sound files will play, but you'll only hear the one on the left because its amplitude is being multiplied by a constant signal value of 1 from the sig~ 1 object, while the one on the right is being multiplied by a signal value of 0 from the line~ object.

Using A Loop to Set Master Tempo

The groove~ object can be used to record a loop on the fly and use the loop length to set a master tempo which can send MIDI clock messages to other machines. The groove~ object sends out its right outlet a signal that goes from 0. to 1. as the current playback location of groove~ goes from its ‘loopstart’ point to its ‘loopend’ point. By default, groove~’s ‘loopstart’ point is 0 and its ‘loopend’ point is the end of the associated buffer~.