Sometimes you get what you pay for- but once in a while, you get a gift. A real gift; one that doesn’t suck, and if you enjoy that gift enough, you may decide to give back. That’s the scenario with Mixxx, the open-source DJ software that offers one of the best free alternatives to the big commercial programs. Its well-rounded feature set and impressive results make it an outstanding introduction to digital DJing or a streamlined solution for laptop-only performance. Let’s examine its latest features and the overall package.
Reviewed: Mixxx 1.10.1 open-source DJ software
Sample Rates: 44.1, 48, or 96 kHz
Audio formats: Ogg Vorbis, MP3, WAV, AIFF, with recording available.
Live Streaming: Via Shoutcast or Icecast (Streaming or recording to MP3 requires a third-party LAME encoding tool.)
Replay Gain: Normalization of track audio levels is available in Preferences.
System Requirements (Recommended):2 GHz or faster CPU, 1 GB RAM, soundcard with 2 audio outputs, Windows 2000, XP, Vista, or 7 (32- or 64-bit) / Mac OS X 10.6 or later / Linux: Mixxx officially supports Ubuntu Linux. However, Mixxx can build on almost any Linux distribution.
The Good: Very good results for tempo and beat detection, beat syncing, keylock, quantize, and other types of processing. Beatgrid adjustment. Looping and sampler decks. Mic input with talkover button. Traktor and iTunes library integration. Supports multiple audio interfaces. Decent configuration options. Recording of sets. The “free” version is the “full” version.
The Bad: No multi-effects engine. Limited number of MIDI controller mappings available. Somewhat complicated MIDI mapping scheme. No 4-deck support yet.
The Bottom Line: What’s more important than your money? Your time. Obviously, it costs you nothing to download and try Mixxx, yet this long-running open source project makes it worth your while if you seek an easy-to-use, but still fairly powerful program. It’s great for Internet radio or other laptop-only uses. DVS, CDJ, and growing MIDI controller support also make it an attractive performance option for resourceful DJs and Linux users.
IT’S A FREEBIE
They say it takes 10 years to become an overnight sensation, and that’s pretty much the case with Mixxx. Tue Haste Anderson created Mixxx in 2002 as part of a doctoral thesis, and a new development team took over in 2006. Although it has garnered around 1,000,000 yearly downloads for a while now, the latest update to v1.10 added many key features that upped the ante for a free program.
Specifically, those new features include:
- 4 sampler decks that output to the main output
- more looping features
- a mic module
- DVS support
- new track deck features such as quantize (for automatically setting cue and loop points on a beat)
- beatgrid adjustment (for fixing the placement of the down beats if Mixxx incorrectly detected them).
We’d still like to see a proper effects engine (rather than the single flanger effect), more loops and cue points per track, 4-deck support, and… well, the sky’s the limit. But it’s so uncouth to complain about a free, open-source project, so that’s not the goal here. Mixxx continues to grow, and bigger things are ahead.
While on the subject of open source, we’re a little more forgiving of some bugs and other shortcomings, such as Mixxx’s light or inconsistent documentation. I tested Mixxx 1.10.1 on a 2.8 GHz Intel Core 2 Duo MacBook Pro with 4 GB RAM and running OS 10.6.7 Snow Leopard. Besides a couple of bugs that didn’t effect performance (I’ll mention those later), Mixxx ran buttery smooth the whole time. But as the software also supports Linux and many versions of Windows, keep in mind that there may be small inconsistencies with what’s written here and your own experience.
Note to Mac users: The version available in the Mac App Store, Mixxx 1.9.1, does not include DVS support due to some kind of licensing restriction, and as such does not include the other great features of the latest edition, which you can download from Mixxx.org.
One possible advantage to Mixxx as you first install it is that is supports multiple audio interfaces, which you can setup in the Preferences. So if you have a two-channel audio interface that you make your master output, you could use your computer’s internal audio output for headphone cueing.
Also in the Preferences, there are different layout skins to choose. The standard official skin, Deere, has a traditional look that harkens to Traktor; LateNight and Phoney offer different styles of stacked, horizontal decks; and Shade cops an Ableton-inspired feel. You can create your own skin if you like.
Focusing on Deere, the official interface, you get a Traktor-style track deck with a large overview waveform, a smaller summary waveform, BPM and time remaining display. The pitch slider with Sync button has adjustable ranges in the Preferences.
Six deck configuration buttons let you:
- Toggle the spinning vinyl icon in the deck.
- Toggle repeat track.
- Eject track from the deck.
- Adjust the beatgrid: position the playhead over the correct spot for the downbeat and then press the button.
- Toggle quantize: With quantize on, loop in/out and cue points will snap to a beat.
- Toggle keylock.
At the bottom of each deck, you have fast forward, rewind, and reverse play buttons; a looping section, and 4 cue point buttons. Just press a cue point button to set the point and again to return to it. Cntrl-cuepoint button (Mac) erases the cue point.
The expanded looping section includes Loop In, Loop Out, and Loop Toggle buttons, as well 8 preset quick loop buttons for 1/8, 1/4, 1/2, 1, 2, 4, 8, and 16 beats. Additionally, Loop + and Loop – buttons double or half the loop length, respectively.
In the mixer section, you have your two-channel volume faders with level meters for each channel as well as the master output, which include the mic input and sampler decks. The two channels have Gain and 3-band EQ, including High, Mid, and Low Kill switches, as well as PFL headphone cueing buttons and an FX button. FX toggles the single effect available, a flanger, which has LFO, Depth, and Delay knobs.
The single effect is better than nothing, and the flanger sounds pretty good. Obviously, a proper effects engine would be nice, and the word is that one is in the works. In the meantime, a better effect mix knob would help apply more of the flange to a track. As it stands now, even with the Depth knob cranked, the effect sounds pretty subtle.
At the top of the mixer sit the headphone and master volume controls, and above the level meters, Mic, Sampler, and Vinyl button show or hide those control modules.
A simple Mic module gives you a talkover button to activate the mic input (which can be an internal mic or any external input chosen in the Preferences) and a volume knob with level meter. You can also set the mic input’s active crossfader orientation, from left, right or middle (always on).
Each of the four sampler decks come with an impressive level of features. Each one displays the name, waveform, and BPM of the sample and includes a pitch slider, volume knob, headphone cue button, 4 hotcues, play/pause button, repeat, keylock, sample eject and crossfader orientation buttons. Just like in the track decks, you can mouseclick the BPM display to work as a tap tempo.
If anything, the Mixxx library goes above and beyond what other DJ software libraries do. It was, however, also the source of a couple of bugs. When you right-click a track in library and bring up the Properties dialog window from the contextual menu, you can edit the track tags, BPM, and even cuepoint information. It’s quite helpful and usually worked fine. But sometimes the changes applied in the Properties dialog didn’t show in the library. For example, if the BPM was incorrectly detected as half or double the actual BPM, buttons in the Properties window can easily fix that. But those changes didn’t always show up later in the library.
Another problem was changing Properties of a track that did show up in the library in one location, but not in another location, like a playlist.
With that out of the way, the Mixxx library generally offers a lot of flexibility and options. It will read any existing Tracktor playlists and sample/loop material, as well as your entire iTunes library. You can analyze tracks from the library, create Crates and Playlists. You can rearrange the order of track attributes such as, artist, genre, BPM, duration, rating, year, key, etc., and order tracks according to those attributes. While all of this is what we’ve come to expect in a DJ software library, the point is that it’s all there and working in a free program.
The Browse section of the library can also access your computer’s entire file directory, and the library has a Search field, as well.
Mixxx also has the dreaded Auto DJ function. Just dump some tracks into the Auto DJ folder of the library, hit Enable Auto DJ button, and you’ll be free to have a smoke, take a leak, or chat up the cutie who’s been looking at you — please not all at the same time; we expect better of you. The Auto DJ starts mixing in a track about 10-30 seconds before the end of the previous track, depending on the track. It does not beat sync unless you set it to beat sync in the deck, but you have to do that each time there’s a new song, and that kind of defeats the purpose. Let’s just admit that the Auto DJ is not a DJ Replacement button, but that it could conceivably come in handy in an emergency, so why not have it?
The library also stores a folder of any Mixxx Recordings you’ve made In the Preferences, you can choose the audio format and quality level of your recordings or if you want to split the recordings at a certain size, like 650MB for CDs. To record to MP3, you have to install a third-party LAME MP3 encoder, which the Mixxx manual walks you through.
Due to the small resolutions of some the Mixxx skins that are suitable for netbooks or tiny laptops, and the fairly comprehensive QWERTY keyboard mappings for control, you get the sense that a big part of Mixxx’s users are rocking it on just a laptop in very mobile situations. The standard keyboard shortcut layout covers loading and ejecting tracks, looping, hotcues, crossfading, tempo adjustment, EQ kills, and more. I did not have the same experience on a Mac keyboard as what’s listed in the manual, but the keyboard mapping is adjustable.
Besides, Mixxx includes a good start on MIDI controller compatibility, with Mixx Certified mappings for 13 controllers — including the Midi Fighter Classic (Review | Buy) — and community supported mappings for 29 controllers. They would love to have you fill in the blanks by creating a new mapping. The functionality and quality of documentation among the community-supported mappings varies.
I tested Mixxx with the community-supported mapping for the M-Audio Xponent (pictured at right | Review | Buy). It was a nice way to resurrect a controller I had mostly placed on the shelf. I was able to control Mixxx almost entirely from the Xponent. With the exception of some browser functions and Sampler Deck control, keyboard shortcuts could make up for what the controller mapping didn’t provide.
With the absence of a lot of effects in Mixxx, I had some extra controls I wanted to map to Sampler Decks. You can add new MIDI controls via the MIDI Controllers Preferences, but you’ll need to know the MIDI Note that each control on your hardware sends out. That’s a bit more complicated than the simplified MIDI Learn schemes that we’ve been spoiled with over the last several years, but at least it’s possible.
When it comes to open source software that means to emulate or replace a high-end commercial package, I tend to be wary of the stability and quality of the critical processing. Once I completely uninstalled the old version of Mixxx from the Mac App Store and installed Mixxx 1.10.1 from Mixxx.org, the software performed remarkably stably at low latency settings and a sample rate of 48 kHz. Any bugs I experienced did not affect the most critical aspects for a DJ: continuity and quality of the audio and the stability of the program.
Also, the quality of Mixxx’s critical processing tasks (time-stretching, keylock, BPM detection and beat sync) was generally excellent. All of those processes compared well to commercial programs. The occasional problems — incorrect BPM detection and incorrect beatgrid placement — are not uncommon in other commercial programs, and are both fixable in Mixx. You can adjust the BPM from a track’s Properties in the library or from using tap tempo in the track deck, which I don’t recommend for accuracy – and the track deck’s Adjust Beatgrid button works just fine.
HARDCORE OPEN SOURCE
Currenty, Mixxx stands as a triumph of the open source model where other open-source projects in the world of music software fall on their sword. I know little of Mixxx’s past and whatever challenges it has faced, but its future looks bright.
The Mixxx developers seem to have taken a healthy approach to slow growth. Other open-source programs have tried to offer tit-for-tat features mirroring their commercial counterparts and have sacrificed user friendliness, stability, or both. Mixxx on the other hand has kept its claim to novice accessibility while adding pro-level features incrementally. It’s still not tit-for-tat with Traktor for example, and maybe it never will be. It doesn’t have to go that route.
A kid mastering Mixxx on a cheap controller will in my opinion be much less likely to throw a laptop against a wall in frustration than a complete novice trying to jump into Traktor Pro with no background.
If nothing else, millions of people will continue to download Mixxx because using its Auto DJ at a dinner party looks cooler than iTunes. Who cares? Maybe they’ll learn something about digital DJing and stop trying to shout requests at you when you’re concentrating on your set. Well, we can dream can’t we? That’s what the Mixxx developers are doing. Check it out.