Author Topic: key detection  (Read 852 times)

djshahar

  • Posts: 19
key detection
« on: 24 Oct '18 - 17:57 »
is there a way to detect a song key?

i use waveform.wave.beats to detect bpm. no clue where to start with key detection.

Ian @ un4seen

  • Administrator
  • Posts: 22036
Re: key detection
« Reply #1 on: 25 Oct '18 - 16:49 »
BASS doesn't include a ready-made key detection feature, and nor do any add-ons as far as I'm aware. It would probably be possible to come up with something using FFT data (eg. from BASS_ChannelGetData) but something that works well would probably take quite a lot of effort. Perhaps there are 3rd-party libraries that can do it for you? Here's one:

   https://github.com/ibsh/libKeyFinder

djshahar

  • Posts: 19
Re: key detection
« Reply #2 on: 26 Oct '18 - 14:11 »
Thank you Ian,

I am all about bass.net

with bass.net i got a bpm with 10 decimal places. no other library i heard of does that.

not even the pro dj software.. vdj, srt, and trk.

i will find out how to do this what is fft and how do i use it?

Ian @ un4seen

  • Administrator
  • Posts: 22036
Re: key detection
« Reply #3 on: 26 Oct '18 - 17:59 »
Unfortunately, BASS.Net doesn't include key detection either. It isn't something that I have tried to implement myself, so I'm not really in a position to say how it should be done, but I'm pretty sure key detection isn't simple. So unless you are already familiar with what's required to implement it, I really would suggest looking for an existing key detection library to handle it for you. Even if you want to try implementing it yourself, you could still have a look at other libraries to see how they do it, for some ideas.