I would lean towards trigger "events" as well, but I'd probably want some input from DAW developers before I just wrote an extension myself.<br><br>Jeremy<br><br><div class="gmail_quote">On Tue, Dec 28, 2010 at 3:00 PM, Paul Giblock <span dir="ltr"><<a href="mailto:pgiblox@gmail.com">pgiblox@gmail.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">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.<br>

<font color="#888888">
<br>-Paul</font><div><div></div><div class="h5"><br><br><div class="gmail_quote">On Tue, Dec 28, 2010 at 2:29 PM, JohnLM <span dir="ltr"><<a href="mailto:johnlm@apollo.lv" target="_blank">johnlm@apollo.lv</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
Well I think the idea is quite good! I could think of few more uses,<br>
including real-time DJ "crossfade/mix" sync by beats, and such.<br>
<br>
I haven't looked into LV2 much yet, but one thing is sure. You can't<br>
make the plugin universal. Any host dealing with such plugin must be<br>
aware of it's purpose whether the output is simply audio clicks or some<br>
kind of event interface.<br>
<br>
As much as I understand LV2 does not mandate universal-use "filter"<br>
plugins as LADSPA did, so you're good with extending it as you see fit.<br>
Host code modifications will be required, but if you make it generic<br>
enough, the interface could be picked up by various projects.<br>
<div><br>
<br>
On Sun, 26 Dec 2010 01:58:13 -0500<br>
Jeremy <<a href="mailto:jeremybubs@gmail.com" target="_blank">jeremybubs@gmail.com</a>> wrote:<br>
<br>
> Hi all,<br>
><br>
> So I'm writing some LV2 plugins to wrap up the Aubio audio analysis<br>
</div>> library<<a href="http://aubio.org/" target="_blank">http://aubio.org/</a>>,<br>
<div>> and I'm not sure exactly how to handle functions like "onset"<br>
> detection. Currently, it just outputs clicks to an audio port (0 when<br>
> no beat, 1 when beat is detected).  However, this doesn't take<br>
> advantage of the power of LV2.  It is unclear to hosts and other<br>
> plugins exactly what sort of data is coming out.<br>
><br>
> I was thinking that maybe it would output MIDI, as midi matches the<br>
> "event based" aspect of beat detection.  Perhaps sending out MIDI<br>
</div>> beat clock signals <<a href="http://en.wikipedia.org/wiki/MIDI_beat_clock" target="_blank">http://en.wikipedia.org/wiki/MIDI_beat_clock</a>>?<br>
<div>> However, that doesn't really match the sort of data that the Aubio<br>
> functions detect. Maybe it could just send a midi note on event?<br>
><br>
> It seems like maybe some sort of LV2 specific extension might be in<br>
</div>> order? The Event Port <<a href="http://lv2plug.in/ns/ext/event/#EventPort" target="_blank">http://lv2plug.in/ns/ext/event/#EventPort</a>><br>
<div>> extension seems to define everything I need: sending timestamped<br>
> events with no extra information attached.  The question is: does it<br>
> require some sort of further extension to define what a beat port is<br>
> in the way the MidiEvent extension does?<br>
><br>
> Of course, this raises the question: Is a port specific for "beats"<br>
> even necessary?  I can think of a few cases:<br>
><br>
>    - DAW uses beat signals to set up markers on a track<br>
>    - DAW uses beat signals to break a percussive track up into beats.<br>
>    - Delay effect uses beat signals to have a timed delay<br>
>    - Automatic drummer adds on a percussion part to audio with<br>
> varying tempo<br>
>    - ? other beat-synchronous effects?<br>
><br>
> Anyway, I'm wondering what you all think would be the best option, or<br>
> whether you think functionality like this is even warranted in an LV2<br>
> plugin (should analysis plugins stick to VAMP?).  So let me know what<br>
> you think.<br>
><br>
> Jeremy Salwen<br>
<br>
</div><div><div></div><div>_______________________________________________<br>
Linux-audio-dev mailing list<br>
<a href="mailto:Linux-audio-dev@lists.linuxaudio.org" target="_blank">Linux-audio-dev@lists.linuxaudio.org</a><br>
<a href="http://lists.linuxaudio.org/listinfo/linux-audio-dev" target="_blank">http://lists.linuxaudio.org/listinfo/linux-audio-dev</a><br>
</div></div></blockquote></div><br>
</div></div><br>_______________________________________________<br>
Linux-audio-dev mailing list<br>
<a href="mailto:Linux-audio-dev@lists.linuxaudio.org">Linux-audio-dev@lists.linuxaudio.org</a><br>
<a href="http://lists.linuxaudio.org/listinfo/linux-audio-dev" target="_blank">http://lists.linuxaudio.org/listinfo/linux-audio-dev</a><br>
<br></blockquote></div><br>