MLPack Experiments

As the end of my internship period was approaching, I was asked to move from feature extraction to working on the machine learning models. For the past few weeks I have been working with multiple libraries to retrieve information from musical tracks, and it was time to test what I had so far on machine learning models. The library that was chosen for the implementation of those ML models was the C++ library Mlpack, which is a machine learning library Read more…

Android Development with Cordova

Cordova is a framework that allows you to use your existing Web Application code and wrap it in a system Webview to be deployed as a mobile application. This week was spent mainly cleaning up and modifying the original app and testing it out on the Android tablets using Cordova. The importance of having a responsive layout was highlighted in this stage of development as the application showed apparent inconsistencies in the design when deployed on the tablet as opposed Read more…

Key Detection & Dynamic Complexity

The work on the new project continued; however, slow-paced. Experimentation and gathering data was the highlight of the whole week, as I started working with a new audio processing library “Essentia”. Essentia is a C++ library used for the purpose of analyzing and processing audio signals and files. It has a wide reach over the set of algorithms it contains, which made for an interesting exploration over the course of the week. Since our testing of the tempo deviation last Read more…

Tempo Detection

Unlike the past few weeks, the progress in this one was a bit bumpy and slow. The work for most of this week was based on the research done last week and a continuation of it. While a certain amount of time was spent writing and implementing code, the biggest chuck of this week was concerned with research and attempting to understand the problems presented as hand. The first test performed on the data samples involved measuring how good the Read more…

Higher-order Functions and Automation

A trap that novice web developers can fall into is being overwhelmed by the plethora of tools and frameworks out there, thereby leading them to jump from one tool to another rather than diving in deep with any particular one to discover and utilize it to its full prowess. Having gone back to my original application I realized there were a number of improvements that could be made to make the overall experience better. One such improvement was with regards Read more…

Reacting to React

This week went past fairly quick and smooth and I had the opportunity to delve in a little deeper into the React Ecosystem when configuring the components on our admin system dashboard. At the start of the week I managed to get the Admin system packaged and bundled with Electron to make it distribution ready for cross platform installation. Since I packaged Electron using Electron builder I had the chance to play around with the package.json file and see firsthand Read more…

On Music Information Retrieval

Research is most probably the most important aspect of any project; implementation can go as smooth as a breeze if done right. For this exact reason, most of this week’s work was dedicated towards research, in preparation for my new project. Music information retrieval is a small but rapidly growing field of research; concerned with extracting information from music for the purpose of scientific analysis. MIR can be divided into four sections, musical content, musical context, bibliographical content, and user Read more…

Finishing Up 1st Project

As the project I am working one came closer to finishing, many additions, touches, and bugfixes were needed to be performed on the source code. Below is a description that walks you through the events of this week. Before getting into the code, it is worth mentioning that a major chunk of my time this week went towards training the ML model to get better results than the last attempt of last week. Though very close, the model failed to Read more…

Photo by Charles Deluvio 🇵🇭🇨🇦 on Unsplash

Registration Slips with QR

On top of filling the registration slip with the participant and registration details, a QR code is added too. This code will be generated using the qrencode library and the png library. These registration slips are then sent to the provided emails. Templates are used to render the contents of the registration slips as well as the email body. When change is detected in an order document in the database and its status is found out to be “completed”, we Read more…

Gaining Traction

Having deployed the main application previously I had been struggling to get the Admin system up and running but after receiving some help setting up the DataProvider and AuthProvider I was finally able to get in on the action and get some work done. React Admin is a great tool for creating Administrative systems primarily because of all the builtin functionality that it supports out of the box. Once you have your authorization and networking protocols setup you can start Read more…