As already explained in the setup section, the program relies on the availability of a certain directory structure. The music directory must contain all mp3 files you wish to use. The index directory will contain all necessary meta-information with respect to the songs present in the music directory. These two directories are separated because it might not always be possible to modify information within the mp3 files.
When you open up kbpm-dj you will see a list of songs available to you to play. To play a song, all you need to do is double-click it. If it is the first song that is played it will be playing as the main song. If already a main song is playing, it will be considered a song for the monitor. Once the main song quits the monitor will become the main song, and thus a new monitor song can be chosen by double clicking it. Every time a monitor starts it will play at the tempo matching the current main song.
Scenario 1: Playing a chain of three songs
Start song A, this Will start playing in the main. Start song B, this will start playing in the monitor at the tempo of the main song Listen to the monitor and choose a suitable moment to mix them, After mixing the main song cannot be heard anymore. Close the player of song A. The bpmdj file selector will automatically migrate the monitor to the main. Now Song B will be in the main box. Bring song B to its normal tempo (by pressing 'normal' in the player) Choose a third song C, and start it by double clicking it. This song will appear in the monitor and will be playing at the tempo of song B. When song B is no longer necessary, quit the player and continue the cycle...
A cautious user might have noticed that the bpm-dj file selector allows for more than one player. If you want to use the two extra players, select a song, press the right mouse button and choose 'play in first extra player' or 'play in second extra player'. The song will start at the tempo of the main song.
Sometimes a situation might arise in which you need to play a song at the tempo of an already playing song (a song by another DJ, or simply because you are using a second computer, which needs to take over). In such a situation, you can start the song in the main-player and then immediately start the song you want to mix it with. However such an operation is relatively time-consuming, therefore it might be more appropriate to tell the selector that a song is playing without requesting the selector to play it. This can be done by right-clicking a song and selecting 'This is the main song'. Once the monitor song has become the main song, then you can remove the main playing song by selecting 'Program|Switch monitor to main'.
Before we can actually use the songs, we might be interested to know the tempo of the music. Therefore, select all songs (if you already have songs imported, you can selectively select them by using the 'New' tag). After selecting all the songs with Ctrl-A), right click on them and choose 'Analyze/BPM/Spectrum'. The bpmdj file selector will now start a background process that will decode all mp3's and measure their tempo. This process can take a while and is spawned in the background. Therefore it is safe to close the bpmdj file selector. (unless of course your terminal application decides to kill all children when it dies, in that case, close bpmdj but not the terminal). Measure the Tempo/BPM
Measuring the Sound Color
Spectrum Distance One of the problems DJ's have when playing is that the sound-color of a song often does not completely match the sound color of the song they want to play. A solution to solve this is called frequency shaping. Most mixing desks can help in doing so by cutting out certain frequencies and boosting others. However, all too often a song does not sound right anymore when too much spectrum modification are made. Therefore, bpmdj includes a tool to determine the sound color of a song. To do so, you best appoint some cues first (see [WVB--REF] for more information about cues). Once this is done. Select all the songs for which you want to determine the sound color. Click right and select 'Measure Sound Color...'
The sound color of a song is measured over 10 seconds at the last used cue position. This makes sure that the spectrum analysis is not out of balance because of long intros and useless gibberish at the end of a song. This spectrum analysis will report how well a certain frequency band is present. There are 24 frequency bands available. (For a reason why see the section about bark scales). Now, the problem with such a spectrum analysis is that it is very difficult to visualize it properly. After all, 24 dimensions is a bit too much for an easy understanding. Therefore, the program offers two tools: The first is an automatic calculation of the distance between two spectra. This information can be found in the dColor column of the song selector. In the example above we see that a mix of 'In Zaire (Johnny Wakeling)' and 'The Truth (Clawfinger)' looks promising because they sound very similar. In practice, this mix sounds indeed very good. The second technique is a PCA analysis, which we will describe now.
Principal Component Analysis
The dColor column does not help a DJ to orientate himself between songs. It is very difficult, by only using the dColor column, to know how one song can be reached from another song. Therefore bpmdj will reduce the 24 dimensions by which the spectrum of every song is described to 3 principal axis. These 3 principal axis are chosen such that they preserve the most important information. In other words, the first dimension will be a projection of the spectrum onto one dimension, chosen so that the largest variability is present. The second dimension will represent less variability, and the third even less. We can continue this series of projecting onto different axis. However, after 3 dimensions we have enough information. The projection of the spectrum characteristic onto those 3 axis will yield different magnetized. Every magnitude will represent either RED, GREEN or BLUE. And so, the sound-color of a song is represented visually.
For instance, suppose that we are playing the song 'In Zaire' (author: Johnny Wakeling). If we want to reach the song 'Fast Love' (author: George Michael), then we must choose songs within a spectrum similar to the one playing (In Zaire), but in the direction of Fast Love. Hence, The songs 'Do What I Say (Clawfinger), The Truth (Clawfinger), Rock This Town, How Gee and Like The Way I Do, are songs similar to In Zaire, but will help in reaching the song Fast Love. To the contrary, songs such as 'Back To Life', 'Another Day In Paradise', 'Fading Like a Flower' will not help you in coming closer to 'Fast Love'. Of course, this is information which only takes into account the spectrum of a song not the tempo, nor the rhythm of the song. Thus, some human interaction is still necessary at this point.The spectrum analysis and the sound-color of a song can help you in deciding how to reach a certain song given a current playing song. The sound color should be used to navigate between songs.The principal analysis of all songs, having a spectrum is done automatically at startup time. However, if you will play a night only with a subset of songs, then you can select them. Click right and choose 'PCA Analysis'.