Using Vamp Plugins and Hosts > Plugin and Host Announcements

QM Vamp Plugins v1.6 now available

(1/1)

cannam:
Version 1.6 of the QM Vamp Plugins -- a set of audio analysis plugins in the
Vamp plugin format, developed at the Centre for Digital Music at Queen Mary,
University of London -- is now available for download.

Plugins included are note onset detector, beat and barline tracker, tempo
estimator, key estimator, tonal change detector, structural segmenter, timbral
and rhythmic similarity, wavelet scaleogram, adaptive spectrogram, note
transcription, chromagram, constant-Q spectrogram, and MFCC calculation.

This is a major feature release which adds four new plugins (adaptive
spectrogram, polyphonic transcription, wavelet scalogram, and
bar-and-beat tracker) and a new method for the beat tracker.

For downloads, please see:

 http://isophonics.net/QMVampPlugins

The plugins are available in binary form only and may be freely used for any
purpose, and redistributed for non-commercial purposes only.  Supported
platforms are 32- and 64-bit Linux, 32-bit Windows, and OS/X 10.4 or newer
(Intel/PPC universal).

For documentation of these plugins, please see:

 http://www.vamp-plugins.org/plugin-doc/qm-vamp-plugins.html


Chris

ashley:
Hi,

I am new to VAMP. I'm trying to use the Tempo Tracker to detect the tempo of various samples. When I give it aif files everything works fine as follows:

sonic-annotator -t temptest.n3 drum_loop_125.aif -w csv --csv-stdoutCSVFeatureWriter::setParameters
stdout ->
RDFTransformFactory: NOTE: Transform is:
<transform
    id="vamp:qm-vamp-plugins:qm-tempotracker:tempo"
    pluginVersion=""
    program=""
    stepSize="512"
    blockSize="1024"
    windowType="hanning"
    startTime="0.000000000"
    duration="0.000000000"
    sampleRate="0">
  <parameter name="dftype" value="3"/>
  <parameter name="method" value="1"/>
  <parameter name="whiten" value="0"/>
</transform>

NOTE: Transform does not specify a sample rate, using default rate of 44100
NOTE: Loaded and initialised plugin for transform "vamp:qm-vamp-plugins:qm-tempotracker:tempo"
Extracting features for: "drum_loop_125.aif"
QuickTimeFileReader: path is "/Users/ashleyallen/Development/MixerPrototype/Ashley/drum_loop_125.aif"
QuickTime: File is not protected with DRM
QuickTime: 2 channels, 44100 kHz
QuickTimeFileReader::QuickTimeFileReader: frame count is now 671717, error is """
Decoding drum_loop_125.aif... Done
Opened 2-channel file or URL "drum_loop_125.aif"
Extracting and writing features... 97%QuickTimeFileReader::~QuickTimeFileReader
Note: nonZeroCount was 1312, is now 1312
Extracting and writing features... Done
"drum_loop_125.aif",0.011609977,126.048,"126.05 bpm"
=========================================
When I give it a wav file I get the following output:
sonic-annotator -t temptest.n3 PA0501s_Lop130_Full_House.wav -w csv --csv-stdout
CSVFeatureWriter::setParameters
stdout ->
RDFTransformFactory: NOTE: Transform is:
<transform
    id="vamp:qm-vamp-plugins:qm-tempotracker:tempo"
    pluginVersion=""
    program=""
    stepSize="512"
    blockSize="1024"
    windowType="hanning"
    startTime="0.000000000"
    duration="0.000000000"
    sampleRate="0">
  <parameter name="dftype" value="3"/>
  <parameter name="method" value="1"/>
  <parameter name="whiten" value="0"/>
</transform>

NOTE: Transform does not specify a sample rate, using default rate of 44100
NOTE: Loaded and initialised plugin for transform "vamp:qm-vamp-plugins:qm-tempotracker:tempo"
Extracting features for: "PA0501s_Lop130_Full_House.wav"
Retrieving audio data... Done
Opened 2-channel file or URL "PA0501s_Lop130_Full_House.wav"
Extracting and writing features... 90%Note: nonZeroCount was 320, is now 320
Extracting and writing features... Done

============================
How can I tell whats causing the process to abort at 90%? Am I doing something wrong? I really just want the BPM. Any help will be greatly appreciated. FYI. I am using version 1.6 of the qm plugins. 

Thanks,
Ashley

cannam:
How long is the audio file?  If it's very short, then it's possible that there may be an off-by-one error or some such in the counter used for progress display, that is not usually noticeable but becomes visible when the file is so short as to need only 10 or so processing blocks.

The QM tempo tracker plugin I think needs a certain amount of data before it will even attempt to calculate a value -- a few seconds, anyway (I'm not sure of the exact amount) -- so this would probably also explain why there seems to be no result.  Of course, any tempo estimator by definition needs a certain period of time to work from!  You may find that the simple tempo estimator plugin in the example plugin set will work with shorter files than the QM plugin.


Chris


endolith:
These aren't open source, are they?

Would it be possible for the developers to add the complex Morlet wavelet to the list?  As I understand it, taking the absolute value gives a result very similar to the normal Fourier spectrogram, except with a better time/frequency tradeoff.

Examples:
http://www.ecs.syr.edu/Faculty/lewalle/gear.htm
http://www.jpp.krakow.pl/journal/archive/0905_s4/articles/02_article.html
http://www.phy.uct.ac.za/courses/python/examples/moreexamples.html#wavelet-analysis-continuous-wavelet-transform

Also, why does it only allow 16 scales?  Sorry if I misunderstand something, but it seems like it could go higher.

Navigation

[0] Message Index

Go to full version