Wednesday, February 07, 2007

Foobar DJ Custom Settings

Foobar DJ

I trust you've been reading at the Theatre of Noise as I have explored the features of the free audio player foobar2000. My introductory article covered its features; a follow-up revealed my customisations, optimised for live DJing. Here I'll share my settings.

Modifying foobar is a complex business, as a glance at the exhaustive threads at hydrogenaudio reveals. One of the problems is that the documentation on how to hack foobar, or even install someone else's design, is lacking. Here I'll put it all together in a step-by-step guide.

In order to install my foobar mod, do the following:
  1. Install foobar
  2. Install third-party components
  3. Install graphics libraries
  4. Install background texture
  5. Install typefaces
  6. Tweak display properties
  7. Install configuration file

1. Install Foobar

Grab foobar2000 version 0.9.3 and install it on your system. Open the application folder in Windows Explorer, as you'll be adding quite a few files here.

2. Install Third-Party Components

For each of the following components download the archive, extract the DLL file, and place it in the components subfolder of your foobar install.

These components enhance our interface:
  • Columns UI to give us a more flexible basic interface.
  • Tabbed panel stack which pretty well does what it says. In my design the tabs are hidden, but are there all the same.
  • Track Info Panel Mod to provide a flat panel for current track info.
  • foo_cwb_hooks for the ability to see the next track in the playlist.
  • foo_trackpos adds the context menu "place after current playing".

These DSP components provide useful DJ functionality:
  • Skip Silence does just that. I find the default settings work well to trim excess empty space from the end of a file, but you may wish to experiment.
  • Crossfader allows you to set a period of mixed audio between sequential tracks. I prefer a setting of between 3 and 5 seconds.

3. Install Graphics Libraries

In order for PNG graphics to work, you'll need the libpng and zlib libraries, as specified in the docs for Columns UI. These do not go in the components sub-folder, but rather in your main foobar application folder.

4. Install Background Texture

This mod uses a single PNG image that you need to put in a subfolder of your foobar2000 installation named "pix".

5. Install Typefaces

The nice grungy display font is Shortcut, a free typeface by Eduardo Recife. Download this file from Misprinted Type and install it.

Do likewise with Boring Sans Bold by Manfred Klein. This is used for the majority of the text. You may be interested to know that this face was made last year, when the designer was 76! Check out the hundreds of free typefaces on his site.

6. Tweak Display Properties

I have used a background colour which is designed to blend in with my Windows XP visual style. You need to make a couple of tweaks to ensure yours does too. Basically, we want to change the "Menu" and "3D Objects" settings to have a colour of (224, 226, 235). Unfortunately, the steps to do this are among the most convoluted on the planet, so I have outlined them in a separate article at the theatre of noise.

The alternative solution, if you want to keep your own settings, is to go through every part of my foobar interface and change my background colours to match the one you have in your Display Properties. Of course my background image will not blend in properly, but that is a lesser issue.

7. Install Configuration File

First, launch foobar and go to Preferences. Find "General - Other - Enable User Profile Support". Uncheck this so that there is only one profile for all users on the computer. This means that your configuration file foobar2000.cfg will reside in your foobar application folder. Exit foobar.

Backup your foobar2000.cfg to something safe, in case of catastrophe. Download my cfg and copy it to your foobar application folder.

Now, restart foobar and marvel at the wonderous interface!

To get the most out of Foobar DJ, be sure to read all about my customisations.

Some Final Notes

Foobar geeks may wonder why I did not use the popular Single Column Playlist UI component, since this would have allowed further UI decoration. This is because it requires you to use Alt + Click to move a track within a playlist. I don't want any two-handed exercises when DJing.


When developing I continuously referred to the various syntax documents. For ease of reference I have collected these together in one place:
If you feel like adding further components, this list is handy, as it allows you to filter by foobar version.

There you go! Hope you like it.

In an upcoming article I'll discuss some of the shortcomings of foobar. Maybe you'll be able to help?



robin said...

I have updated the .cfg file so that it does not contain spurious component info. Also, it defaults to your basic sound output, which you may need to adjust. But at least that's better than it looking for a sound card that is only attached to my system!

robin said...

Added a direct link to Boring Sans Bold, so you don't have to go looking for it on Klein's site.

Electric Server said...

hi robin!
ive been for some time using foobar for playing music in my pc. ive seen such great screenshots of your personal configs. when i tried to follow your step-by-step guide to configure mine i've realised that i've got the version which is older than yours. i wonder where can i get the .3 so that i can add such great settings.

thx for the guide,

Mak said...

Any word as to if these files will be made available in the future? I have apparently stumbled upon it too late..

robin said...

The cfg file is still available at the link above. I have no idea how this might work with current versions of the software, however.

Post a Comment