First download one of the packages from the download section. If you happen to be a debian user you can immediatelly download the .deb file and type apt-get install bpmdj-version.deb. If you're not a debian user you might need to compile the software yourself.
To compile the software from scratch you need certain development tools. These are
To use the software you need mpg123 and/or ogg123.the linux soundcard headers, either the OSS headers or the ALSA headers or both. If you plan to use the ALSA driver, you will need alsalib gcc qt-designer (called designer),
qt header files qt3.1 2 sound cards and an external mixing desk
To compile the source, you need to know certain things of your operating system. You need to know where the meta-object compiler is located (moc) and which version should be used. Yoiu need to know where the qt libraries are located and where the headers are located and these three pieces of information need to be comptaible. For instance the meta-object compiler (moc) needs to match the QT library you will use. Likewise, the qt header files need also to match the library you will use. In general it is very difficult to create a script that detects these things fully automatically. Therefore I've left these configuration things to the person who compiles the software.Once this information is correct, the programs can be compiled using the make command.The locations of different programs, libraries and headers must be place in a file called 'defines'. Two examples of defines file are provided. (defines.debian and defines.gentoo)
From version 2.1 on, there are different sound drivers. You can select which one to compile by using -D COMPILE_OSS or using -D COMPILE_ALSA. If you want to use the alsa driver, please include the correct headers and libraries (-lasound).
After compiling the software, you can install it system wide by using make install. However if you choose not to do so and work only locally you need to extend your PATH environment variable with the directory that contains kbpm-play and glue-mp3raw.The bpmdj file selector requires on a number of externally available programs. The first one is the song player (called kbpm-play and the second dependency is mpg123). As such, these two programs should be in your PATH environment variable. Normally, if you installed the software, using make install, this should form no problem. If you only did a make, then you might need to add
export PATH=.:$PATHbefore you start the program.
The program itself requires extra information (meta-information) to be present for every song. This information includes, title, author, tempo, sound color and other information that might be useful. Normally, ID3 tags can be used for this. However, because not all mp3's can be modified (because they are already on cdrom for example), the program will store this extra information in separate files. These files will be stored in a directory ./index. The music files must be stored in a directory ./music. Once a song has been indexed and a meta-file exists in the index directory, then the song must not move any more within the music directory. Of course the music directory can contain soft links to other locations within the filesystem. Also, when a meta-description of a song is available that is not within the music directory, the program will silently ignore the index file. At the moment the song is again available, it can be used again.Therefore create at some place in your filesystem two directories.
./music
./index
Find some Mp3's
The program is centered around the use of Mp3's, hence without Mp3's there is nothing too demonstrate. Therefore, find some songs and move them to the music directory. Beware, once a song is known to bpmdj, it should not move anymore within the music directory. Thus, if you have multiple cdrom filled with songs, you might use a convention to create cd<xyz> directories within the music directory:music/cd001
music/cd002
music/cd003Start The Program
Now, go to the directory where the music and index directories are located. Start bpmdj by typingkbpm-djThe program will open and verify that all necessary components are available. (this should not form any problem). Now, the file selector will pop up and we can start with importing the unknown songs.Import Mp3's
To import new mp3's go to the SongManagement|Import MP3's. Now a box will pop up which will scan all the directories within the music directory. For every unknown mp3 file a new index file will be created and the song will pop up in the main listbox.
Depending on how you compiled the program, the player will be able to work with either ALSA devices or OSS devices. To inform the player which driver and device to use go to Program|Preferences and modify the parameters of the first two players. To do so click on the create button. Once, the parameters are correct, the player should start playing the selected song. Setup the DSP Devices
Of course, if you want to mix to songs, you will need to DSP devices. Ir you're so lucky to have two sound cards inserted in one computer and you are able to use both DSP's at the same time it is easy to modify the arguments given to the different players. On the other hand, if your not so lucky and you need to play remotely, then you might be interested in looking at the rbpm-play script and use that as a player on a remote machine. Before this will work the songs as well as the index files need to be present on the remote machine.
Troubleshooting:
Check the permissions of the dsp device Check the permissions of the mixing device If it really doesn't work, check whether the song can be played by mpg123, alsaplayer and/or xmms
Check whether there is enough free disk space Go to the bpmdj root and remove any left over raw files by doing 'rm *.raw' If your playing remotely try to start rbpm-play manually and see what goes wrong. If your working on one machine and are using ALSA drivers, make sure you can play two songs over the two DSP devices simultaneously. Remember alsa-config.