*** drobilla has joined #lv2 | 00:10 | |
*** drobilla has quit IRC | 01:59 | |
*** edogawa has joined #lv2 | 06:39 | |
*** sigma6 has joined #lv2 | 07:20 | |
*** grejppi has quit IRC | 08:44 | |
*** grejppi has joined #lv2 | 08:59 | |
*** falktx has joined #lv2 | 08:59 | |
*** Galik has joined #lv2 | 11:24 | |
*** falktx has quit IRC | 11:45 | |
*** ricardocrudo has joined #lv2 | 11:50 | |
*** ricardocrudo has quit IRC | 11:56 | |
*** ricardocrudo has joined #lv2 | 12:03 | |
*** ffm has joined #lv2 | 12:07 | |
*** ricardocrudo has quit IRC | 12:15 | |
*** falktx has joined #lv2 | 12:39 | |
*** ventosus has joined #lv2 | 13:15 | |
*** NickSB2 has quit IRC | 13:19 | |
*** ricardocrudo has joined #lv2 | 14:41 | |
*** Anchakor_ is now known as Anchakor | 14:53 | |
*** drobilla has joined #lv2 | 15:38 | |
rgareus | drobilla: any thoughts about https://paste.debian.net/314094/ ? | 15:46 |
---|---|---|
rgareus | in re /* TODO: Be more disciminate about what to send */ | 15:47 |
drobilla | rgareus: Why only for outputs? | 15:48 |
rgareus | drobilla: I suppose because of buggy plugins. ardour does the same | 15:51 |
rgareus | drobilla: I just tested with the harrison-lv2. they expect port-events for inputs regardless | 15:52 |
drobilla | rgareus: expect how? | 15:52 |
drobilla | Hard to imagine something breaking for not being repeatedly told about the same value | 15:52 |
rgareus | drobilla: the GUI control-elements don't keep track by themselves. mouse-move -> write_function -> host -> port_event -> update value in GUI -> which is used by next mouse-move. | 15:53 |
rgareus | or so it seems. | 15:54 |
rgareus | in ardour the inputs change any time (control surfaces, etc) so ardour sends updates. in jalv that wasn't necessary since only the GUI can change inputs (and jalv expects the GUI to keep track by itself). | 15:56 |
drobilla | That is a changed value then | 15:58 |
drobilla | Maybe I misinterpreted what doing this for inputs would do | 15:59 |
*** ffm has quit IRC | 15:59 | |
drobilla | $@&(* control ports... :) | 15:59 |
*** ffm has joined #lv2 | 16:01 | |
*** sigma6 has quit IRC | 16:04 | |
ssj71 | falktx: are you the maintainer of CAPS-lv2 in your repo? I can't find a project page except the mod fork | 16:19 |
falktx | ssj71: caps author told mod he doesn't want to do lv2 versions | 16:21 |
ssj71 | falktx: but he's ok with mod doing it? | 16:22 |
falktx | rgareus: that seems all wrong | 16:22 |
falktx | rgareus: write function should never expect a callback | 16:22 |
ssj71 | falktx: I'm just trying to figure out where to report a bug. CAPS compressor mono segfaults in ardour 4.2 | 16:22 |
falktx | rgareus: otherwise it might get recursive | 16:22 |
falktx | ssj71: well, me and mod have full interest on fixing crashes | 16:23 |
ssj71 | ok. I didn't dig in too deeply, but it was the plugin segfaulting every time I tried to add it | 16:23 |
falktx | I know a few plugins crash on init | 16:24 |
falktx | under investigation | 16:24 |
ssj71 | falktx: want a bug on gihub for it? | 16:24 |
falktx | sure | 16:24 |
rgareus | falktx: how are plugins supposed to know if an input changes (e.g Automation)? Ardour does exactly what that jalv patch does. | 16:26 |
falktx | rgareus: I'm not discussing that | 16:27 |
falktx | rgareus: it seemed to me that you want values you send through write_function to come back from the host as port_event | 16:27 |
rgareus | falktx: yes | 16:27 |
falktx | why!? | 16:28 |
rgareus | falktx: stateless GUI | 16:28 |
falktx | that seems completely wrong | 16:28 |
falktx | afaik ardour doesn't send control values if they don't change, including during initialization | 16:28 |
rgareus | falktx: if there are competeing events (control surface, automation, user moving the mouse,...) who wins? | 16:28 |
falktx | which means those stateless UIs won't work | 16:28 |
ssj71 | falktx: bugged | 16:29 |
falktx | ssj71: thanks | 16:30 |
falktx | rgareus: that's not an issue for the UI to solve | 16:30 |
rgareus | falktx: exactly.. hence the GUI should should listen to what the host says :) port_events. | 16:31 |
falktx | why does the UI need to receive events back when it already knows what the current state is? | 16:31 |
rgareus | falktx: anyway the patch as-is isn't great (yet). I was just looking for feedback so far. | 16:31 |
rgareus | falktx: it does not know the currrent state. it only knows what the user did to the GUI. | 16:32 |
rgareus | falktx: the host may choose to ignore the GUI change (and play back automation instead) | 16:32 |
ssj71 | falktx: because if the user moves the control, while automation is playing and the host decided the automation wins, shouldn't the GUI show what values actually being used? | 16:32 |
falktx | in that case the host calls back port_event with the correct value | 16:33 |
falktx | no need for calling that is everything is ok | 16:33 |
falktx | related http://learn.juce.com/doc/classAudioProcessorParameter.php#ac9b67f35339db50d2bd9a026d89390e1 | 16:33 |
rgareus | falktx: yeah ignore the "port->flow == FLOW_INPUT" || part. in the patch | 16:34 |
rgareus | falktx: just port->control_pre != port->control - except that needs special attention for initial values | 16:34 |
rgareus | the port->flow == FLOW_INPUT is a quick hack. because otherwise jalv does not send initial values on instantiation. | 16:34 |
rgareus | if the default is zero. | 16:35 |
falktx | anyway, I don't like the notion of UIs getting back events when they're not needed | 16:36 |
*** rncbc has joined #lv2 | 16:37 | |
falktx | is write_function a void? | 16:39 |
falktx | damn it is | 16:39 |
falktx | touch is also a void | 16:40 |
falktx | no way for the host to tell the UI it can't change values right now | 16:40 |
rgareus | falktx: so far jalv always send port_events for _all_ output-ports regardless of change... | 16:47 |
*** deva has joined #lv2 | 16:47 | |
falktx | rgareus: that's better then none at all :) | 16:47 |
rgareus | yeah, that's a bug in ardour. showing the UI again.. no port_event if there's no change. | 16:48 |
rgareus | or well, maybe not a bug. depends where you stand. | 16:48 |
rgareus | I like drobilla's take on this all: $@&*( control ports. | 16:50 |
falktx | sometimes I don't understand you | 17:04 |
falktx | I cannot think of any good way that that thing is not a bug | 17:04 |
*** rncbc has quit IRC | 17:12 | |
*** zuntrax_ has joined #lv2 | 17:20 | |
*** zuntrax_ has quit IRC | 17:20 | |
*** rncbc has joined #lv2 | 17:29 | |
*** son0p has joined #lv2 | 18:05 | |
*** ffm has quit IRC | 18:07 | |
*** uncle-j_j has joined #lv2 | 18:19 | |
*** falktx has quit IRC | 18:37 | |
*** drobilla has quit IRC | 19:09 | |
*** ventosus has left #lv2 | 19:09 | |
*** deva has quit IRC | 19:24 | |
*** ricardocrudo has quit IRC | 19:26 | |
*** falktx_ has joined #lv2 | 19:26 | |
*** ricardocrudo has joined #lv2 | 19:27 | |
*** aombk3 has quit IRC | 19:48 | |
*** aombk3 has joined #lv2 | 19:48 | |
*** NickSB2 has joined #lv2 | 20:05 | |
ssj71 | rgareus: so this morning a plugin crashed ardour a few times. I updated everything and rebooted and tried the crashy plugins a couple more times. Somewhere in the process SetBFree lost its patch | 21:31 |
ssj71 | does that sound like an ardour or setbfree issue? | 21:31 |
rgareus | ssj71: hard to say. maybe ardour was just saving plugin states when it crashed and the state is corrupted? | 21:32 |
ssj71 | could be. I don't know which step lost the state, but I thought I'd ask. If I start seeing it often I'll dig in more and try to report | 21:33 |
rgareus | ssj71: it may still be there in <ardour-session>/plugins/*/* | 21:33 |
ssj71 | rgareus: I've since tried to re-create it. I'm not sure its quite where I had it before. Would those changes have overwritten? | 21:33 |
rgareus | the format is <ardour-session>/plugins/UniqueID/stateXXX ardour keeps incremental stateXXX maybe only the last is corrupt. | 21:34 |
ssj71 | ok. I'll check when I get back to the studio. I'd like to recover the original patch. | 21:35 |
rgareus | grep -rli b_synth .../plugins/ will help to find the UniqueID and state.ttl files | 21:36 |
ssj71 | sweet. Will try | 21:37 |
rgareus | ssj71: and then copy the recent ..../state(N-1)/state.ttl to .../state(N)/state.ttl or diff them first. | 21:43 |
rgareus | ssj71: at least that's my best guess. | 21:43 |
*** rncbc has quit IRC | 21:44 | |
ssj71 | rgareus: does ardour just save state on change? or periodically? | 21:45 |
* ssj71 may have left the session open for several weeks :\ | 21:45 | |
rgareus | ardour does periodic saves every 2 min (unless you've disabled that in prefs) | 21:49 |
rgareus | plugin states are supposed to be saved only on change.. but there was a bug. | 21:49 |
ssj71 | rgareus: well on the plus side there will be plenty of copies with the old patch then :) | 21:50 |
rgareus | ssj71: heh. yep | 21:50 |
rgareus | well, maybe. there may be lots of empty dirs only. | 21:50 |
rgareus | there were 2 issues: initially after session re-open, plugin state was marked "dirty" so the first save will trigger a new plugin-state save. | 21:51 |
rgareus | and the 2nd. empty state-dirs (prepare for saving state) were not cleaned up. | 21:52 |
ssj71 | nice. well, at least theres a chance, so things are brighter than this morning | 21:53 |
rgareus | ssj71: people start keeping ardour sessions in git. | 21:57 |
rgareus | something like while true; do git add *.ardour `find . -name "*.mid"` plugins/ ; git commit -m "auto-backup"; sleep 300; done | 21:58 |
ssj71 | I haven't ever had a large reason for doing so, but perhaps as I start doing larger productions | 21:58 |
rgareus | ask deva when he's online again, he does that (and found the empty dirs bug that way) | 21:58 |
rgareus | audio (wav files) are non-destructive, so there's no need to keep them in git. but midi, session files are. plugin-states are also not-destructive. but heck a few kB of ttl don't hurt. | 22:00 |
ssj71 | sure | 22:01 |
ssj71 | as long as ardour is stable though currently my workflow hasn't generated any need to revert | 22:02 |
rgareus | ssj71: while ardour is certainly not bug-free it's resonably stable by itself. but plugins... well you know. | 22:03 |
ssj71 | yep. I haven't had ardour crash in a long time. This morning I found 2 plugs segfaulting | 22:05 |
*** ricardocrudo has quit IRC | 22:06 | |
*** son0p has quit IRC | 22:07 | |
*** edogawa has quit IRC | 22:23 | |
*** uncle-j_j has quit IRC | 22:34 | |
*** Galik has quit IRC | 22:59 |
Generated by irclog2html.py 2.13.0 by Marius Gedminas - find it at mg.pov.lt!