1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-11-09 14:43:57 +01:00

Fixes 2 VST issues, an RTP issue, and relaxes an AU restriction

1)  Shell VSTs were completely unrecognized...that is no longer the case
2)  All VSTs will now ALWAYS be initialized and cleaned up from the main
    GUI thread.  I found that some Waves VSTs would freeze Audacity when
    initialized in the audio thread and closed in the GUI thread.
3)  While realtime previewing, it was possible that the wrong slave 
    could be used to process new blocks of audio.
4)  I found that the Waves AUs don't crash on a real Mac (instead of a
    virtual machine), so I removed the "black list" I'd put in just for
    them.  (Something to do with needing full 3D support I think.)

Anyway, #2 and #3 were quite intrusive, so as much RTP testing as possible
would be a good thing.
This commit is contained in:
lllucius@gmail.com
2015-01-02 05:24:43 +00:00
parent bec5866653
commit aa49817563
13 changed files with 700 additions and 417 deletions

View File

@@ -103,10 +103,13 @@ class AUDACITY_DLL_API EffectManager
void RealtimeRemoveEffect(Effect *effect);
void RealtimeSetEffects(const EffectArray & mActive);
void RealtimeInitialize();
void RealtimeAddProcessor(int group, int chans, float rate);
void RealtimeFinalize();
void RealtimeSuspend();
void RealtimeResume();
sampleCount RealtimeProcess(int group, int chans, float rate, float **buffers, sampleCount numSamples);
void RealtimeProcessStart();
sampleCount RealtimeProcess(int group, int chans, float **buffers, sampleCount numSamples);
void RealtimeProcessEnd();
int GetRealtimeLatency();
#endif
@@ -169,6 +172,8 @@ private:
int mRealtimeLatency;
bool mRealtimeSuspended;
bool mRealtimeActive;
wxArrayInt mRealtimeChans;
wxArrayDouble mRealtimeRates;
#endif
#ifdef EFFECT_CATEGORIES