New Nearest Neighbors

With version 4.7.3, BpmDj got a new nearest neighbor module. One that is a lot better than our previous attempts. The drawback is that it requires a reanalysis of all tracks, which takes some time.

What to expect ?

The new nearest neighbors is inspired largely on minimization of a L1 metric in neural networks. And although they are different algorithms, the result is still that two vectors are considered near if a sparse change can map them to each other. For music, it means that a song is considered near if only a few of the repetitions in the rhythm pattern change. Of course that can go in two directions: something can be added or something can be subtracted. Imagine a 4/4 beat with a 1/16th hi-hat overlaid. A near neighbor can be simply a 4/4 beat (the 1/16th being removed) or a 4/4 beat with a 1/16th hi-hat and a 1/8th snare (in this case only a 1/8th snare was added). The result is a nearest neighbor algorithm that will provide you with a series of candidates in all directions. Thereby you still have to decide on the direction in which you want to take the mix.

If you sometimes think: WTF did BpmDj suggest this time ? This is not a near neighbor, then just try to mix it. You will often be surprised by the result.

The Heat Problem

Aside from the new neighbors, BpmDj will use all available cores to upgrade the nearest neighbors. In doing so your processor might need to work somewhat harder than it ordinarily does. In our particular case we even had to open the computer, clean the processor fan and then develop further, otherwise the machine would crash after starting BpmDj.

The power consumption/heat problem is also real on phones. Our tests on a HTC made it so hot that it gave a battery malfunction warning (I didn't even know a phone could give such), then considered flying around the room in a cheerful dance to get away from the heat. Yet, before even getting to that point, it shut down after realizing it couldn't fly anyway. Just sayin' the next update might burn your house down. We solved that particular problem in typical engineering fashion by fully charging the phone, and then putting it in the refrigerator for a couple of hours while it performed the reanalysis

To push the point, in another room, a Kamboocha found itself fortunate to stand next to a machine from 1998, which was slowly working its way through a huge pile of MP3s. This lasted a couple of weeks. During that time the room was a cozy 25 degrees.