*** trebmuh has quit IRC | 00:16 | |
*** Yruama_Lairba has quit IRC | 02:16 | |
*** JLye has quit IRC | 04:28 | |
*** deva has joined #lv2 | 06:54 | |
*** m4l3z has joined #lv2 | 07:53 | |
*** trebmuh has joined #lv2 | 09:13 | |
*** m4l3z has quit IRC | 10:56 | |
*** rncbc has joined #lv2 | 11:16 | |
*** m4l3z has joined #lv2 | 13:27 | |
*** edogawa has joined #lv2 | 13:29 | |
*** Yruama_Lairba has joined #lv2 | 14:14 | |
*** digidog has joined #lv2 | 14:21 | |
*** vktec has joined #lv2 | 15:38 | |
vktec | The instantiate function here uses malloc, so shouldn't that mean that the plugin can't use lv2:hardRTCapable? http://lv2plug.in/book/#_amp_c | 15:39 |
---|---|---|
ventosus | vktec: 'run', 'connect_port' must not block to be rt-safe, 'instantiate', 'cleanup' are fine to block | 15:44 |
*** digidog has quit IRC | 15:44 | |
vktec | Ahhh, okay | 15:45 |
vktec | That makes sense. Thanks | 15:45 |
ventosus | you can read up on the difference of 'instantiattion' vs 'audio' class function here: http://lv2plug.in/ns/lv2core/ | 15:46 |
vktec | Thanks | 15:47 |
vktec | Another quick question: Why does the amp example's instantiate function malloc, then assign that to a pointer and then cast the pointer before returning? Why not just `return malloc(sizeof(Amp));`? | 15:50 |
vktec | Is it just for documentation reasons, so you have a template in which you can set properties, etc. later on? | 15:51 |
vktec | (Also, there's no need to cast malloc. It returns void *, which is compatible with all pointer types) | 15:52 |
ventosus | vktec: you're right of course, maybe it is for documentation purposes, maybe it has been written by someone used to C++, don't know | 15:58 |
*** edogawa_ has joined #lv2 | 15:58 | |
*** edogawa has quit IRC | 15:58 | |
ventosus | but yes, usually you want to set some properties in your newly instantiated chunk of memory... | 15:59 |
vktec | Okay | 15:59 |
vktec | Thanks for the help, ventosus | 15:59 |
ventosus | y/w | 16:00 |
*** JLye has joined #lv2 | 16:14 | |
*** yann-kaelig has joined #lv2 | 16:21 | |
*** edogawa_ is now known as edogawa | 16:54 | |
*** UgJkA has quit IRC | 18:17 | |
*** ugjka_ has joined #lv2 | 18:17 | |
*** ugjka_ is now known as ugjka | 18:19 | |
*** ugjka is now known as UgJkA | 18:20 | |
*** UgJkA is now known as ugjka | 18:20 | |
*** ugjka is now known as UgJkA | 18:24 | |
*** JLye has quit IRC | 19:15 | |
vktec | > The extension_data() function returns any extension data supported by the plugin. | 19:19 |
vktec | What is "extension data"? | 19:19 |
ColaEuphoria | vktec, http://lv2plug.in/doc/html/group__lv2core.html#ae907a7668d6579f099ac08c134b2e634 | 19:22 |
ColaEuphoria | it's stuff that the plugin communicates with the host for any additional functionality. iirc it's used in the UI extension | 19:23 |
ColaEuphoria | if your plugin is standard and not using a UI you can just return NULL | 19:23 |
ColaEuphoria | Yeah, it's used in the UI extension. So if you look at "Simple Oscilloscope" in the LV2 book it's used to tell the host about your UI functions | 19:24 |
vktec | I found that page already, but I still don't really understand. Is there a description of what an "extension" is? I'm still very new to the inner workings of LV2 | 19:24 |
vktec | Ah, I'll take a look | 19:24 |
ColaEuphoria | An extension is just an arbitrary extension to the LV2 standard. It's used for communicating extra data to the host | 19:25 |
ventosus | vktec: LV2 has been designed to be extendable, so pretty much anything but the core of LV2 is an extension | 19:25 |
vktec | So an extension has to be supported by both the host and the plugin? | 19:26 |
ColaEuphoria | Because in the most basic form, the only thing a plugin tells the host about is the LV2_Descriptor, which may not be enough if you have extra stuff going on | 19:26 |
ColaEuphoria | vktec, yes | 19:26 |
ventosus | for the DSP part of the plugin, extension_data is used to 'register' structures for e.g. the host to run a worker thread or save/restore arbitrary state for the plugin | 19:26 |
vktec | Okay. I think I understand a little better now. Thanks for the clarification! | 19:27 |
ventosus | vktec: the sampler plugin in the LV2 book uses a worker thread and 'registers' via 'extension_data' | 19:28 |
*** jmagnusj has quit IRC | 19:39 | |
*** JLye has joined #lv2 | 20:11 | |
*** deva has quit IRC | 20:24 | |
*** yann-kaelig has quit IRC | 20:44 | |
*** tytel has joined #lv2 | 20:52 | |
*** m4l3z has quit IRC | 21:23 | |
*** edogawa has quit IRC | 21:34 | |
*** rncbc has quit IRC | 22:33 |
Generated by irclog2html.py 2.13.0 by Marius Gedminas - find it at mg.pov.lt!