Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Harmonic mixing helper section in library. #5655

Open
mixxxbot opened this issue Aug 22, 2022 · 14 comments
Open

Harmonic mixing helper section in library. #5655

mixxxbot opened this issue Aug 22, 2022 · 14 comments

Comments

@mixxxbot
Copy link
Collaborator

mixxxbot commented Aug 22, 2022

Reported by: l0rdt
Date: 2010-11-11T14:59:28Z
Status: Confirmed
Importance: Wishlist
Launchpad Issue: lp674067
Tags: key


It would be handy if Mixxx could have a library view where all key-compatible songs with the currently playing one are listed.
That will surely help beginners as well as experienced users.

Here is a sketch:

  • If a new track is loaded, we should check if it has nonempty "key" tag ( already implemented: Bug #611871 );
  • If a "key" tag is found, we query the db for all tracks with compatible keys;
  • Results of such query are hence sorted based on how they differ in BPMs from the played one.
  • Sorted list is shown in say a "Suggestion Box" library view.

A guide on harmonic mixing can be found here: http://www.mixshare.com/wiki/doku.php?id=harmonic_mixing

@mixxxbot
Copy link
Collaborator Author

Commented by: rryan
Date: 2011-11-13T21:59:53Z


Similar to Bug #⁠872006.

@mixxxbot
Copy link
Collaborator Author

Commented by: norayr
Date: 2020-04-29T14:55:26Z


i second this.
i need it very much.
when i play with pioneer hw it helps me by showing key near the track in green colour by signaling that this key is compatible with the key of what is played now so it is one of the choices for the next track.

when you play for hours, and are not able to prepare everything in advance, or if you have to improvise because you read the audience, this is very helpful.

and absence of it is literally a showstopper for using mixxx in many cases.

@mixxxbot
Copy link
Collaborator Author

Commented by: Be-ing
Date: 2020-04-29T15:12:43Z


You can already sort the Mixxx library by key. That's not exactly the same as this feature, but it is very helpful.

@mixxxbot
Copy link
Collaborator Author

Commented by: norayr
Date: 2020-04-29T17:27:12Z


thank you.
yes, i have to keep the camelot wheel or something like that nearby for now.

@mixxxbot
Copy link
Collaborator Author

Commented by: Be-ing
Date: 2020-04-29T17:46:38Z


You can change the key notation in the Key Detection section of the preferences if that helps you.

@mixxxbot mixxxbot transferred this issue from another repository Aug 24, 2022
@macrophone
Copy link

an handy way to implement this could be to have a "KEY FILTER" button on each deck , close to the key section.
Pressing this button would filter the library view with the key compatible tracks only.

@ronso0
Copy link
Member

ronso0 commented Sep 9, 2023

So pretty much the same as
track context menu
-> Search related tracks
-> Key: harmonic with [key of current track]

just as one-button solution?

@macrophone
Copy link

Yes exactly. When I'm in performance, I want to use the keyboard/pad the less as possible.
Plus, if I a have a button, I can assign it to a controller.

@Holzhaus
Copy link
Member

I think we can come up with something better that does not require using the mouse, keyboard or a controll button at all. How about when a track is selected, the key column of matching tracks is automatically highlighted or something like that?

@Holzhaus
Copy link
Member

Looks like Rekordbox has such a feature: https://djmag.com/content/new-rekordbox-makes-it-even-easier-mix-key

@ronso0
Copy link
Member

ronso0 commented Sep 10, 2023

Sure, that would be a better solution.
How exactly does it work in Rekordbox? I.e. which deck's key is picked for searching matching keys?
Both/all 4 decks? The one last started? The one assigned to the 'active' side of the crossfader?

I think we could move step by step, i.e. first use what we already have

  1. trigger control: find a way to append the key match string to the current query (the string is nothing more than track.getKeyText()
  2. toggle control per deck: append/remove the key query if present

and then try to adopt/tweak the Rekordbox solution. IIUC that would required a KeyDelegate that's connected to PlayerManager (or some other manager) and paints the index accordingly.

@ronso0
Copy link
Member

ronso0 commented Oct 23, 2023

See also the discussion in #6018

@JoergAtGithub
Copy link
Member

Also Traktor Pro has such a compatible key colorize feature: https://youtu.be/bKJ3j8LRtg8?t=267

@mxmilkiib
Copy link
Contributor

mxmilkiib commented Oct 25, 2023

Some food for thought..

Here's the Camelot Guide for DJs app wheel again;
image

There's also the Dj Harmonic app which has the option of what rule to use;
image

The Camelot Guide app rule is equivelant to the Dj Harmonic "Exclude 'cross tone transition'" but also including 4B, which is A flat, the parallel of 1A (i.e. minor to major A);
image

(google says: No results found for "cross tone transition")

"All compatible keys" is;
image

"Adjacent keys" is;
image

"Energy boost/lower" is;
image

I'll save posting shots of all the same for a major key..

Here are some written definitions of some varieties of change: https://github.com/regorxxx/Camelot-Wheel-Notation#harmonic-mixing

FWIW, there is https://github.com/hotwatermorning/related-key-map which has an interesting visualisation of relationships, and for A flat minor it's;
image

(Also FWIW is the https://en.wikipedia.org/wiki/Harmonic_table_note_layout)

Aside from the option to change the rule/scheme, the ability to set the relative colours used would be handy. If there were presets that copy the big commercial apps/systems, that would be good to help on-board users who familiar with those.

Last of all; given tracks can be pitched up and down, there are extra options available, and Digital DJ Tips has a couple of PDFs that list all the relative Camelot numbers for -2, -1, +1, +2, as a wheel and as a strip.

P.S. would modes matter?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants