Wednesday, November 7, 2012
Mixxx is free and open source DJ software that gives you everything you need to perform live mixes. With millions of downloads yearly and a comprehensive set of professional features, Mixxx is driving increased competition in the DJ software industry. Google Summer of Code season is always an exciting time of the year for the Mixxx team and 2012 was no exception. This is our fifth year in Google Summer of Code and we had four stellar students -- Max Linke, Matthew Mikolay, Scott Stewart, and Varun Jewalikar.
Since Mixxx is a cross-platform, performance-critical and heavily multi-threaded C++ application it can often be a daunting task for Google Summer of Code students to get acclimated to the codebase and begin contributing. This year's crop of students hit the ground running and Max, Varun, and Matthew had nearly finished their proposed projects by the time the summer started! We had to come up with extensions and follow-on projects to keep them busy.
Varun Jewalikar, from Spain, added a harmonic mixing framework to Mixxx. This highly requested feature allows DJs to see the harmonic key of songs that they are mixing and adjust the pitch in real-time so that songs are harmonically compatible. By the start of the summer Varun had already integrated 3 open source key detection libraries into Mixxx so that we could see which one worked best. He spent the rest of the summer building the pitch-adjustment feature, integration and polish.
Scott Stewart, from the USA, spent the summer revamping our Auto-DJ algorithm in Mixxx to support more advanced transitions allowing DJs to take even more breaks.
Matthew Mikolay, also from the USA, finished his project of adding a vinyl-passthrough mode to allow DJs to seamlessly switch between DJing with vinyl timecode records and their vinyl collection on the fly within the first few weeks of the summer! He spent the rest of the summer building a modular compressor into Mixxx's audio processing engine. This prevents distortion and clipping while allowing a higher dynamic range of audio in the mix.
Last but not least, Max Linke, from Germany, completed his official project before Google Summer of Code even started! He added a preview deck which allows DJs to preview a track before loading it into a real deck or sampler. For the rest of the summer Max was a solid contributor of fixes to our library system and worked on adding support for multiple library folders, improving our library scanner, and more.
In addition to their projects, the group fixed a bunch of bugs and their fixes are about to ship in our latest major release, Mixxx 1.11. We were extremely pleased with our students' progress this summer and can't wait to see what they come up with next.
Mixxx 1.10.1 with the Deere skin
Mixxx has been significantly shaped by Google Summer of Code. Two out of our four mentors this summer were previous Google Summer of Code students and Mixxx's current lead developer (yours truly) joined the project as a Google Summer of Code student in 2008. We are very grateful to Google for continuing to provide this incredible program for getting students involved in open source software.
By RJ Ryan, Mixxx Lead Developer and Google Summer of Code Organization Administrator