This document is designed to help you get the most out of MetaMix. It is split into the following sections:
Quick Start
MetaMix is a cross between a musical composition, a digital audio player, an interactive experience, a software tool, and a work of conceptual art. Feed MetaMix your favorite audio track and listen as familiar music is transformed into a new listening experience. MetaMix superimposes new musical structures onto existing music by turning special mathematical integer sequences into new musical forms. These musical forms are used to "remix" the audio track you choose.
I wrote MetaMix to address two of my own difficulties with listening to recorded music:
I have always been attracted to the excitement of a live performance, where a performer's unique interpretation can make me hear even a familiar piece in a new way. When I listen to recorded music at home, I always miss those unexpected surprises that can only happen at a live performance.
I created MetaMix as a means to bring some of that excitement of live performance to recorded music. By algorithmically remixing familiar recordings on the fly, MetaMix makes me hear new connections and relationships and constantly surprises me with what it does.
MetaMix creates music that functions well as foreground or background by using special mathematical sequences to guide its mixing algorithms. Most of these sequences are extremely repetitive and change gradually over long periods of time. With these kinds of musical structures, I find I am able to easily shift between different modes of listening as I wish. I can leave MetaMix's music on while I am doing other things, or I can take time to focus only on the music I am hearing.
You should approach using MetaMix just as you would normally approach listening to a CD or to the radio. Import a track you like into MetaMix, tweak the various settings described in this document, and then just let it run. MetaMix is not a musical game whose controls require constant manipulation. Rather, it is more like a music box: wind it up and then just sit back and enjoy.
This diagram shows how MetaMix begins a new chunk every 4 seconds in the audio track (which is the default setting):

These chunks then have a straightforward mapping onto the numbers of the integer sequence. For example, consider Exponential Slow (the default integer sequence), which begins like this: 0, 1, 1, 2,... The following table shows how MetaMix triggers the correponding chunks from the audio track:
| Number in Integer Sequence | 0 | 1 | 1 | 2 |
| MetaMix triggers chunk number: | 0 | 1 | 1 | 2 |
| Playback starts at: |
0"
|
4" | 4" | 8" |
| Elapsed time: | 0" | 4" | 8" | 16" |
This diagram shows how MetaMix layers chunks together with the default settings (Exponential Slow, two simultaneous layers, new chunk every 4 seconds):

