I hope to streamline the installation process greatly in the near future, but for now, Susurrant is divided into several packages, each of which carries out a different function.


Currently, running Susurrant yourself requires a great deal of Unix and command-line expertise. Here are some of the external applications that must be installed:

Corpus Acquisition

scdown is a downloader for SoundCloud: it lets you collect all tracks, social connections, and comments for a given user, storing the audio in Amazon S3 and text/metadata in a Neo4j database. It can be run locally, or as a one-off process on Heroku (recommended for larger datasets).

Susurrant has no intrinsic dependency on SoundCloud and can be used with any corpus stored in Neo4j with the right format; however, this will set up the metadata and relations appropriately for analysis.


susurrant-py contains a plethora of scripts to analyze audio files and Neo4j-stored metadata for Susurrant. This is the main point of entry for processing; running GNU make in this repository will carry out the analysis from start to finish.

susurrant-utils provides certain utilities that are needed by the Python scripts, and must be present in the location specified in the Makefile.

Visualization and Sonification

Finally, susurrant-elm is the browser-based interface for Susurrant’s output. This client-side application can be run on your computer, or shared over the web as in the demo on this site.

As noted above, all of this is only a temporary arrangement while the different components of Susurrant get folded into a single package (most likely the Scala application that is now susurrant-utils). Once this process is complete, collection, analysis, and visualization/sonification will all be achievable through a graphical interface accessed via the browser.