Re: [LAU] Glitch 2

From: Rui Nuno Capela <rncbc@email-addr-hidden>
Date: Mon Apr 15 2013 - 20:42:40 EEST

On 04/15/2013 06:06 PM, taktik wrote:
>
> ---
>
>> Looks cool, but someone's understanding of the VST spec is wrong. Probably
>> Ardour's.
>> This puppy calls audioMasterNeedIdle while being instantiated. Not cool.
>> Will fix A3 ASAP.
>
>>From my understanding "audioMasterNeedIdle" should not directly result
> into an idle call, but informs the host that the plugin wants
> "effIdle" calls. The specs are not really clear here though. "effIdle"
> also is NOT "effEditIdle" which drives the plugins GUIs, but a general
> idle function which should be called even when the editor is not open.
> We ended up removing the "audioMasterNeedIdle" call in Glitch 2.0.1
> now, which got released a few hours ago, cause this obviously caused
> more troubles than fixing anything.
>
> We thought it's a good idea to call "audioMasterNeedIdle", to make
> sure that we do get idle calls at all from the host. We do rely on
> this on Linux, because we need to do some housekeeping in the UI
> thread, but found no way to get constantly called in the UI thread
> without relying on the host's idle calls. On Windows we do so via a
> "SetTimer", on OSX via "InstallEventLoopTimer". On Linux there seems
> to be no equivalent timer which gets called in the "XEvent" loop.
> Juce based plugins workaround this by creating a new thread for just
> this on Linux (a "message thread" in Juce terminology - if I remember
> correctly) which does general UI thread housekeeping and also drives
> the plugin GUI when the host does not call "effEditIdle". We wanted to
> avoid creating a new thread for just this, cause such a thread will
> then run concurrently with the host's UI thread which is a guarantee
> for unnecessary overhead and of course in general a hassle to setup
> and maintain.
>
> This is also the reason why the Glitch GUI does not work in qtractor
> and muse. qtractor and muse do not call "effEditIdle", even when the
> plugin GUI is open. So if qtractor and muse could be patched to call
> "effEditIdle" for all open plugin editors this would avoid a lot of
> hassle here.
>

qtractor svn trunk (v0.5.8.2) already calls effEditIdle iif GUI is open
but not before nor later. oto. it doesn't call effIdle ever since long
ago as it's been deprecated as of vst 2.4

>
> ---
>
>> it crashes during shutdown
>
> Tested this a lot during the last days on various systems, but could
> not really replicate this here. Would be great if someone who could
> easily replicate this before could test this again with the latest
> Glitch 2.0.1 update. And If it still crashes, give us some more
> details about the used system and host. A stack trace of such a crash
> would help a lot too.
>

it still crashes on host (qtractor) shutdown; the crash spot points into
libX11 ultimately, which smells like some xcb or pthread locking
conflict in the wild; any stacktrace is useless as i find the demo .so
with no elf debug-symbols whatsoever

cheers

-- 
rncbc aka Rui Nuno Capela
rncbc@email-addr-hidden
_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@email-addr-hidden
http://lists.linuxaudio.org/listinfo/linux-audio-user
Received on Mon Apr 15 20:15:02 2013

This archive was generated by hypermail 2.1.8 : Mon Apr 15 2013 - 20:15:03 EEST