Wednesday, 2015-12-16

*** gianMOD has joined #lv200:17
*** gianMOD has quit IRC00:44
*** ricardocrudo has quit IRC00:46
*** artfwo has quit IRC02:30
*** fundamental has left #lv204:10
*** falktx has joined #lv204:11
*** falktx` has quit IRC04:16
*** sigma6 has joined #lv207:53
*** edogawa has joined #lv208:04
*** ColaEuphoria has joined #lv208:19
ColaEuphoriahttp://i.imgur.com/yUmibTb.png08:20
ColaEuphoriaehhh08:20
ColaEuphoriaThis is starting to become a problem.08:20
ColaEuphoriaI haven't even implemented envelopes yet.08:20
ColaEuphoriaIs there any way to serialize matrices and ports that act on them?08:20
*** ventosus has joined #lv209:00
*** falktx|work has joined #lv209:06
*** dsheeler has quit IRC09:18
*** ricardocrudo has joined #lv209:18
ventosusColaEuphoria: matrices no, but http://lv2plug.in/ns/ext/port-groups/ may at least help structuring ports together09:27
ventosusnot all hosts support them, though09:27
ColaEuphoriaI see.09:29
ColaEuphoriaPerhaps I'll start working on a "port layout" feature entirely in ttl and mail you guys and see how it goes09:32
ColaEuphoriaAlthough I have finals this week so it may take a few days before I can get started.09:32
ventosusColaEuphoria: there is always the possibility to run your own gui for such special things, of course https://github.com/OpenMusicKontrollers/midi_matrix.lv209:35
falktx|workssj71: btw, those CURIE errors about missing ui prefix are quite serious now09:35
falktx|workssj71: with the latest lilv from git plugins with such errors are not loadable09:35
falktx|workgot one in casynth.ttl09:35
ColaEuphoriaventosus: I could make an external gui, although I also see potential in serialization09:37
ColaEuphoriait could allow for people to make their own "preset layouts"09:38
ColaEuphoriaso that users aren't at the mercy for the maintainers to make an aesthetically pleasing GUI09:38
*** dsheeler has joined #lv209:38
falktx|workthe mod wizard kinda does that already09:39
*** ssj71 has quit IRC09:49
*** gianMOD has joined #lv210:31
*** brummer has joined #lv210:34
*** gianMOD has quit IRC10:42
*** gianMOD has joined #lv211:16
*** gianMOD has quit IRC11:27
*** brummer has quit IRC12:26
*** artfwo has joined #lv212:38
*** ricardocrudo has quit IRC13:37
*** NickSB2_ has quit IRC14:16
rgareusdrobilla: I'm already looking forward to rolling out new liblilv   http://pastebin.com/dL5PWKgB14:26
*** artfwo has quit IRC14:43
drobillargareus: Hrm.  "error reading file" errors but no parse error printed..15:07
drobillaoh, failed to open that one.  n/m15:08
rgareuswell, 600-700 lines due to LV2 plugins..  dwarving the actual backtrace.15:09
falktx|workwho reported that?15:21
falktx|workquite some old plugins there15:21
*** rncbc has joined #lv215:25
*** rncbc has quit IRC16:35
*** rncbc has joined #lv216:36
*** ssj71 has joined #lv216:36
ssj71falktx: why doesn't it show up with sord_validate?16:36
*** son0p has quit IRC16:39
falktx|worka bug in sord_validate I guess16:40
ssj71casynth.ttl uses prefix lv2ui did you patch it and use just ui?16:40
falktx|workI didn't touch that file16:41
*** son0p has joined #lv216:41
ssj71hrm. when I open it in jalv it gives me no CURIE error16:41
ssj71I'm really baffled16:42
falktx|workyou don't have latest lilv git?16:42
falktx|workif you use the kx repos I haven't rebuilt jalv against it yet16:42
ssj71then no16:43
ssj71and I haven't updated for a week or so16:43
falktx|workthe new lilv is more picky :)16:43
falktx|workI'm waiting for next week to start pushing all the updates16:43
ssj71ya there's plenty on your plate16:44
ssj71I'm updating. will anything show me the error? sord_validate? carla?16:44
falktx|workmod-host16:44
ssj71rats. I need to close firefox (web-irc client) biab16:46
*** son0p has quit IRC16:46
*** ssj71 has quit IRC16:46
*** son0p has joined #lv216:47
*** ssj71 has joined #lv216:47
*** artfwo has joined #lv217:13
*** deva has joined #lv217:13
*** brummer has joined #lv217:20
*** ssj71 has quit IRC17:20
drobillaserdi will show parse errors17:27
falktx|workoh hmm17:28
falktx|workerror: failed to expand CURIE `synthv1_lv2:103_LFO1'17:28
falktx|workerror: /usr/lib/lv2/drumkv1.lv2/drumkv1.ttl:357:35: expected `]', not `;'17:28
*** ssj71 has joined #lv217:29
falktx|workrncbc: you might want to look at that^17:30
falktx|workusing 0.7.2 here17:30
rncbcfalktx|work: let'see17:32
drobilla(It'll also pretty print, so pipe through serdi is my usual first pass; or > /dev/null just for the errors)17:33
rncbcfalktx|work: i don't find anything here, may ou look in your drumkv1.ttl ?17:35
rncbcfalktx|work: using all drobilla.nat/lad git stack from... today!17:36
falktx|workyou use synthv1_lv2 prefix on drumkv1, that's the error17:36
rncbcfalktx|work: where?17:37
falktx|workline 35717:37
falktx|workalso this17:37
falktx|workerror: failed to expand CURIE `synthv1_lv2:103_LFO1'17:37
falktx|workerror: /usr/lib/lv2/samplv1.lv2/samplv1.ttl:367:35: expected `]', not `;'17:37
rncbcfalktx|work: ah17:37
falktx|worksame with samplv1 ttl, uses synthv1_lv2 prefix17:38
rncbcfalktx|work: you're right17:38
falktx|workthing is, with the new lilv I can no longer load this plugin :P17:38
falktx|workgood luck I haven't rebuilt everything in kxstudio yet :)17:38
*** sigma6 has quit IRC17:40
rncbcfalktx|work: good catch17:41
rncbcfalktx|work: fix is str8fwd! just patch those .ttl's!17:44
falktx|worksee the nickname. busy building other stuff :P17:44
rncbcfalktx|work: i never said it has to be ptached this year17:45
rncbc:)17:45
rncbcfalktx|work: wait, you're deploying tht new lilv? then why not making the fix as you go anyway?17:47
falktx|workI will. the v1 series are not on mod right now17:48
falktx|workfor kxstudio I only updated it because of mod stuff17:48
drobillargareus: Should we maybe add a preferredBlockLength property while we're at it?17:51
rncbcfalktx|work: ye know, the v1s are not quite elligigle for mod as they use the outrageous instance-access bwahahah17:53
falktx|workyep17:53
falktx|workalthough synthv1 might work17:53
drobillaFWIW the previous "tolerant" (but not really) approach lilv took almost certainly resulted in botched half-loaded data for plugins17:53
*** edogawa has quit IRC17:59
rgareusdrobilla: I wonder which host would implement that.  ardour could theoretically  IFF   preferredBlockLength is smaller than the current block-size17:59
rgareusdrobilla: but most hosts are really bound to the user-configured block-length for JACK (or whatever backend)18:00
rgareusdrobilla: Oh, and I forgot to tell you, the colorful  jalv --dump output is awesome.18:01
*** ssj71 has quit IRC18:03
*** ventosus has quit IRC18:06
rgareuson http://lv2plug.in/pages/developing.html  just below "What not to do" ..  can we add18:06
rgareus"There is zero-tolerance for violating the specs. All violations will be prosecuted."  ;)18:06
rgareussigned.. the LV2 High Inquistor.18:07
*** ventosus has joined #lv218:07
* rncbc goind for a reboot, new patched kernel 4.1.15.rt15...18:10
*** rncbc has quit IRC18:10
*** ssj71 has joined #lv218:10
*** rncbc has joined #lv218:12
rgareusrncbc: that was quick18:12
rncbcrgareus: this is a i7 :)18:12
rncbcrgareus: and also a ssd18:13
rgareusrncbc: 4.1.15-rt15 works well here (also i7)  but sucks a lot of power (nearly twice as much as 4.2.6, cutting the battery lifetime in two)18:13
rncbcrgareus: weel this is a custome kconfig...18:14
rgareus8 or 9 Watts idle with 4.1.15-rt15 , 3-4 Watts on 4.2.6 according to powertop18:14
rgareuson a Thinpad X25018:14
rgareusThinkpad, even18:14
rgareusrncbc: is your setup on a laptop?18:16
rncbcrgareus: yep, toshiba z3018:16
rgareusrncbc: so you're potentially concearnd about power-consumption as well18:17
rncbcrgareus: yes, but i never got passed the 5h mark anyway18:18
rncbcrgareus: the thing was marketed as a 8h batt life18:18
rgareusI was surprised recently. the X250 held out a cross atlatic flight and had battery left.  spec'ed for 24h. I get maybe 12-14h out of it. (depends how much I compile)18:19
rgareusbut that was with a near brand-new battery.18:20
rncbcrgareus: depends also if you jkeep jackd up all the time :)18:20
rgareustrue18:20
rgareusI used to do that on my old laptop (start it with X).18:20
rncbcrgareus: running jackd -p64 sucks or should i say fries the batt out of hell? :)18:22
* rgareus 's current strategy is to reboot into rt-kernel and only then use jack when doing serious audio-work.18:23
rgareusand in those cases a power-outlet is usually closeby, as well18:23
ssj71archlinux users are reporting the my new lushlife UI doesn't draw in ardour 4.4.0. My other GUIs show fine, and I can't reproduce with kxstudio ardour 4.4.143. Anyone have a suggestion on how I can try to debug this??18:26
rncbcrgareus: if i don't do like several make -j4 kernel builds, like i do, or run jackd, this laptop might just make it catalogged 8h battery life for one :)18:28
rncbcfor once18:28
rgareusssj71: any C++ in the GUI?  maybe a gcc4/gcc5 issue?  what gui toolkit do you use?18:28
ssj71ntk. it is c++18:29
rncbcbut, you never know... i keep the good prective to recharge whenever battery is just below 51%...18:29
rncbcpractice*18:30
rgareusssj71: does ntk still has this "return pointer to X-window" issue?  (like all of harry's plugins which return a pointer to the fltk-window)18:30
ssj71I thought I resolved that, It returns the XID18:31
rgareusok.18:31
ssj71https://github.com/ssj71/infamousPlugins/blob/master/src/lushlife/lushlife_ui_main.cxx#L6518:31
rgareusssj71: well, a first test is: does the  GUI .so  load.  (no missing symbols etc).  IIRC that's reported on stderr.18:32
* rncbc now reboots into vanilla 4.3.3 ...18:33
*** rncbc has quit IRC18:33
ssj71I know a window is created. I'll ask if they can test running ardour in the termincal18:33
rgareusssj71: and there will be a more "userfriendly" error in  Ardour's  Menu > Window > Log.18:33
rgareusssj71: maybe it's a simple as  the .ttl file missing   lv2:extensionData ui:idleInterface18:34
rgareusbut then again it should also not work on your box18:34
ssj71right18:34
*** rncbc has joined #lv218:34
ssj71well, I'll try to get more feedback18:35
*** NickSB2 has joined #lv218:36
rncbcfalktx: samplv1, drumkv1 lv2 .ttl typo fixed upstream v0.7.2.118:45
*** rncbc has quit IRC18:46
falktx|workcool18:47
*** rncbc has joined #lv218:48
*** rncbc_ has joined #lv218:49
rncbcfalktx: thanks18:50
*** son0p has quit IRC18:59
ventosusssj71: archer here, can confirm no UI in Ardour only. commenting ''self->pitchfreq0->do_callback" and "self->pitchfreq1->do_callback" in port_event shows an UI19:31
ventosusssj71: there may be a feedback loop in there somewhere, ardour sends increasing values to these two control ports (until inifinity)19:36
ssj71yes, must be a feedback loop. I;ll look into that. Thats very helpful thanks19:41
*** falktx|work has quit IRC19:55
rgareusventosus, ssj71: might be worth checking recent ardour.19:58
rgareusthe port-event logic has been updated.19:59
*** brummer has quit IRC19:59
rgareusardour now initially sends a value to all GUI ports when the gui is [re]-opened (it didn't do that before)19:59
rgareusand after that port_events  only when the value changes.20:00
rgareusardour also notifies the GUI of changes made by itself.  (to enable automation touch and playback modes.    e.g  gui sets value, ardour says "no, automation is played back -> use value X".20:01
rgareus^^^ "and after that port_events  only when the value changes."  -> "and after that *emit* port_events only when the value changes."20:02
rgareusKXStudio ships Ardour 4.4.140 (or something) that already has the reworked port-event mechanism20:04
ventosusrgareus: ArchLinux is at Ardour4.4.0 (built using 4.4 and GCC version 5.3.0)20:07
rgareusthe "old" way:  plugins will have to keep track of changes themselves.20:08
rgareusventosus: the loopback you describe is reasonable.20:08
*** ssj71 has quit IRC20:15
*** ssj71 has joined #lv220:22
*** uncle-j_j has joined #lv220:22
*** ssj71 has quit IRC20:23
*** ssj71 has joined #lv220:23
ssj71ventosus: sorry, lost my backlog, which lines did you comment?20:24
ventosusssj71: 'self->pitchfreq0->do_callback" and "self->pitchfreq1->do_callback"20:25
ssj71ventosus: thanks20:26
ssj71I'm guessing its because the callbacks resend the value through the write function20:27
ssj71ok, ya, I see some issues.20:32
*** ssj71 has quit IRC20:36
*** coderkevin has quit IRC20:44
*** ssj71 has joined #lv220:46
ssj71ventosus: I've just pushed a change that I think should make the loop stop. any chance you could build from master and test?20:57
falktxcan't you just valgrind the thing?20:59
ssj71falktx: good idea. I'll try21:02
ssj71valgrind or callgrind?21:02
falktxvalgrind21:03
ventosusssj71: still no UI21:03
ventosusssj71, rgareus: "new" Ardour (4.4.489) indeed shows the UI just fine21:07
ventosuseven the unpatched one21:07
ssj71interesting21:08
rgareusfalktx: how would valgrind help here?21:14
falktxthere is a possible null pointer usage here21:14
rgareusfalktx: aah, ok.  I thought it's an endless feedback loop (port events)21:15
ssj71I think it is. If I send a value through the write function, does ardour send it back to the UI as a port event too?21:16
ventosusthe loop ends pretty quickly (7-8 iterations), when the values for ports (12, 21) reach INF ;-)21:17
ssj71ventosus: but only with ardour 4.4.0?21:18
ssj71the issue is that the widgets store a linear value but actually send a quadratic to the dsp (to approximate log scale)21:19
ssj71port events were setting the log scale value which then got squared again (causing it to grow and grow)21:20
ssj71my change shouldn't actualyl end the loop, but it should prevent the diverging21:20
ventosusssj71: yes only for 4.4.0, 4.4.489 does not show increasing values for those ports21:21
ssj71ventosus: did you test if latest master with 4.4.0 still diverges?21:24
ventosusssj71: I'm at commit a14729d6a1a65e3e9dc0f11051dd28b5f050b56821:27
ventosus4.4.0 still diverges, yes21:27
ssj71ok21:28
ssj71hm21:28
ssj71ack! I think I didn't actually commit the change21:38
ssj71ventosus: I'm sorry didn't actually make the change. If you could test commit ec4fd66 (latest master) it would be awesome21:39
ssj71test with 4.4.0 please21:39
*** deva has quit IRC21:43
ventosusssj71: fixed in 4.4.0, and still fine in 4.4.489 ;-)21:49
ssj71WOOT!21:49
ssj71thanks a ton ventosus!21:50
rgareusssj71: can you sumarize what the issue was and how you fixed it?21:50
ventosusnp21:50
ssj71rgareus: port event calls the callback of the widget so that it redraws the data and affects other widgets properly21:51
ssj71rgareus: in said callback, the data is scaled in a log approximation to provide better resolution21:51
ssj71the scaled data is sent through the write function back to the dsp, and I believe ardour would then see the dsp value had changed and send another port event21:52
rgareusaah 'rounding' (log approx) -> value differs..21:52
ssj71rgareus: the solution was the first reverse the scaling of the value, then call the callback21:52
ssj71so it was much worse than rounding error, it was exponential21:53
ssj71its a quadratic scale, so callback(val); write_function(val*val); callback(val*val) etc21:54
ssj71solution is to change it to callback(sqrt(val))21:54
rgareusssj71: can't you just block signal emission  (if the widget is updated via port_event() ?21:57
rgareusin gtk/sigc++  it'd be sth like     widget_connection.block(); widget.set_value(new_value); widget_connection.unblock();21:58
ssj71yes, but it will take a little architecture change that I'd rather not do if not necessary. Currently it doesn't feed back.21:58
rgareusI use a similar approach in in robtk to suspend signal emission.21:58
ssj71I actually deliberately call the callback, its not called from the signal21:59
rgareusssj71: in most cases you'll be fine but with   double or float       val == sqrt (val * val)   is not a give.21:59
rgareusn21:59
ssj71rgareus: I know, but it seems to be close enough for engineering22:00
rgareusyeah, and even if it mismatches once in a while it'll probably stop looping at some point.22:00
ssj71right. I tested a bit in jalv and never saw a loop22:01
rgareusand in 1/2 a years time when everyone moved to Ardour 4.5  (or newer) it's water under the bridge anyway22:02
ssj71rgareus: a4.5 is that far out? that adds tabbed mode right?22:02
rgareusprobably not...22:03
rgareusthere were another huge amount of fixes/updates. since 4.422:03
rgareuslas was supposed to tag 4.5 yesterday...  but then some personal issues came in-between.22:04
ssj71ah. so 4.5 is close, but tabbed mode isn't landed. It'll be ready when its ready22:04
rgareusyep22:04
rgareuswell, tabbed is ready to be merged.22:04
rgareustabbed is also held back by Mixbus (upcoming 3.1 includes control-surface support), las is finishing that. Mixbus 3.1 will come w/o tabbed.22:05
*** ventosus has left #lv222:13
ssj71ah too bad. I'm not sure I will even use tabbed mode, but its a flashy feature that I'm sure many will find useful22:20
falktxssj71: should I update infamous-plugins package in kx?22:41
ssj71falktx: there is one issue still outstanding that I cannot reproduce. bluebell reports that opening the GUI in qtractor a second time crashes qtractor22:42
falktxdangling pointer I guess22:42
ssj71falktx: I need more feedback, but he's asleep22:42
falktxfl_open_display being called twice?22:43
falktxhmm I don't think I should look at that code too much...22:44
ssj71too ugly?22:45
falktxyou're checking if a pointer returned by 'new ...' is null22:46
falktxthat never happens unless you specifically tell the compiler to disable some stuff22:46
ssj71I guess I'm being too safe :)22:46
falktxif 'new' fails it will throw22:47
falktxreturned pointer is *always* valid22:47
falktxalso "self->ui = self->show();" feels very wrong to me...22:47
ssj71this was copied from harry22:47
falktxharry's code is very dirty...22:47
ssj71somebody should have told me that before I copied it all22:48
falktxthat "self->ui = ..." + "delete self->ui;" feels crashy22:48
falktxwhat kind of pointer does self->show() return?22:48
ssj71an Fl_Window22:49
falktxare you allowed to delete that?22:49
ssj71don't know. Its just a window to me22:50
falktxwell, it's very important22:50
falktxno idea why a 'show' method would allocate a new instance of an UI. doesn't feel right22:51
ssj71I understand that, the documentation doesn't forbid it anywhere I can see22:51
ssj71show is probably the wrong name22:51
falktxif show does not allocate a new thing, then you can't delete it22:51
falktxyes22:52
falktxI can't really read that fltk/ntk fl code22:52
falktxin other news, the max-gen to real linux plugins is working very well22:54
ssj71falktx: here's the generated code: http://pastebin.com/0LRSZfdW22:54
ssj71line 120222:54
*** edogawa has joined #lv222:55
falktxhaha, so it is creating a new window22:55
falktxFl_Double_Window* o = ui = new Fl_Double_Window(630, 400, "the infamous lush life");22:55
falktxso the code is fine22:55
falktxjust the function name that is terrible :P22:55
ssj71yep. Inherited from openAV productions :)22:57
ssj71I hadn't worked with any toolkits much, I thought artyfx were a simple example to copy22:57
falktxthey are. but made in a hacky way22:58
falktxI was the one that introduced the fltk embed code to male, some years ago. which allowed ntk to work as a real plugin ui toolkit22:58
ssj71I didn't know that22:58
falktxbased on some fltk browser thing22:58
falktxthey reworked it a bit22:59
falktxthen later I added another hack to make ntk menus work when embed22:59
falktxlots of hacks in there ;)22:59
falktxI mean, just look at it https://github.com/original-male/ntk/commit/5719b0044d9f267de5391fab006370cc7f4e70bd22:59
ssj71you think the current AVTK is much better?22:59
falktxhaven't seen it much22:59
falktxbut it should be yes. based on pugl23:00
ssj71I want to switch, but its going to be another big time investment, and doesn't feel like a big gain23:00
ssj71I should say I want it to BE switched, but I don't really want to do it :)23:01
* falktx proposes DPF for a sane long term investment23:01
falktxsometime later you might want to release cross-platform23:02
ssj71problem is my obsessive goal is to have scalable UIs made in inkscape. Not sure DPF gets me there. Also I've become pretty comfortable with LV2, so another API seems like more growing pains23:02
falktxeven if not win/mac, but perhaps bsd or haiku23:03
ssj71yes, when it comes to that I'll have to move to something.23:03
falktxthere's a project for svg parsing, made by the same author as nanovg23:03
falktxso I imagine it's possible to render the svg stuff directly into opengl23:03
ssj71I've got a pretty good workflow now converting the svgs to cairo23:04
falktxit already is for icons btw. using the now common icon-as-font-character trick23:04
ssj71so AVTK is probably path of least resistance23:04
falktxyes23:04
ssj71IDK. I'll look at that more when I feel more need to be cross platform. In some ways I WANT to have linux only plugins23:05
ssj71make those other platforms jealous ;)23:05
falktxsomeday I might switch to haiku23:07
falktxlinux is getting a bit too mainstream23:07
falktxeverything working, nothing to fix... boring...23:07
ssj71lol :)23:07
ssj71I'm pretty good with it as long as it stays open source23:08
ssj71once all the proprietary companies start moving over I'll look for something else23:08
ssj71also if you think everything is working, get some brand new mac hardware. That will give you plenty to fix.23:09
*** nordstrom has quit IRC23:10
*** nordstrom has joined #lv223:11
*** nordstrom has quit IRC23:12
rgareusssj71: is AVTK already released?  I thought Harry's still working on it.23:13
falktxit's "released" on git23:13
ssj71rgareus: I don't think its officially released, but it hasn't had a commit for months23:13
rgareusI thought avtk is pugl (GL) not FLTK23:13
*** nordstrom has joined #lv223:14
ssj71the original avtk that sorcer and 1st gen artyfx were ntk. I forked that for my GUIs23:15
rgareushttp://openavproductions.com/avtk/23:15
ssj71not too long after I did that he scrapped ntk and went for pugl23:15
rgareusssj71: sorcer etc are NTK - not avtk23:15
rgareusavtk is pure pugl + cairo (a complete departure from fltk/ntk).23:16
ssj71rgareus: https://github.com/harryhaaren/openAV-Sorcer/tree/master/gui/avtk23:16
ssj71the folder is called avtk23:16
ssj71the namespace is avtk. They were just ntk widgets23:17
rgareusok, so harry uses the same name for 2 different projects.23:17
ssj71yes, it should have been avtk 2.0 or something23:18
ssj71but I think since he never actually released avtk he didn't bother23:18
*** nordstrom has quit IRC23:18
rgareusI have not seem him around much, either.23:19
rgareuslast I heard he's got a new job (doing some sysadmin/network stuff??)23:20
ssj71ya something like that. jobs are work killers ;)23:20
rgareushe should have stayed on the road with the Kellies :)23:21
*** nordstrom has joined #lv223:21
*** nordstrom has quit IRC23:22
*** nordstrom has joined #lv223:22
*** nordstrom has quit IRC23:22
*** uncle-j_j has quit IRC23:23
*** nordstrom has joined #lv223:24
falktxharry will have some free time starting next week, or so I've heard..23:26
falktxI know of a specific hardware thing he will be beta-testing... :D23:26
falktxgnight23:26
*** rncbc has quit IRC23:28
*** edogawa has quit IRC23:34
*** nordstrom has quit IRC23:40
*** nordstrom has joined #lv223:42
*** nordstrom has quit IRC23:46
*** nordstrom has joined #lv223:49

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