GSoC/GCI Archive
Google Summer of Code 2012

Mixxx DJ Software

Web Page:

Mailing List:


Mixxx is the most popular free DJ software in the world. Mixxx began as one of the earliest MP3 DJ solutions and as a result has attracted millions of users worldwide. Our mission is to provide these users with a beautiful, intuitive DJ mixer with features that rival and lead proprietary commercial solutions such as Traktor, Serato, and Virtual DJ.

As a contributor to the Mixxx project you will:

  • Write code that is used by millions of professional DJs worldwide.
  • Learn the tricks of trade in cross-platform deployment -- your feature will ship to users on Windows, Mac OS X, and Linux.
  • Learn about how to write performance-optimized code where microseconds make a difference.
  • Work with a quirky team of hackers, DJs and artists.

Working on Mixxx is a great way to get involved in open-source, learn valuable skills that look great on a resume, and have a fun time doing it.


  • AutoDJ Improvements I would expand the functionality of AutoDJ to include beatmatching. This would begin as simple beatmatching that would utilize the sync functionality that Mixxx already has. Additional work could be done to optimize the beatmatching to utilize the users' cue points, match the beginning and end of songs, sync the beats of the song, etc.
  • Key Detection for Harmonic Mixing Find the key of the tracks and use it to provide various functionalities related to harmonic mixing in the UI of Mixxx.
  • Library Database Management Mixxx saves a lot of meta-data for tracks in it's library like filename, artist, waveform, etc. Unfortunately there is no way to transport that data from one PC to the other. This project aims to change that and add a option for a portable library.
  • Vinyl Pass-Through Mixxx currently allows its users to control the virtual decks using timecoded vinyl or CDs, but would benefit greatly from the addition of a vinyl pass-through feature, where normal vinyl or CDs can be received as an input signal and processed as one of the virtual deck outputs. This feature would allow DJs to play their physical vinyl and CDs without modifying their Mixxx setup.