Menu

#26 analysis layer input musings for vamp

open
nobody
None
5
2006-06-13
2006-06-13
No

Just to keep up my weekly quota of feature requests :-)

The attached image shows the chromogram for a melody
(and accompaniment) played on a piano. The melody
notes are written in light blue on top of the pane
display from SV.

Notice that the first note is identified initially as
D, rather than E. this is probably because of the
silence occuring before the note.

Also notice that the sixteenth-note E in the melody
is detected in the chromogram, but it is placed almost
a 16th note later in the chromogram display.

It would be nice to have the chormomgram analysis
aligned with the events in the audio.

A nice way of doing this would be to allow vamp
plugins to accept analysis layers from the host
application. The plugin could then analyze the
audio data based in some way on the input analysis
data. In this case, a note onset analysis layer
could provide assistance in segmenting the music
into regions for the chromogram display.

If no analysis data was given to the plugin, it would
revert to its default segmentation method. Perhaps
the layer could be selected from a list of valid input
layers in the parameter settings window for the
plugin (e.g. a drop-down list of all available
time-instants layers in this case).

Discussion

  • Craig Stuart Sapp

    Example output from the Chromogram plugin

     
  • Chris Cannam

    Chris Cannam - 2006-06-15

    Logged In: YES
    user_id=13489

    Yes, there are various places in which it would be useful
    for plugins to be able to accept extra inputs as well as (or
    instead of) audio.

    As another example, the QMUL tempo tracker plugin is really
    two component internally -- an onset detector similar to the
    Aubio complex-domain detector, and a tempo tracker that
    tries to resolve the onsets into beats. The latter
    component doesn't look at the audio input at all; its only
    input is the onset strength estimation output by the onset
    detector. It would be useful to be able to separate these
    out and provide a separate onset detector plugin as input to
    the tempo tracker (i.e. replacing the audio input
    completely). Unlike your suggestion, this is just about
    technically possible with Vamp plugins, but it isn't at all
    practical in SV and wouldn't really feel right as a use of
    the Vamp API. This sort of thing would really call for a
    modular-synth-style routeable host.

    Maybe for Vamp 2.0.

     
  • Chris Cannam

    Chris Cannam - 2006-06-15

    Logged In: YES
    user_id=13489

    Yes, there are various places in which it would be useful
    for plugins to be able to accept extra inputs as well as (or
    instead of) audio.

    As another example, the QMUL tempo tracker plugin is really
    two component internally -- an onset detector similar to the
    Aubio complex-domain detector, and a tempo tracker that
    tries to resolve the onsets into beats. The latter
    component doesn't look at the audio input at all; its only
    input is the onset strength estimation output by the onset
    detector. It would be useful to be able to separate these
    out and provide a separate onset detector plugin as input to
    the tempo tracker (i.e. replacing the audio input
    completely). Unlike your suggestion, this is just about
    technically possible with Vamp plugins, but it isn't at all
    practical in SV and wouldn't really feel right as a use of
    the Vamp API. This sort of thing would really call for a
    modular-synth-style routeable host.

    Maybe for Vamp 2.0.

     

Log in to post a comment.