VST effects: secure master channel freezing

Master channel keeps freezing, when VST effects are placed directly
into Master channels FxChain, on slower computers.

Provided solution prolongs VST initialisation phase, by waiting on two extra messages,
which usually follows initialisation and are possibly not yet implemented well.

IdSampleRateInformation,
IdBufferSizeInformation

This seems to prevent Master channel freezes e.g. on VST effects like Tiny-Q.

Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
This commit is contained in:
Mike Choi
2013-01-18 09:57:51 +01:00
committed by Tobias Doerffel
parent 32e9ddc6e4
commit c1a2c6b1fa

View File

@@ -335,7 +335,12 @@ RemoteVstPlugin::RemoteVstPlugin( key_t _shm_in, key_t _shm_out ) :
{
message m = receiveMessage();
processMessage( m );
if( m.id == IdVstLoadPlugin || m.id == IdQuit )
//if( m.id == IdVstLoadPlugin || m.id == IdQuit )
// IdBufferSizeInformation is sent right after plugin load
// otherwise causes deadlocks to FxMixer/EffectChain
if( m.id == IdBufferSizeInformation || m.id == IdQuit )
{
break;
}