Recent Posts

Pages: 1 2 [3] 4 5 ... 10
Plugin and Host Announcements / Constant-Q library and Vamp plugin
« Last post by cannam on August 09, 2014, 13:34:32 »
Announcing a new C++ library and Vamp plugin implementing the Constant-Q transform of a time-domain signal.

The Constant-Q transform is a time-to-frequency-domain transform related to the short-time Fourier transform, but with output bins spaced logarithmically in frequency, rather than linearly. The output bins are therefore linearly spaced in terms of musical pitch. The Constant-Q is useful as a preliminary transform in various other methods such as note transcription and key estimation techniques.

This library provides:

 * Forward transform: time-domain to complex Constant-Q bins
 * Forward spectrogram: time-domain to interpolated Constant-Q magnitude spectrogram
 * Inverse transform: complex Constant-Q bins to time domain

The Vamp plugin provides:

 * Constant-Q magnitude spectrogram with high and low frequency extents defined in Hz
 * Constant-Q magnitude spectrogram with high and low frequency extents defined as MIDI pitch values
 * Pitch chromagram obtained by folding a Constant-Q spectrogram around into a single-octave range

The code is provided with full source under a liberal licence, and plugin binaries are provided for Windows, OS/X, and Linux.

The method is drawn from Christian Schörkhuber and Anssi Klapuri, "Constant-Q transform toolbox for music processing", SMC 2010. See the file CITATION for details. If you use this code in research work, please cite this paper.
Plugin Development / Re: Visualisation Plug-In, with Matrix Processing
« Last post by cannam on July 13, 2014, 14:26:56 »
Hi Jean-Louis -- that's a really good writeup on your blog there, thanks! I've added a link to it on the wiki page at You're quite right that the documentation has always been a bit weak on this subject.

Plugin Development / Visualisation Plug-In, with Matrix Processing
« Last post by jean-louis on July 11, 2014, 20:54:35 »
I have been developing an "IMMF0Salience" plug-in that provides an estimate of fundamental frequencies (F0) for audio signals, which can be found at It is still work in progress, but can already be used in some cases.

I wanted to mention in this forum that, recently, I found out the solution for an issue that was bugging me for all this time: the algorithm I developed is based on some matrix processing called "Non-negative Matrix Factorization" (NMF), meaning that it operates most meaningfully when I can process several frames in one go. The architecture of the framework for Vamp-Plugins is appropriate for frame by frame processing, and matrix-like processing is possible, but somewhat tricky. It took me a while, but I could at last make that work, and the solution is on this branch:

I describe in more details how I do this, and also the process that led me to this solution on my "blog":

To put it in a nutshell: I did not really understand how the SampleType and the SampleRate attributes for the OutputDescriptor worked, at least not from the documentation. Digging in some other plug-in, I found the correct combination, and that actually helped me understand what the documentation was describing... Don't get me wrong: I do not say the documentation is bad or missing something, but rather that some more examples (or tutorials) would have helped me to figure that out easier.

I hope this little piece of information may help others to develop such plug-ins! Comments are welcome, of course.

Plugin Development / Re: Visualisation plug-in development
« Last post by jean-louis on July 11, 2014, 20:25:41 »
Hi Chris,

This topic has been inactive for quite some time! As it were, I solved also a long time ago this issue (cross-compiling for Windows), and I managed to compile a version for Windows, from Linux, as you suggested. Actually it was rather complicated, I had to compile ATLAS under Windows, directly, and I used Cygwin, although probably only to run some Unix compiler (mingw?). I started to describe that there:, but that's still a bit elliptic. I did not make the Windows binary for the latest version of the plug-in, so I unfortunately can't remember much of what I then did, but it worked! When I find some time again (and a Windows machine to build the ATLAS lib...).

I will anyway make another topic to announce the availability of the plug-in in a more formal way.

VoilĂ  ! Just thought would be good to close the topic in a nice way! Thanks again for your help.


As a scientist, I have been using Sonic Visualizer for many years in time segmentation domain. I work on microtiming and use a lot onset detectors. This tool is very useful for my researches. :)

Recently, while I still can hear without any problem the musical excerpts that I analyse, it became impossible to hear any sound from "libray sample player" plugin (whatever "tap", "click", "beep" selected). I cannot work without this fantastic feature (developed by Chris Cannam) which allows me to verify (as a musician) the relevance of the detected onsets.

I use Sonic Visualizer v 2.2 and v 2.1 on two different computers, each one with Windows XP. Same problem occurs. :-\

Many thanks by advance  for your help,

Best regards
Hi all,

I don't understand. I have been using Sonic Visualiser for several years without any problem for microtiming analysis (scientific researches).

I can hear the audio of wav source, but, whatever onset detector I try (or any plugin doing another kind of segmentation), it's now impossible to ear the "tics" (result of segmentation), a very convenient feature to verify, as a musician, the relevance of the analysis. I tested v 2.2 on a computer and v 2.3 on another one.
Very strange, because the options related to the tics are very simple.

Anybody could help me ?

Many thanks by advance.
Getting and Using Vamp Plugins / detecting onsets by spectra
« Last post by amcgraw on June 06, 2014, 23:23:21 »
I have an audio file consisting of alternating slap and open tones performed on a conga drum. Is there a plugin (or method with existing plugins) that would allow me to detect just the slap or just the open tones? I'm working in Sonic Visualizer.
Thank You!
Host Forum: Sonic Visualiser / Analyzing Csound f tables
« Last post by phiroc on June 03, 2014, 15:26:40 »

I am aware of the fact that Sonic Visualiser is not a real-time sound analyzer, but I wonder if there is a way to analyze Csound f tables with it, perhaps with a plug-in.

Many thanks.

Host Forum: Sonic Visualiser / Re: Importing Annotations
« Last post by fields_of_urris on May 06, 2014, 17:03:01 »
Host Forum: Sonic Visualiser / Re: Importing Annotations
« Last post by cannam on May 06, 2014, 16:04:28 »
Hi there -- I'm not sure about the details of this file layout, but SV definitely should not crash when trying to import it!

Can you attach here, or send to me by email, an example annotation file? (I'm cannam at

Pages: 1 2 [3] 4 5 ... 10