Week 4 is over and a month is already done! To reflect on the whole journey so far in general, I feel if you define my learning over time on a graph, it'll come out to be an exponential one. I could have achieved a lot more ideally, but my working pace is catching up only, along with my working knowledge. And this is what is exciting, as going forward, I think a lot more can be achieved in a lot less time, which will also be essential to my project.
This week I was supposed to deliver the POC, but it has been running a little behind schedule, mainly now due to the problems I am facing with the EQ changes (should be able to resolve them any time soon now). What is complete though is the crossfader transition from one deck to another, according to the BPM of the track.
For example: If you are playing 'Walking on a Dream' by Empire of the Sun (really interesting band), which is at 127 BPM on Deck1, you can decide to switch to the Deck2 song, over N number of bars. I want the user to choose the N, but right now its hard coded to 2 i.e., the transition will happen over 2 bars.
This is a very simple implementation as of now, but a very important base on which other desired features can be built upon (like EQ changes which I am trying). This looks like the AutoDJ feature but functions on separate logic involving the number of bars which is being taken into account.
Since, all of this is for the POC, I have been using the AutoDJ module to use the 'Fade Now' button, and have written separate code only for the logic. Below is a very shabby attempt of explaining what I am doing. Usually I do this in Lucid Charts or something similar, and will probably replace it with that in due time. In short, the 'Fade Now' button of the AutoDJ feature is mine now, for the purposes of this POC.
You can find the code on my Github.
What next?
1. Resolve the issues with the EQ changes
2. Finish the POC, discuss the observations and make the future plans accordingly
3. Solve the 2 bugs that I have on my list ASAP
See you next week! :)