Hey RJ,
I can give you only partial answers, as I am travelling at the moment.
Please find them below.
> Hey guys,
>
> I've got some questions about the VAMP plugins side of the project:
>
> * What should I name my plugin? From the code, it looks like only plugins
> named "qm-tempotracker:0", "beatroot:0", "marsyas_ibt:0", and "aubiotemp:0"
> will show up in the preferences.
Actually, those names had been hardcoded as they are all the beat-tracking plugins for vamp.
Beside that, vamp analysis will work with any plugin which follows the lines I am describing below.
> * What input/output arguments does the plugin have to implement?
Mixx can work with any plugin which respects VAMP SDK (see [1]), provided that its InputDomain is TimeDomain ,since Vamp FFT algorithm appears not to be thread-safe.
Moreover,
for a beattracking plugin, a Feature f (see [2]) for each detected beat is expected, such that
f.hasTimestamp = true;
f.timestamp = time elapsed from the beginning of the track ( in RealTime )
Please have a look at /mixxx/vamp-plugins/plugins/MixxxBpmDetection.*
for a short example (it implements "legacy" mixxx bpm detection through soundtouch).
> * How can the plugin expose its own configuration options to the rest of Mixxx
> via preferences?
Not implemented. Do we need it?
> * If I do end up getting my plugin loaded and select it in the preferences --
> does Mixxx re-calculate the beats of tracks that have already been analyzed?
If the track is bpm locked, no. Otherwise it will recalculate the beats.
> * What if I only put a beat tracking plugin in my VAMP plugin. Does this mean
> Mixxx will lose the ability to calculate replay-gain because there is no
> replaygain plugin in my plugin-library?
If the default plugin is deleted, Mixxx will lose replaygain.
Please note that multiple plugins can be used at the same time.
Hey RJ,
I can give you only partial answers, as I am travelling at the moment.
Please find them below.
> Hey guys, r:0", "beatroot:0", "marsyas_ibt:0", and "aubiotemp:0"
>
> I've got some questions about the VAMP plugins side of the project:
>
> * What should I name my plugin? From the code, it looks like only plugins
> named "qm-tempotracke
> will show up in the preferences.
Actually, those names had been hardcoded as they are all the beat-tracking plugins for vamp.
Beside that, vamp analysis will work with any plugin which follows the lines I am describing below.
> * What input/output arguments does the plugin have to implement?
Mixx can work with any plugin which respects VAMP SDK (see [1]), provided that its InputDomain is TimeDomain ,since Vamp FFT algorithm appears not to be thread-safe.
Moreover,
for a beattracking plugin, a Feature f (see [2]) for each detected beat is expected, such that
f.hasTimestamp = true;
f.timestamp = time elapsed from the beginning of the track ( in RealTime )
Please have a look at /mixxx/ vamp-plugins/ plugins/ MixxxBpmDetecti on.*
for a short example (it implements "legacy" mixxx bpm detection through soundtouch).
> * How can the plugin expose its own configuration options to the rest of Mixxx
> via preferences?
Not implemented. Do we need it?
> * If I do end up getting my plugin loaded and select it in the preferences --
> does Mixxx re-calculate the beats of tracks that have already been analyzed?
If the track is bpm locked, no. Otherwise it will recalculate the beats.
> * What if I only put a beat tracking plugin in my VAMP plugin. Does this mean
> Mixxx will lose the ability to calculate replay-gain because there is no
> replaygain plugin in my plugin-library?
If the default plugin is deleted, Mixxx will lose replaygain.
Please note that multiple plugins can be used at the same time.
Thanks,
Vittorio
[1] https:/ /code.soundsoft ware.ac. uk/embedded/ vamp-plugin- sdk/classVamp_ 1_1Plugin. html /code.soundsoft ware.ac. uk/embedded/ vamp-plugin- sdk/structVamp_ 1_1Plugin_ 1_1Feature. html
[2] https:/