[LAD] LV2 Beat reporting?
pgiblox at gmail.com
Tue Dec 28 20:00:08 UTC 2010
It sounds to me like the generic "Beat" Event would be a "TriggerEvent".
Triggers could be for clock, gates, envelopes, etc.. At least I think this
would model the way old modulars would interact fairly well. But: Is it
modeled as an audio-port with peaks to denote the triggers, or as an event
port with timed events? I'm leaning towards events personally.
On Tue, Dec 28, 2010 at 2:29 PM, JohnLM <johnlm at apollo.lv> wrote:
> Well I think the idea is quite good! I could think of few more uses,
> including real-time DJ "crossfade/mix" sync by beats, and such.
> I haven't looked into LV2 much yet, but one thing is sure. You can't
> make the plugin universal. Any host dealing with such plugin must be
> aware of it's purpose whether the output is simply audio clicks or some
> kind of event interface.
> As much as I understand LV2 does not mandate universal-use "filter"
> plugins as LADSPA did, so you're good with extending it as you see fit.
> Host code modifications will be required, but if you make it generic
> enough, the interface could be picked up by various projects.
> On Sun, 26 Dec 2010 01:58:13 -0500
> Jeremy <jeremybubs at gmail.com> wrote:
> > Hi all,
> > So I'm writing some LV2 plugins to wrap up the Aubio audio analysis
> > library<http://aubio.org/>,
> > and I'm not sure exactly how to handle functions like "onset"
> > detection. Currently, it just outputs clicks to an audio port (0 when
> > no beat, 1 when beat is detected). However, this doesn't take
> > advantage of the power of LV2. It is unclear to hosts and other
> > plugins exactly what sort of data is coming out.
> > I was thinking that maybe it would output MIDI, as midi matches the
> > "event based" aspect of beat detection. Perhaps sending out MIDI
> > beat clock signals <http://en.wikipedia.org/wiki/MIDI_beat_clock>?
> > However, that doesn't really match the sort of data that the Aubio
> > functions detect. Maybe it could just send a midi note on event?
> > It seems like maybe some sort of LV2 specific extension might be in
> > order? The Event Port <http://lv2plug.in/ns/ext/event/#EventPort>
> > extension seems to define everything I need: sending timestamped
> > events with no extra information attached. The question is: does it
> > require some sort of further extension to define what a beat port is
> > in the way the MidiEvent extension does?
> > Of course, this raises the question: Is a port specific for "beats"
> > even necessary? I can think of a few cases:
> > - DAW uses beat signals to set up markers on a track
> > - DAW uses beat signals to break a percussive track up into beats.
> > - Delay effect uses beat signals to have a timed delay
> > - Automatic drummer adds on a percussion part to audio with
> > varying tempo
> > - ? other beat-synchronous effects?
> > Anyway, I'm wondering what you all think would be the best option, or
> > whether you think functionality like this is even warranted in an LV2
> > plugin (should analysis plugins stick to VAMP?). So let me know what
> > you think.
> > Jeremy Salwen
> Linux-audio-dev mailing list
> Linux-audio-dev at lists.linuxaudio.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Linux-audio-dev