How does The Neumerator work?
Want to take The Neumerator to the next level? It's all on GitHub:
github.com/justinsalamon/neumerator
The Neumerator will take any audio file and generate a medieval neume-style manuscript from it! As you might have guessed this is a hack... more the specifically the hack I worked on together with Kristin Olson and Tejaswinee Kelkar during this month's Monthly Music Hackathon NYC (where I also gave a talk about melody extraction). How does The Neumerator work?You start by choosing a music recording, for example "Ave Generosa" by Hildegard Von Bingen (to keep things simple we'll work just with the first 20 seconds or so): The first step is to extract the pitch sequence of the melody, for which we use Melodia, the melody extraction algorithm I developed as part of my PhD. The result looks like this (pitch vs time): Once we have the continuos pitch sequence, we need to discretize it into notes. Whilst we could load the sequence into a tool such as Tony to perform clever note segmentation, for our hack we wanted to keep things simple (and fully automated), so we implemented our own very simple note segmentation process. First, we quantize the pitch curve into semitones: Then we smooth out very short glitches using a majority-vote sliding window: Then we can keep just the points where the pitch changes, and we're starting to get close to something that looks kinda of "neumey": Finally, we run it through the neumerator manuscript generator which applies our secret combination of magic, unicorns and gregorian chant, and voila! Being a hack and all, The Neumerator does have its limitations - currently we can only draw points (rather than connecting them into actual neumes), everything goes on a single four-line staff (regardless of the duration of the audio being processed), and of course the note quantization step is pretty basic. Oh, and the mapping of the estimated notes onto the actual pixel positions of the manuscript is a total hack. But hey, that's what future hackathons are for!
Want to take The Neumerator to the next level? It's all on GitHub: github.com/justinsalamon/neumerator
0 Comments
On Saturday June 20th I gave a talk about melody extraction at the Monthly Music Hackathon NYC hosted by Spotify's NYC office. The talk, titled "Melody Extraction: Algorithms and Applications in Music Informatics", provided a bird's eye view of my work on melody extraction, including the Melodia algorithm and a number of applications such as query-by-humming, cover song ID, genre classification, automatic transcription and tonic identification in Indian classical music (all of which are mention in my melody extraction page and in greater detail in my PhD thesis). In addition to my own talk, we had fantastic talks by NYU's Uri Nieto, Rachel Bittner, Eric Humphrey and Ethan Hein. A big thanks to Jonathan Marmor for organization such an awesome day!
Oh, we also had a lot of fun working on our hack later on in the day: The Neumerator! This weekend my partner in crime Charlie Mydlarz and myself participated in the Science in the City hackday which was part of the NYC 2014 World Science Festival. Two volunteers, Mark and Philip, joined the team too! We worked on further developing our previous hack on a platform for crowdsourcing urban sound tagging, taking it from a prototypical proof of concept to a system that allows us to push sounds to a server and automatically create annotation tasks that are managed via crowdcrafting. Most of the work was on server-side behind the scenes stuff that I can't really "show", so here's a screenshot of the latest version of the interface instead: This time round, we incorporated a new citizen science aspect - handing out microphones to participants so that they can contribute their own recordings to the project! In this way, the platform we are developing will not only help us compile a large dataset of labeled urban sounds (e.g. for training machine learning algorithms and creating interactive sound maps), but it will also enable communities interested in recording and analyzing the sound of their local environment to do so through a set of intuitive interfaces. The hack won the "Best Social Impact Award", and we even got a shiny medal :)
This past weekend we participated in the Science and the City Hackfest which took place at ITP @ NYU. The goal was to propose/work on hacks related to citizen science and New York City. Our team, "NYCSound": Charlie Mydlarz, Daniel Lombraña, Anita Schmid and myself. Our hack: a web-app for crowdsourcing annotations (tags) of urban sounds, built on top of the crowdcrafting framework. The idea is that participants can label the start/end times of sound sources in field recordings (e.g. "car horn", "siren", "jackhammer"), thus helping us curate a large dataset of annotated urban sounds. Such a dataset would be highly valuable for research on urban sound auto-tagging using supervised machine learning algorithms. The hack won the "Best Science Award" and "Best Social Impact Award" - Congratulations to everyone on the team! I'm afraid I can't actually share the hack just yet - we're hoping to turn it into a deployable system, and so it's still at internal development stages, but once it's ready I'll be sure to make a second announcement. Here's a screenshot though: And our shiny certificates :)
|
NEWSMachine listening research, code, data & hacks! Archives
March 2023
Categories
All
|