User Tools

Site Tools


gsoc2012ideas

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
gsoc2012ideas [2012/03/20 10:08]
gamegod Library database management
gsoc2012ideas [2012/03/20 21:05] (current)
rryan [Library Database Management]
Line 4: Line 4:
  
 **A GSoC application that simply repeats the project description will NOT be accepted. We expect you to think about the feature and how it aligns with Mixxx'​s goals, outline potential use-cases and propose a plan for implementing a solution.** **A GSoC application that simply repeats the project description will NOT be accepted. We expect you to think about the feature and how it aligns with Mixxx'​s goals, outline potential use-cases and propose a plan for implementing a solution.**
- 
-===== Key Detection for Harmonic Mixing ===== 
- 
-This feature aims to allow Mixxx users to simply and intuitively incorporate [[http://​en.wikipedia.org/​wiki/​Harmonic_mixing|harmonic mixing]] into their workflow. ​ 
- 
-Using an open-source key detector like [[http://​www.ibrahimshaath.co.uk/​keyfinder/​|KeyFinder]] or [[http://​clam-project.org/​wiki/​Chordata_tutorial|Chordata]],​ you will be responsible for adding key detection support to Mixxx'​s current analysis system. ​ 
- 
-After adding key-detection,​ you will have to change the way that Mixxx uses the [[http://​www.surina.net/​soundtouch/​|SoundTouch]] library to enable changing the pitch independent of the tempo. Today, Mixxx uses SoundTouch to change the tempo independent of the pitch (this is called **keylock**). The opposite problem is changing the pitch independent of the tempo. This is essential for harmonic mixing. If you have two tracks that are in different keys, then you have to adjust their pitch until they are in the same key. You do not have to implement pitch-shifting yourself -- this is already done by the SoundTouch library. See also: [[pitch_percentages_for_semitones_and_notes]] 
- 
-Once you have done this infrastructure work then you will have to decide how to expose these features to the user. This is an open-ended part of your application that will show us you have thought about the DJ use-cases and understand how the feature will be used. Make sure to explain the user-facing changes you would make to Mixxx and how they support the use-cases of this feature in your application. 
  
 ===== Point-And-Click Controller Mapping ===== ===== Point-And-Click Controller Mapping =====
Line 35: Line 25:
 This project will involve a lot of time thinking about use cases, dealing with users and understanding their requirements. It would be a great opportunity for a student to get involved with the Mixxx community. The student will also have the opportunity to borrow a MIDI controller from the development team for the duration of the project. This project will involve a lot of time thinking about use cases, dealing with users and understanding their requirements. It would be a great opportunity for a student to get involved with the Mixxx community. The student will also have the opportunity to borrow a MIDI controller from the development team for the duration of the project.
  
 +===== Library Preview Player =====
  
 +Selecting the next track to play is possibly the #1 hardest part of DJing. Today if you want to preview a track you have to load it to a deck and use the PFL (pre-fader listen) to listen to the track in your headphones. This project aims to provide a "​preview"​ player that lets DJs listen to tracks in their headphones without having to load them to a deck.
 +
 +===== Vinyl Pass-through Mode =====
 +
 +Mixxx allows you to DJ with timecode records and CDs. This project aims to bring a vinyl pass-through mode to Mixxx. Pass-through mode is a useful feature for DJs who still have part of their music collection on vinyl or CDs. When pass-through is enabled for a deck, Mixxx takes the input audio from the turntable or CDJ and outputs it directly as the deck audio output.
 +
 +===== Key Detection for Harmonic Mixing =====
 +
 +This feature aims to allow Mixxx users to simply and intuitively incorporate [[http://​en.wikipedia.org/​wiki/​Harmonic_mixing|harmonic mixing]] into their workflow. ​
 +
 +Using an open-source key detector like [[http://​www.ibrahimshaath.co.uk/​keyfinder/​|KeyFinder]] or [[http://​clam-project.org/​wiki/​Chordata_tutorial|Chordata]],​ you will be responsible for adding key detection support to Mixxx'​s current analysis system. ​
 +
 +After adding key-detection,​ you will have to change the way that Mixxx uses the [[http://​www.surina.net/​soundtouch/​|SoundTouch]] library to enable changing the pitch independent of the tempo. Today, Mixxx uses SoundTouch to change the tempo independent of the pitch (this is called **keylock**). The opposite problem is changing the pitch independent of the tempo. This is essential for harmonic mixing. If you have two tracks that are in different keys, then you have to adjust their pitch until they are in the same key. You do not have to implement pitch-shifting yourself -- this is already done by the SoundTouch library. See also: [[pitch_percentages_for_semitones_and_notes]]
 +
 +Once you have done this infrastructure work then you will have to decide how to expose these features to the user. This is an open-ended part of your application that will show us you have thought about the DJ use-cases and understand how the feature will be used. Make sure to explain the user-facing changes you would make to Mixxx and how they support the use-cases of this feature in your application.
  
 ===== Enhanced Platform Integration ===== ===== Enhanced Platform Integration =====
Line 53: Line 59:
 ===== Library Database Management ===== ===== Library Database Management =====
  
-Many Mixxx users initially start using it their desktop PC, saving cue points and other metadata to Mixxx'​s database. When you actually get a DJ gig though, you'll want to move that database to a laptop. There'​s currently no way official way to do this from inside Mixxx, nor is there a way to migrate your library database or some subset of the data to an external USB drive. There are several important use cases that we've overlooked - Find out what they are by browsing our forum, bug tracker, or just thinking about how DJs work, and propose fixing several of them.+Many Mixxx users initially start using it their desktop PC, saving cue points and other metadata to Mixxx'​s database. When you actually get a DJ gig though, you'll want to move that database to a laptop. There'​s currently no official way to do this from inside Mixxx, nor is there a way to migrate your library database or some subset of the data to an external USB drive. There are several important use cases that we've overlooked - Find out what they are by browsing our forum, bug tracker, or just thinking about how DJs work, and propose fixing several of them.
  
   ​   ​
gsoc2012ideas.1332252496.txt.gz ยท Last modified: 2012/03/20 10:08 by gamegod