20Concepts Lesson 11 - Audio Generation

From Cycling '74 Wiki
Jump to: navigation, search

(Needed: Example Video)

When working with audio, we tend to think of various processes and their "roles" in the audio design process. We talk about the four types of role as:

  1. Generators
  2. Modifiers
  3. Modulators
  4. Effects

Each has a function in the eventual generation of audio, but perhaps the most important part of audio development is the generation of material that the other functions can modify. Max is loaded with different ways of generating audio - for which we provide an overview in this lesson.

(Needed: Fixture Patches with download)

Introduction to MSP Audio

To this point, we've been using Max objects - objects that work with create, process and modify events. Historically, the objects that work with audio are called MSP objects (since they were previously sold as a separate package called MSP), and are easily identified because they all end with a tilde (~) in their object name. Thus, the {maxword|name=cycle} object and the {maxword|name=cycle~} are two different object, with the second representing a audio (MSP) object.

Audio objects also have another feature - they work on a different kind of patch cord. Normal Max objects wait around, doing nothing, until an event is seen at one of their inputs. MSP objects, on the other hand, are fed a constant stream of audio data, and are never at rest while audio is running. Since this is a completely different kind of data, it deserves a different kind of patchcord. MSP objects use a "fuzzy" patchcord that clearly identifies the connection as containing audio data.

Since this data is very different from standard Max event data, you cannot simply connect audio lines to Max objects. One of the things that you will find is that Max will not allow you to connect audio lines to Max objects, but audio objects can often receive Max events to set their state. If you have problems with your patches, make sure that you are sending audio to other audio objects, and you are using ax objects for state-setting only.

Introduction to Audio Frequencies

Tonal sound - ones that have an identifiable note - have a predominant frequency. This frequency is described in Hz, or cycles per second. It is easiest to look at a sine wave, and how the speed of the sine wave determines the frequency that can be measured. If a sound takes one second to go through its entire cycle, it has a frequency of 1 Hz. If it goes through 500 cycles every second, it has a frequency of 500 Hz. Audible sound generally ranges from 20 Hz through 20,000 Hz (also called 20 KHz), and obviously represents a lot of data.

Most of the number manipulation we've done to this point have been linear in nature - they could be represented by a straight line in a graph. Using audio frequencies is different because of the way we perceive tonal sound. Let's start off with just a little bit of music theory, because music is a description of how we perceive tonality.

The most important thing to understand is the concept of the octave. An octave increase in musical tonality is considered to be the same note, but higher in frequency. So, using the first fixture patch, we can hear that an octave jump up sounds like the same tone, but is clearly higher in frequency.

Next is the concept of a note. Western music divides the area between octaves into 12 steps - each one of these is considered a standard note. The notes are identified by letter - A through G, with half-way notes represented by sharps and flats (identified with b and # notation).

When a flat or sharp exists, they are found as black notes on a keyboard; each of these has two names, depending on whether you preference flat or sharp notation.

We won't get into keys or key signature; if you are familiar with a musical instrument, you will already understand those concepts. What we do have to understand, however, is the way that frequency values translate into music (tonal) notes. One thing to note: frequency is a measurable entity, while music pitch is based on cultural norms. But by sticking with standard Western 12-tone music, we at least have a common context with which to discuss tonality.

Explore Audio Frequencies with cycle~

(Needed: text)

Converting Numbers to Frequencies

Note: All about mtof (Needed: text)

Introduction to Audio Timbre

(Needed: text)

Explore Audio Timbre with saw~, rect~ and tri~

(Needed: text)

Switch Timbres using selector~

(Needed: text)

Modulate Generators using other Generators

(Needed: text)

Web Links

(Needed: text and links)


(Needed: text and exercises)

by Darwin Grosse and Cory Metcalf