An infinite jukebox clone using librosa.
This program attempts to recreate the wonderful Infinite Jukebox on the command line in python. It plays the song beat by beat and may jump to similar beats at any time. This way, the song can play infinitly.
The process is devided into two steps: Analysing the audio and playing it. Analysing takes some time, so the result is saved next to the audiofile.
pip install -r requirements.txt
python player.py <filename>
Any help would be appreciated
-
Improve audio analysis. I don't really know what MFCC or a Constant-Q chromagram is. The current implementation works ok-ish, but there can probably be big improvements.
-
Improve beat selection. Currently the selection of the next beat depends only on the current beat and a set of precomputed probabilities. Jumps that go back or wide are slightly privileged. I guess a lot more is possible, e.g. to prevent the song from looping through the same part again and again.
- Of course, the now defunct original Infinite Jukebox
- A functional fork called Eternal Jukebox (code). It uses the audio-analysis endpoint at spotify
- Remixatron, a similar project to this one.