This diagram is a little more complicated than the others, so let's take it apart one piece at a time. Look at the pink curve, which represents a single chunk. The curve shows how it fades in and out over time: the higher the curve, the louder the chunk is played. This chunk takes the integer at position 2 of the Exponential Slow sequence (f(2)). (Integer sequences usually start numbering at 0, so even though this is the third integer MetaMix is fetching from the sequence, its index is 2.) In this case, f(2) = 1, so MetaMix uses chunk 1, which starts 4 seconds into the audio track.
Because two layers are playing at once, MetaMix continues playing this pink-colored chunk for 8 seconds. During the first 4 seconds, it fades in as the red-colored chunk fades out, and during the last 4 seconds it fades out as the green-colored chunk fades in.
User Controls
Source Tab
The controls on the source tab relate directly to the audio track you choose:
Pick Source:
Click this button to pick a new audio track to import into MetaMix.
MetaMix will show you an open file dialog box to choose your audio track. The import process may take a few minutes.
MetaMix supports all audio file formats supported by Quicktime, which include: AIFF, AU, Audio CD (Mac only), AVI, DV, MPEG-1, MP3, MPEG-4 (Quicktime 6 only), MOV, and WAV. MetaMix can also import the audio track from videos in any of these formats.
Start From:
By default, MetaMix starts mixing from the beginning of your audio track. By using this slider, you can tell MetaMix to start from any position within your audio track.
Because many of the integer sequences MetaMix uses are so repetitive, MetaMix often lingers on just a few seconds of music for a very long time. By manipulating this slider, you can quickly jump to another section of music.
MetaMix will never play music from before the start position you choose.
Show Import Audio Settings Dialog (Advanced):
This feature is intended for advanced users who want to customize the tradeoff between CPU usage and sound quality. By default, MetaMix uses CD-quality audio (44.1 kHz, 16-bit, stereo). If you have a slower computer, you may wish to use lower audio fidelity. The lower the sampling rate and/or bit rate, the less the CPU usage and the less the hard disk usage.
When this option is selected, MetaMix presents you with a special dialog box each time you import an audio track, giving you complete control over audio settings.
Note: Always leave the compression level in this dialog set to "None." Otherwise, MetaMix will actually need more CPU power in order to constantly decode the audio file.
Form Tab
The form tab lets you choose which mathematical integer sequence MetaMix uses as a basis for remixing your audio track.
To view more information about a particular integer sequence, simply click its name in the scrolling list. (The currently selected integer sequence has an arrow before its name.)
Some of the information about the integer sequences can get pretty technical. Don't worry if you don't understand it; it's not necessary to understand how the sequences are constructed in order to enjoy using MetaMix.
When you click the "change" button, the integer sequence highlighted in the scrolling list becomes the new basis for remixing your audio track.
Each time you change to a new integer sequence, MetaMix starts from the beginning of that sequence.
Mix Tab
The integer sequence you choose in the form tab is the overarching musical structure MetaMix uses to remix your audio track. The controls on the mix tab set the specifics of how that integer sequence translates into the music MetaMix generates.
New chunk every...:
For a complete description of chunks, see "How it Works" above.
This setting determines how often MetaMix moves to the next integer in the integer sequence and triggers a new chunk to play. In turn, then, this setting also affects how MetaMix parses your audio track into chunks.
Simultaneous Layers:
This is the maximum number of layers which can be playing simultaneously. Each layer of audio fades in and out gradually. For a full description of layers, see "How It Works" above.
The greater the number of layers, the more complex and chaotic the musical texture. Individual chunks lose their own identity and become part of one big texture. Gradual changes over large amounts of time become more audible, but small changes from moment to moment are hidden.
The greater the number of layers, the more CPU time MetaMix needs. On slower computers, MetaMix may not work well in the background with several layers, or audio playback may even become jerky and unreliable. If this happens, simply reduce the number of layers.
Changing the number of layers doesn't change the way MetaMix parses the audio track into chunks, it simply makes each chunk last longer. For instance, if the chunk length is set to 5 seconds and there is only one layer, chunk 1 would start at 0:05 and last for 5 seconds. If there were 2 layers, it would still start at 0:05 but last for 10 seconds. If there were 6 layers, it would start at 0:05 but last 30 seconds.
Reverse Play:
If "integer is negative" is selected, then MetaMix will play a chunk in reverse whenever the number from the integer sequence is a negative number. For instance, -4 in the sequence would trigger chunk 4 to play in reverse. (If this option is not selected, it would simply trigger chunk 4 to play forwards.) This option is only relevant to the integer sequences which include negative numbers.
If "next integer is smaller" is selected, then MetaMix will play a chunk in reverse whenever the next number in the integer sequence is smaller than the current number. For instance, in the sequence "1, 2, 3, 4, 5, 4, 2, 3," the two numbers in bold would play in reverse.
When a chunk plays in reverse, it starts from where it would normally end and ends where it would normally start.
Slower Counter Animation:
When this option is selected, the mix counter on the main controls is updated less frequently, conserving CPU power on slower machines. Only select this option if your audio playback becomes jerky or unreliable.
Main Controls
Source and Form Indicators:
These simply display the current audio file and the currently selected integer sequence.
The form indicator also shows the next chunk to be triggered for playback, like this:
f(n)=x
This simply means that MetaMix is looking at the nth number in the integer sequence, which is x. So MetaMix will trigger chunk x to play next.
Mix Counter:
This unique animated counter provides a visual indication of how MetaMix is mixing the audio track.
All layers currently playing are shown in the counter. New layers start on the left and scroll to the right side of the window. Each layer is represented by its chunk number and its exact location in the audio track (in minutes and seconds). The darker the text, the louder a particular layer. Layers playing in reverse appear in red.
Volume and Mute Controls:
Let you change the overall volume and mute the sound.
Play (
), Stop (
), and Pause (
):
Self-explanatory. But note that when you hit stop, MetaMix rewinds to the first number in the integer sequence. Pause lets you pick up right where you left off.
Rewind (
) and Fast-forward (
):
Each time you press rewind or fast-forward, MetaMix skips backward or forward into the current integer sequence. How far it skips varies with each integer sequence. For self-similar sequences, it usually moves by powers or 2 or 3, depending on the sequence. For others, it usually skips ahead or back 10 numbers at a time.
When you press these buttons, the music will not change immediately, but rather with the next new chunk to play. You will notice, though, that the information about the next chunk (on the form indicator) changes immediately.
Note that these buttons have no effect when the form is set to "Random."
Thanks to Naomi Taylor for her input regarding this feature.
About and Help:
The about window displays credits and license information. The help window displays this document.
Frequently Asked Questions
Why do I have to import an audio file instead of just playing it from my hard drive or CD-ROM drive?
Since MetaMix has to play multiple streams of audio at the same time, it needs to be able to have quick access to uncompressed audio data.
Audio CDs provide uncompressed data easily to MetaMix, but not quickly enough. (Imagine your computer trying to play 6 different parts of a CD at the same time!) Hard disks provide the data quickly enough, but most of the audio files on your hard drive are probably compressed (e.g. MP3s). To decode several of these compression schemes on the fly at the same time would overwhelm most computers.
Thus, MetaMix imports your audio track into a temporary file on your hard drive in a uncompressed format (AIFF). You may have to wait patiently while it imports, but MetaMix's performance is much better and more reliable as a result.
Where does MetaMix store imported audio files?
The imported audio files are stored in a temporary directory specified by your Java Runtime Environment. On Mac OS X, this is usually /tmp. On Windows, it varies, but is usually something like C:\TEMP\ or C:\WINDOWS\TEMP\. The file names always start with the word "MetaMix" and have a "mov" or "aif" extension. They are automatically deleted when you quit MetaMix. If MetaMix crashes or if you force quit it, you should manually delete these files.
Why can't I import directly from CD on
Windows
How can I capture the audio output of MetaMix to a file?
It is not possible to do this from within MetaMix, but there are many third-party utilities which will do the job. On Mac, try Rogue Amoeba Software's excellent Audio Hijack or Ambrosia Software's Detour. On Windows, try Tongsoft's 3D MP3 Sound Recorder.
Why does the counter sometimes show two different chunks whose clocks are identical?
Two layers started at different times and overlap. For instance: Assume the chunk length is 5 seconds and there are 2 simultaneous layers. MetaMix triggers chunk 0 to start, and 5 seconds later it triggers chunk 1. At this moment, chunk 0 has made it up to 0:05 and still has 5 seconds more to play, and chunk 1 is starting at 0:05 and has 10 seconds to play. So for 5 seconds, the two layers will be identical.