*** gianMOD_ has quit IRC | 00:03 | |
*** ricardocrudo has quit IRC | 00:10 | |
*** rncbc has joined #lv2 | 09:09 | |
*** gianMOD has joined #lv2 | 09:19 | |
*** falktx has joined #lv2 | 09:40 | |
*** gianMOD has quit IRC | 10:40 | |
*** gianMOD has joined #lv2 | 10:40 | |
*** gianMOD has quit IRC | 10:41 | |
*** gianMOD has joined #lv2 | 10:41 | |
*** gianMOD has quit IRC | 10:42 | |
*** gianMOD has joined #lv2 | 10:52 | |
*** ricardocrudo has joined #lv2 | 10:56 | |
falktx | drobilla: hey, you home safe? | 11:06 |
---|---|---|
falktx | drobilla: I started updating my dpf pugl code to the latest one, I have a few changes/proposals already https://github.com/falkTX/pugl/commits/master | 11:07 |
*** gianMOD has quit IRC | 11:09 | |
drobilla | falktx: Nope, Halifax. | 11:11 |
drobilla | falktx: Great. Heading out now, but I'll poke through it | 11:11 |
*** ricardocrudo has quit IRC | 11:35 | |
*** falktx` has joined #lv2 | 11:37 | |
*** falktx has quit IRC | 11:37 | |
*** aombk has joined #lv2 | 11:44 | |
*** edogawa has joined #lv2 | 11:48 | |
*** gianMOD has joined #lv2 | 12:04 | |
*** gianMOD has quit IRC | 12:09 | |
*** ricardocrudo has joined #lv2 | 12:16 | |
*** ricardocrudo has quit IRC | 12:31 | |
*** ricardocrudo has joined #lv2 | 12:31 | |
*** falktx` has quit IRC | 12:35 | |
*** falktx has joined #lv2 | 12:35 | |
*** falktx has quit IRC | 12:38 | |
*** falktx has joined #lv2 | 12:40 | |
*** gianMOD has joined #lv2 | 13:20 | |
*** HarryHaaren has joined #lv2 | 13:37 | |
*** edogawa_ has joined #lv2 | 14:02 | |
*** edogawa has quit IRC | 14:05 | |
*** curlymorphic has quit IRC | 14:11 | |
*** edogawa_ is now known as edogawa | 14:12 | |
*** curlymorphic has joined #lv2 | 14:14 | |
*** mlpug has joined #lv2 | 14:26 | |
*** falktx has quit IRC | 14:35 | |
*** gianMOD has quit IRC | 15:16 | |
*** gianMOD_ has joined #lv2 | 15:20 | |
*** falktx has joined #lv2 | 15:22 | |
*** gianMOD_ has quit IRC | 15:25 | |
*** gianMOD has joined #lv2 | 16:59 | |
*** ricardocrudo has quit IRC | 17:09 | |
*** ricardocrudo has joined #lv2 | 17:12 | |
*** gianMOD has quit IRC | 17:13 | |
*** gianMOD has joined #lv2 | 18:24 | |
*** gianMOD has quit IRC | 18:29 | |
falktx | rgareus: your fix for osx context seems to do the trick for me, but now some pixmaps are not drawn... | 19:05 |
rgareus | falktx: do you maybe draw them while not having the GL context? | 19:07 |
falktx | I think I may be creating the textures during that time, yes | 19:07 |
*** ddom has joined #lv2 | 19:08 | |
wrl | always gotta have a context bound when doing openGL work | 19:08 |
wrl | an issue with pugl is that it doesn't necessarily make that easy | 19:08 |
rgareus | what wrl said | 19:08 |
wrl | can you bind a context in pugl outside of a draw call? | 19:08 |
falktx | yes | 19:08 |
rgareus | wrl: resize also takes the context | 19:09 |
rgareus | and well, you can always hack pugl. | 19:09 |
wrl | of course, yeah | 19:09 |
wrl | (the way i handle this in rutabaga is having a Big Window Lock, and rtb_window_lock() also acquires the context) | 19:09 |
rgareus | falktx: odd, that it works on Linux, though. | 19:09 |
falktx | I haven't tested it yet | 19:10 |
falktx | the issue should be the puglLeaveContext when resize finishes | 19:10 |
falktx | the linux code didn't had that | 19:10 |
rgareus | wrl: there is no callback from the plugin back to the lib to ask acquire the context. | 19:10 |
falktx | rgareus: the is in the new pugl | 19:10 |
wrl | new pugl? | 19:10 |
falktx | puglEnterContext and puglLeaveContext | 19:10 |
rgareus | that's wrong IMHO | 19:11 |
rgareus | the plugin has no idea what thread it is in. | 19:11 |
rgareus | and it could take the context from some other GUI. | 19:11 |
rgareus | (e.g asking for the context from the port_event() callback will cause major trouble) | 19:12 |
wrl | yeah | 19:12 |
falktx | the thing here is that I need a valid context during widget contruction | 19:12 |
wrl | but that's more a plugin concern than a UI toolkit one though | 19:12 |
falktx | to allocate some textures | 19:12 |
wrl | i still do async messaging in panther | 19:12 |
wrl | i.e. if i get a set_parameter() and the UI is open i send it an async message to update | 19:13 |
rgareus | if the API is available to plugin authors, someone will use it.. | 19:13 |
* wrl shrugs | 19:13 | |
wrl | locking in audio code causes some pretty obvious problems | 19:13 |
wrl | it's a very "well, don't do that then" issue | 19:13 |
*** mlpug has quit IRC | 19:13 | |
rgareus | odd LV2/pugl plugins kills context for nice rutabaga plugin (and you're screwd) | 19:14 |
wrl | i don't follow? | 19:14 |
rgareus | wrl: if pugl has a puglEnterContext() API and some plugin loaded in to a host uses it from set_parameter() the rendering of all other GL will go downhill. | 19:15 |
rgareus | s/will/may/ | 19:15 |
wrl | rgareus: yeah i ran into that problem with ableton | 19:15 |
rgareus | so ideally pugl should abstract it away.. one less problem. | 19:16 |
wrl | yeah, fair | 19:16 |
wrl | well, i mean | 19:17 |
wrl | that's just more bookkeeping from the hosts's perspective | 19:17 |
wrl | though yes i can see that being a problem | 19:18 |
falktx | [NSOpenGLContext clearCurrentContext]; is messing things up for me | 19:21 |
wrl | well yeah | 19:22 |
rgareus | OSX and Windows GUI are single threaded, standard X11 is as well. and pugl knows. So it can take and releases the context | 19:27 |
rgareus | I dunno about wayland | 19:28 |
wrl | i wouldn't worry about wayland at all at this pint | 19:29 |
wrl | point | 19:29 |
wrl | it'll require a fairly radical re-thinking of how plugin embedding works | 19:29 |
falktx | now it works! | 19:29 |
falktx | https://i.imgur.com/BN6pL9i.png :D | 19:30 |
falktx | I have to try windows too, maybe that got broken... | 19:31 |
falktx | hmm do they work on ardour... | 19:32 |
wrl | oh hey, nice! | 19:35 |
falktx | mverb text via nanovg is working too | 19:37 |
falktx | oh ardour crashed | 19:39 |
falktx | [PuglOpenGLView keyDown:] + 216 | 19:40 |
falktx | pugl osx crashes when pressing "alt" | 19:40 |
falktx | at [chars characterAtIndex(0] | 19:40 |
*** ddom has quit IRC | 19:41 | |
aombk | can i make lv2 plugins with python? | 19:41 |
falktx | UIs, yes | 19:42 |
falktx | DSP/Audio, hmm better not | 19:43 |
aombk | too slow? | 19:43 |
falktx | suuuuuper slow | 19:43 |
*** NickSB has quit IRC | 19:43 | |
falktx | works in FLS | 19:52 |
*** ddom has joined #lv2 | 20:12 | |
*** NickSB has joined #lv2 | 20:20 | |
drobilla | I am generally of the opinion that multi-threaded UI code is insane | 20:28 |
drobilla | Except in certain circumstances | 20:28 |
drobilla | and there's roughly a 99.999999999999999999999% chance that yours is not one of them :) | 20:28 |
drobilla | That said, I have roughly 0 idea WTF you're all on about WRT contexts, or why pugl makes this any harder/easier than it inherently is with GL, but... well, patches welcome | 20:29 |
falktx | well, I have quite a lot from today... | 20:30 |
falktx | have you seen the list? https://github.com/falkTX/pugl/commits/master | 20:30 |
falktx | have fun! :D | 20:31 |
rgareus | aombk: python is not realtime safe (it has a global lock). for a GUI that's fine but for DSP code most certainly not. | 20:33 |
rgareus | aombk: obligatory read: http://www.rossbencina.com/code/real-time-audio-programming-101-time-waits-for-nothing | 20:34 |
rgareus | it's not about "speed" (I'm sure python can be fast enough) but about "reliability" | 20:35 |
rgareus | falktx: I hoped someone would come up with a better solution that the static BYTE kbs[256]; hack | 20:37 |
drobilla | falktx: No, just got back in. Will probably be later next week before I can really do anything | 20:40 |
falktx | np | 20:40 |
falktx | I've been slowly updating to your current code. still need to get through the new events stuff | 20:41 |
drobilla | Though I have some 36 hours on a train ahead of me, so who knows... | 20:41 |
* drobilla adds remote and fetches | 20:41 | |
falktx | drobilla: some of the changes are from me, some from rgareus | 20:42 |
falktx | I import some fixes from rgareus from time to time :) | 20:42 |
drobilla | I have you, harry, and robtk as remotes, but robtk isn't directly mergeable | 20:43 |
drobilla | May be conflicts if you've manually merged some of those too | 20:43 |
falktx | my repo is a clone of yours with manually+separated commits | 20:44 |
falktx | there's still more to come | 20:44 |
drobilla | Much as I generally avoid making things better for hypothetical imaginary future developers who do not exist, that's what this is :) | 20:44 |
drobilla | Will cram the 'how to do cairo on GL' stuff from robtk at some point. Probably some things in rutabega that are done better, but I'm pretty GLtarded | 20:45 |
falktx | heh, harry's commit changed the full whitespace... | 20:46 |
drobilla | FFS | 20:47 |
falktx | this one https://github.com/harryhaaren/openAV-AVTK/commit/8a083444e208489bca13617951108b3d07ed798f | 20:48 |
drobilla | Hm, why don't I see that in a diff of our branches... | 20:49 |
* falktx notices some avtk specific stuff in there | 20:49 | |
drobilla | Pretty sure these spacey indents were never in master. Don't know what's up there | 20:49 |
falktx | maybe the old code was the broken one | 20:49 |
* drobilla is infamously anal about such things | 20:50 | |
HarryHaaren | falktx, drobilla that is *not* my branch of PUGL - its my internal PUGL in AVTK. They're different | 20:59 |
HarryHaaren | my PUGL is here: https://github.com/harryhaaren/pugl | 20:59 |
HarryHaaren | which doesn't have said whitespace etc | 21:00 |
HarryHaaren | I (manually) chance chop and fix stuff in my AVTK PUGL, and the push proper changes to official PUGL | 21:00 |
HarryHaaren | using my AVTK PUGL changes is not recommended - as noticed, I'm not careful with whitespace, hacking / etc | 21:00 |
falktx | ah ok, makes sense | 21:01 |
falktx | some of my commits will conflict with yours | 21:02 |
HarryHaaren | I don't have any commits that drobilla hasn't already merged into his PUGL IIRC | 21:02 |
falktx | this one https://github.com/falkTX/pugl/commit/dd3d3fa6d8429292aa9591f9ee2c0f28b6dd275b | 21:02 |
falktx | we'll figure out something. I'm not using cairo myself so that part of the code I'll leave to you | 21:03 |
drobilla | Ah, okay. The above mentioned is the branch I have as a remote | 21:05 |
HarryHaaren | I've denounced the OpenAV release system earlier on today - Fabla2 next, then I'll look at where AVTK + PUGL.. | 21:05 |
HarryHaaren | yep that's good. | 21:05 |
HarryHaaren | eventually a git sub-module of PUGL will exist in AVTK - during hacking Cairo/PUGL its too much hassle, the commit-push-pull-test loop is nasty. | 21:06 |
falktx | later, cya | 21:09 |
*** falktx has quit IRC | 21:09 | |
rgareus | HarryHaaren: if you hack on the same machine.. no push/pull loop is needed, is it? | 21:12 |
rgareus | HarryHaaren: is AVTK itself also a submodule? | 21:12 |
HarryHaaren | rgareus, AVTK in this case is a normal git repo, a "local pull" from the PUGL repo is possible, but it still implies a commit for any change-set | 21:13 |
HarryHaaren | which is the bit I find annoying - I hack, forget something, must do a new commit "fix missing ;" etc | 21:13 |
*** drobilla has quit IRC | 21:18 | |
*** drobilla has joined #lv2 | 21:19 | |
drobilla | That's what rebase is for | 21:20 |
drobilla | Ability to commit whatever, comit some more stuff, then clean up that queue when done to be sane and pushable is one of the best things about git (and thing I miss most when I have to deal with stuff still in svn) | 21:21 |
drobilla | Though I don't really understand the issue here. You want to.. not.. commit.. changesets? | 21:22 |
HarryHaaren | during development of code in 2 repos, i don't want to commit things in one to test them in the other. Hence my weird copy/paste approach to PUGL / AVTK-PUGL | 21:28 |
drobilla | Do you need to? At the end of the day the submodule is still in your tree, and if you edit the files, well, they're edited | 21:30 |
* drobilla generally has no idea how to deal with this problem either, and loathes a full git migration / integration of libs in lv2 for this reason | 21:30 | |
HarryHaaren | the current approach works, and that's enough for me | 21:31 |
HarryHaaren | i have the same with AVTK / PUGL / Fabla2 now as you with libs. | 21:31 |
drobilla | Fair enough. The branch I see is sane so I don't personally care. Sounds a bit tedious though :) | 21:32 |
drobilla | Re: LV2 I'll probably just put them in the same repo straight up and avoid it all. None of them are particularly useful outside that context anyway | 21:33 |
drobilla | Other'n serd/sord which probably just won't be integrated at all | 21:33 |
drobilla | Maaaaaybe I'll submodule those since they change infrequently, but LV2 can't install libs that may be installed elsewhere, then there's *that* whole thing to deal with | 21:33 |
*** falktx has joined #lv2 | 21:51 | |
*** edogawa has quit IRC | 21:55 | |
*** aombk2 has joined #lv2 | 22:45 | |
*** aombk has quit IRC | 22:48 | |
*** ddom has quit IRC | 23:46 |
Generated by irclog2html.py 2.13.0 by Marius Gedminas - find it at mg.pov.lt!