How To Use BpmDj:
the automixer
Introduction
BpmDj contains a small submodule, the automixer, which enables
you to 'glue' together a set of songs fully automatically. This can be
useful for online radio stations, or to create
mixes for portable mp3 players. The process
itself works in about 80% of the times and depends on the correct availability
of the tempo information. The mixes are created offline and are created
a bit faster than realtime, so it should be possible to create an XMMS
plugin from this software. If somebidy wants to do this. Please contact
me. The automixer will probably not be further developed because it has
only as sucessrate of 80 % which is good (and also shows why
DJ's are actually usefull :). If this program should become tooo perfect
we might as well kiss our hobbies goodbye :)
License
If you use
this software to automatically create online mixes, please have the decency
to mention the program you used to do so. Also, if you modify the
program and use it online, you MUST release the modified code ge-GPL-ed.
Preliminary Observations
Before we explain how you can use this
feature, we need to point out that good results can only be expected when
the two songs that needs to be mixed have a compatible
rythm. For instance blues does not mix very well with techno
the two songs that needs to be mixed have the same
time signature. For isntance a 3/4 measure cannot be easily mixed with
a 4/4 measure
the two songs have a similar sound spectrum.
If they don't it will be very hard to detect the 'same' bassdrums, or hihats.
The Automixer Dialog
Box
Selecting The Songs
Start bpmdj. Select some songs in the Songs-tab and add them
to the queue by pressing right and slecting 'Add To Queue'. If you know
that those songs doesn't have a similar spectrum make sure to insert a
set of transitional songs. You can do this by going to the Queue-tab, selecting
all the songs, pressing the right mpouse button ans electing 'insert random
songs'. All the songs in the queue must have a correct tempo signature.
When you have created a list to your liking you can continue.
Setting the Automixer Options
Now press the 'Fully Automatic Mix' button in the right bottom
corner of the Queue-tab. The automixer dialog will pop up, as pictured
above. Not all options are enabled yet. In future versions these
will be however. Let's investigate the different options:
Head, % position in file: this option let
you choose the starting point of a new song. This describes the position
in the NEW song, not the old.
Process, Normalize Songs: beacuse not all
songs have equal volumes, you can choose to normalize all songs to their
peak-level.
Process, Volume Accounting: this option enables
barely audible beats to be taken into account less. Sometimes (not very
oftezn) this might help in creating a good mix. However, my experience
shows that this not often works as it is supposed to do.
Process, Fine Scan Tempo: sometimes the tempo-line
of a piece of music drifts. With this option you can make the merger perform
a new tempo scan, specifically suited to do the mix afterwards. This takes
some extra time but might be usefull for better results.

Process, Measures To Mix: how many measures
should the mix itself take
Process, Measures to Slide: over how many
measures should the best match be found. To explain these two values a
bit more. In the figure above, we see how song A is gradually replcaed
by song B. How long this takes is described by the 'measures to mix' value.
However, choosing the best position to mix two songs together requires
a certain window to search in. The size of this window (the pruple
ruler at the bottom) is the 'measures to slide' value.
Process, Measures for Tempo switch. How much
measure must be spent in tempo switching. This value will be cut if there
is not enough music present.
Process, Dump raw head/tail and mix: during
the process, the mergeer programm can dump the head (the X measures
of the new song), the tail (the Y measures of the old song over which to
slide) and the mix itself. When the mix has been dumped it is possible
to immiedatelly play only the mix using bplay. Therefer sleect Play
Mixes.
Process, Verbose: dump extra information about
file-sizes and mix positions. Not very useful, but necessary to help debugging
the thing.
Other options represnet how the output happens. Normally, one big raw file
is created by gradually appending new songs to the end of an already existing
file. When the whole process is complete, this file can be split into pieces
and encoded again.
Starting the Process
Once the options are selected, you can press 'Ok'. Now a script
is written to disk, called 'process_mix.sh'. Go to the BpmDj directory
and start this script. In future versions, this will be started automatically.
Command Line Options
The program used to create the mixes
is called merger. By
typing merger --help you can select all options available in the above
dialog box.
Copyright (c) Werner
Van Belle December 2001
e-mail: werner.van.belle@vub.ac.be
Tel: +32 486 68 84
48; Fax: +32 2 629 35 25