Category: DSP


Music search engine that uses melody, contour, or rhythm.

By Rainer Typke and friends

Melody Catcher

Melody based music search engine

By Jan van Os and Florian Bomers



Open source acoustic analysis API for music.

a joint effort between Music Technology Group at Universitat Pompeu Fabra in Barcelona and the MusicBrainz project.

 Screen Shot 2014-11-29 at 3.07.49 AM

An example:

The architecture of Audacity

Open source audio editor.

By James Crook at

How to install sms-tools on Mac OS X

Sound analysis/synthesis tools for music applications

By Music Technology Group at Universitat Pompeu Fabra

(update: So far, the tools are painfully slow under Macports. Ubuntu performance is way faster.)

Screen Shot 2014-11-26 at 10.02.34 PM

These tools are used in:  Audio Signal Processing for Music Applications by Prof Xavier Serra, Prof Julius O Smith, III. Sms-tools was designed to run in Ubuntu Linux. After many failed attempts, it is now running in Mac OS 10.9 using macports. Although the performance is better way better using Ubuntu – on the same Macbook.

I had tried using Anaconda – but ran into problems installing pygame.

Assuming that you already know how to install macports. Then install all the python modules described at the sms-tools github page. The macports versions of the modules are prefixed by py27- , For example:

  • py27-cython
  • py27-game
  • py27-matplotlib
  • py27-ipython

also used: sudo easy_install cython

After installing all of the modules, then clone the sms-tools repository and recompile the Cython functions. You will get a screen full of warnings – but it shouldn’t matter.


Beat detection

Using JavaScript and the Web Audio API

By Joe Sullivan at Beatport Engineering

Screen Shot 2014-11-26 at 12.09.51 AM


In Web Audio.

By DeeJ Designs


Interactive navigable audio visualization using Web Audio and Canvas.

By Katspaugh

ep-413 DSP – week 12

Web Audio API


A good place to start

There are many links to Web Audio project right here on this blog:

Technical reference manual

Comprehensive guide from Mozilla Developer Network

Quick tutorial

  • Open a javascript console in a Web browser. This example uses Chrome. From the Chrome menu, select View | Developer | Javascript console
  • Type the following commands (in the shaded blocks) into the console:

Assign an instance of the Web Audio class to the object: context

context = new AudioContext();

Make an oscillator node

osc = context.createOscillator();

Connect the oscillator to the audio output (speaker)


Turn on the oscillator at the current time and plays a tone.


Turn of the oscillator


For more basics, see: “Using the Web Audio API”, at the Mozilla Developer Network:

Basic html examples:

Demonstrated in class. Download from here:

  • Oscillator
  • Audio file player

HTML versions of examples from Boris Smus’s book:


Tutorials and references

Development (libraries, frameworks)

tz – examples


Write a composition to induce magical effects.

Here is an example from Aseem Suri 

The project was derived from computer technology, but the overall effect was that people would go into a mysterious room, for a minute, and when they emerged, they would be smiling and happy.

Due on December 15th (last class)

Interval signals online

“Interval signals, signature tunes, airchecks and identification announcementsfrom international, domestic and clandestine radio stations around the world.”

By David Kernick, in cooperation with Documentary Archives Radio Communications

Radio Burkina:

Azerbaijan Radio – Radio Respublika: