QtBreeder is a program for generating strange and unexpected sounds through genetic recombination of additive synthesis programs. I find it most useful when I approach it with no particular sound in mind to create. It is a little complicated to explain, but extremely simple to use. It does, however, help to have a little understanding of what it does internally, so I'll attempt to explain...
I've always had an interest in additive synthesis; theoretically it allows you to synthesise any sound imaginable. Unfortunately there is a big problem - there are too many parameters to an additive patch, and none of them makes much audible difference. In practice you have to change hundreds of parameters to make a drastic timbral change, and programming an additive synth feels more like programming a computer than grooving to the music.
QtBreeder is an attempt to get something useful out of additive techniques without the pain. Internally it uses programs that describe additive synthesis sounds. These programs are tree stuctures, where the tree nodes consist of operations like 'add a harmonic', 'add a vibrato to a harmonic' or more complex things like 'scale the amplitudes of all harmonic operations below me in the tree by this envelope'. Don't be put off at this point - you don't ever need to actually handle these things!
QtBreeder has eight programs slots which are initially empty. If you click the 'new sound' icon beside one of the slots, it will generate a new random program and disply its harmonic information. To hear the sound, click the 'play' icon beside it.
If you find a sound you like, you can write it out as a set of samples by clicking the 'write to disk' icon beside the slot. It is more likely at first, however, that you won't like it, in which case, keep generating new sounds until you find one that you like a bit - it doesn't have to be perfect, just that it has something that you like about it.
Here's where the interesting bit starts: if you have found a sound that you quite like, toggle the radio button beside the slot. This tells the program that this sound is one from which you wish to breed a new generation of sounds. You can select more than on slot to breed from from. Then click the 'Breed' button: the contents of all of the slots are wiped and replaced with a new generation of sounds which have been created by sexual crossover of the tree-structured programs that were marked as being liked. The practical result is that new generation will have something of the original sounds about them, but will be subtly different. Keep repeating the 'selecting the best sounds and breeding' cycle until you find a sound that you really like and then write it out to disk as a sample set.
As an aside, if you really want to see what the programs look like, click on the harmonic display itself to see the internal tree structures.
Here is a description of the rest of the controls. Unless otherwise stated, they do not affect the programs directly, but only affect the playback of the programs.
Slice Count determines the number of 'harmonic snapshots' over the length of the sound. Low slice counts mean that there are fewer (slower) harmonic changes over the sound, and high slice counts allow for more change. It's very easy to hear what this does, especially at extremely low slice count values.
Playback Length is the time taken to play the sound - because we are working in the fourier domain rather than in the time domain (like samplers), we have completed independence of time and pitch; you can make the sound longer with making it lower.
Crossovers per Generation affects the degree to which sounds mingle when a new generation is bred. You can set this to high values when you want the next generation to be fairly different from the current one, or to low values when you're narrowing in on a sound you really like. This only affects the breeding of new sounds, not playback.
Playback Note determines the pitch at which the sound is played back when you audition it.
Next come two multi-point envelopes. You can drag the envelope breakpoints around, create new points by left-clicking or delete existing points by right clicking. The top envelope runs right to left and is a traditional amplitude envelope control. The bottom evenlope runs top to bottom and sweeps through the harmonics. (It runs bottom-to-top so that the horizontal axis matches up with the harmonic displays below so that you can see which point in the sound your envelope refers). The harmonic envelope can be very useful for percussive sounds where most of the harmonic variation occurs in the transient - you can approximate this effect by setting making the envelope sweep through most of the harmonics in the first fraction of playback time.
The Reset Lookups button returns both envelopes to their default setting.
The drop-down list selects the operator set used in the creation of new programs. There are two values, Default and Fixed Pitch. Default is better for sound effects and Fixed Pitch is better for creating notes. Be aware that this only affects the creation of new random programs - it does not affect breeding.
Email me if you have problems: