click~

Test Interaural Time Difference

When a sound is to one side or the other of us, it arrives at one ear ever-so-slightly before the other. This phenomenon is known as interaural time difference (ITD).

Test interaural intensity difference

One of the ways we determine where a sound is located is by comparing the sound's intensity in our two ears. A sound that is located to one side of us goes more directly into the ear that's on that side, whereas the sound has to diffract around our head to get to the other ear, so the intensity is usually greater on the side where the sound is located. That distinction is known as interaural intensity difference (IID).

Short delay creates a timbre change

A single sample value of 1 (surrounded on either side by sample values of 0) is the shortest possible sound that can be represented in a digital audio signal. Electrical engineers call this signal an impulse. It theoretically contains every frequency up to the Nyquist frequency (one-half the sample rate), so itâ€™s useful for testing filters and for determining the mathematical formulae to describe different sorts of filtering effects.

Simple delay of audio signal

The delay~ object creates a "ring buffer" into which it constantly records the signal coming in its left inlet. The first typed-in argument specifies the size of the buffer, in samples. The second argument (or a number in the right inlet) specifies how many samples in the past delay~ should look for the signal it will send out its outlet.

Rhythmic delays in time with a musical tempo

The tempo-relative timing capabilities in Max can be used to synchronize MSP processing in time with a musical beat. In this example, timings of delays are specified in tempo-relative time units so that they remain rhythmically correct for any tempo.

Trigger repeated actions metronomically

The metro (metronome) object is the most obvious way to trigger repeated events in Max. Repetition is, of course, a key component of most music (and most time-based art in general), and the metro object encapsulates the whole low-level process of a) cause something to happen, b) schedule the same thing to happen at some future time and repeat the process. The only thing it needs to "know" is what time interval to use for its repetitions.