Thursday, 2015-10-01

*** drobilla has joined #lv200:10
*** drobilla has quit IRC01:59
*** edogawa has joined #lv206:39
*** sigma6 has joined #lv207:20
*** grejppi has quit IRC08:44
*** grejppi has joined #lv208:59
*** falktx has joined #lv208:59
*** Galik has joined #lv211:24
*** falktx has quit IRC11:45
*** ricardocrudo has joined #lv211:50
*** ricardocrudo has quit IRC11:56
*** ricardocrudo has joined #lv212:03
*** ffm has joined #lv212:07
*** ricardocrudo has quit IRC12:15
*** falktx has joined #lv212:39
*** ventosus has joined #lv213:15
*** NickSB2 has quit IRC13:19
*** ricardocrudo has joined #lv214:41
*** Anchakor_ is now known as Anchakor14:53
*** drobilla has joined #lv215:38
rgareusdrobilla: any thoughts about  https://paste.debian.net/314094/ ?15:46
rgareusin re  /* TODO: Be more disciminate about what to send */15:47
drobillargareus: Why only for outputs?15:48
rgareusdrobilla: I suppose because of buggy plugins.  ardour does the same15:51
rgareusdrobilla: I just tested with the harrison-lv2.  they expect port-events for inputs regardless15:52
drobillargareus: expect how?15:52
drobillaHard to imagine something breaking for not being repeatedly told about the same value15:52
rgareusdrobilla: 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
rgareusor so it seems.15:54
rgareusin 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
drobillaThat is a changed value then15:58
drobillaMaybe I misinterpreted what doing this for inputs would do15:59
*** ffm has quit IRC15:59
drobilla$@&(* control ports... :)15:59
*** ffm has joined #lv216:01
*** sigma6 has quit IRC16:04
ssj71falktx: are you the maintainer of CAPS-lv2 in your repo? I can't find a project page except the mod fork16:19
falktxssj71: caps author told mod he doesn't want to do lv2 versions16:21
ssj71falktx: but he's ok with mod doing it?16:22
falktxrgareus: that seems all wrong16:22
falktxrgareus: write function should never expect a callback16:22
ssj71falktx: I'm just trying to figure out where to report a bug. CAPS compressor mono segfaults in ardour 4.216:22
falktxrgareus: otherwise it might get recursive16:22
falktxssj71: well, me and mod have full interest on fixing crashes16:23
ssj71ok. I didn't dig in too deeply, but it was the plugin segfaulting every time I tried to add it16:23
falktxI know a few plugins crash on init16:24
falktxunder investigation16:24
ssj71falktx: want a bug on gihub for it?16:24
falktxsure16:24
rgareusfalktx: how are plugins supposed to know if an input changes (e.g Automation)?  Ardour does exactly what that jalv patch does.16:26
falktxrgareus: I'm not discussing that16:27
falktxrgareus: it seemed to me that you want values you send through write_function to come back from the host as port_event16:27
rgareusfalktx: yes16:27
falktxwhy!?16:28
rgareusfalktx: stateless GUI16:28
falktxthat seems completely wrong16:28
falktxafaik ardour doesn't send control values if they don't change, including during initialization16:28
rgareusfalktx: if there are competeing events (control surface, automation, user moving the mouse,...)   who wins?16:28
falktxwhich means those stateless UIs won't work16:28
ssj71falktx: bugged16:29
falktxssj71: thanks16:30
falktxrgareus: that's not an issue for the UI to solve16:30
rgareusfalktx: exactly.. hence the GUI should should listen to what the host says :)  port_events.16:31
falktxwhy does the UI need to receive events back when it already knows what the current state is?16:31
rgareusfalktx: anyway the patch as-is isn't great (yet). I was just looking for feedback so far.16:31
rgareusfalktx: it does not know the currrent state. it only knows what the user did to the GUI.16:32
rgareusfalktx: the host may choose to ignore the GUI change (and play back automation instead)16:32
ssj71falktx: 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
falktxin that case the host calls back port_event with the correct value16:33
falktxno need for calling that is everything is ok16:33
falktxrelated http://learn.juce.com/doc/classAudioProcessorParameter.php#ac9b67f35339db50d2bd9a026d89390e116:33
rgareusfalktx: yeah ignore the    "port->flow == FLOW_INPUT" ||    part.  in the patch16:34
rgareusfalktx: just    port->control_pre != port->control     - except that needs special attention for initial values16:34
rgareusthe port->flow == FLOW_INPUT  is a quick hack.  because otherwise jalv does not send initial values on instantiation.16:34
rgareusif the default is zero.16:35
falktxanyway, I don't like the notion of UIs getting back events when they're not needed16:36
*** rncbc has joined #lv216:37
falktxis write_function a void?16:39
falktxdamn it is16:39
falktxtouch is also a void16:40
falktxno way for the host to tell the UI it can't change values right now16:40
rgareusfalktx: so far jalv always send port_events for  _all_ output-ports regardless of change...16:47
*** deva has joined #lv216:47
falktxrgareus: that's better then none at all :)16:47
rgareusyeah, that's a bug in ardour. showing the UI again..  no port_event if there's no change.16:48
rgareusor well, maybe not a bug.  depends where you stand.16:48
rgareusI like drobilla's take on this all:     $@&*( control ports.16:50
falktxsometimes I don't understand you17:04
falktxI cannot think of any good way that that thing is not a bug17:04
*** rncbc has quit IRC17:12
*** zuntrax_ has joined #lv217:20
*** zuntrax_ has quit IRC17:20
*** rncbc has joined #lv217:29
*** son0p has joined #lv218:05
*** ffm has quit IRC18:07
*** uncle-j_j has joined #lv218:19
*** falktx has quit IRC18:37
*** drobilla has quit IRC19:09
*** ventosus has left #lv219:09
*** deva has quit IRC19:24
*** ricardocrudo has quit IRC19:26
*** falktx_ has joined #lv219:26
*** ricardocrudo has joined #lv219:27
*** aombk3 has quit IRC19:48
*** aombk3 has joined #lv219:48
*** NickSB2 has joined #lv220:05
ssj71rgareus: 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 patch21:31
ssj71does that sound like an ardour or setbfree issue?21:31
rgareusssj71: hard to say.  maybe ardour was just saving plugin states when it crashed and the state is corrupted?21:32
ssj71could 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 report21:33
rgareusssj71: it may still be there  in  <ardour-session>/plugins/*/*21:33
ssj71rgareus: 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
rgareusthe format is   <ardour-session>/plugins/UniqueID/stateXXX      ardour keeps incremental stateXXX  maybe only the last is corrupt.21:34
ssj71ok. I'll check when I get back to the studio. I'd like to recover the original patch.21:35
rgareusgrep -rli b_synth  .../plugins/  will help to find the UniqueID  and state.ttl files21:36
ssj71sweet. Will try21:37
rgareusssj71: and then copy   the recent  ..../state(N-1)/state.ttl  to .../state(N)/state.ttl     or diff them first.21:43
rgareusssj71: at least that's my best guess.21:43
*** rncbc has quit IRC21:44
ssj71rgareus: does ardour just save state on change? or periodically?21:45
* ssj71 may have left the session open for several weeks :\21:45
rgareusardour does periodic saves every 2 min (unless you've disabled that in prefs)21:49
rgareusplugin states are supposed to be saved only on change..  but there was a bug.21:49
ssj71rgareus: well on the plus side there will be plenty of copies with the old patch then :)21:50
rgareusssj71: heh. yep21:50
rgareuswell, maybe. there may be lots of empty dirs only.21:50
rgareusthere 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
rgareusand the 2nd. empty state-dirs (prepare for saving state) were not cleaned up.21:52
ssj71nice. well, at least theres a chance, so things are brighter than this morning21:53
rgareusssj71: people start keeping ardour sessions in git.21:57
rgareussomething like       while true; do git add *.ardour `find . -name "*.mid"` plugins/ ; git commit -m "auto-backup"; sleep 300;  done21:58
ssj71I haven't ever had a large reason for doing so, but perhaps as I start doing larger productions21:58
rgareusask deva when he's online again, he does that (and found the empty dirs bug that way)21:58
rgareusaudio (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
ssj71sure22:01
ssj71as long as ardour is stable though currently my workflow hasn't generated any need to revert22:02
rgareusssj71: while ardour is certainly not bug-free it's resonably stable by itself.  but plugins... well you know.22:03
ssj71yep. I haven't had ardour crash in a long time. This morning I found 2 plugs segfaulting22:05
*** ricardocrudo has quit IRC22:06
*** son0p has quit IRC22:07
*** edogawa has quit IRC22:23
*** uncle-j_j has quit IRC22:34
*** Galik has quit IRC22:59

Generated by irclog2html.py 2.13.0 by Marius Gedminas - find it at mg.pov.lt!