Browse Source

fix MIDI Note On idle detection mode and add configurable threshold settings

pull/1639/head
bsp2 6 years ago
parent
commit
7a44bfe4cd
7 changed files with 332 additions and 168 deletions
  1. +48
    -6
      src/app/RackWidget.cpp
  2. +64
    -20
      src/app/Toolbar.cpp
  3. +75
    -13
      src/vst2_main.cpp
  4. +4
    -0
      todo.txt
  5. +6
    -0
      vst2_bin/CHANGELOG_VST.txt
  6. +4
    -2
      vst2_bin/README_vst2.txt
  7. +131
    -127
      vst2_bin/log.txt

+ 48
- 6
src/app/RackWidget.cpp View File

@@ -16,12 +16,16 @@
extern void vst2_set_shared_plugin_tls_globals(void); extern void vst2_set_shared_plugin_tls_globals(void);


#ifdef RACK_HOST #ifdef RACK_HOST
extern void vst2_oversample_realtime_set (float _factor, int _quality);
extern void vst2_oversample_realtime_get (float *_factor, int *_quality);
extern void vst2_oversample_channels_set (int _numIn, int _numOut);
extern void vst2_oversample_channels_get (int *_numIn, int *_numOut);
extern void vst2_idle_detect_mode_set (int _mode);
extern void vst2_idle_detect_mode_get (int *_mode);
extern void vst2_oversample_realtime_set (float _factor, int _quality);
extern void vst2_oversample_realtime_get (float *_factor, int *_quality);
extern void vst2_oversample_channels_set (int _numIn, int _numOut);
extern void vst2_oversample_channels_get (int *_numIn, int *_numOut);
extern void vst2_idle_detect_mode_set (int _mode);
extern void vst2_idle_detect_mode_get (int *_mode);
extern void vst2_idle_grace_sec_set (float _sec);
extern float vst2_idle_grace_sec_get (void);
extern void vst2_idle_output_sec_set (float _sec);
extern float vst2_idle_output_sec_get (void);
#endif // RACK_HOST #endif // RACK_HOST


#endif // USE_VST2 #endif // USE_VST2
@@ -321,6 +325,22 @@ json_t *RackWidget::toJson() {
json_t *idleJ = json_real(idleDetect); json_t *idleJ = json_real(idleDetect);
json_object_set_new(rootJ, "idleDetect", idleJ); json_object_set_new(rootJ, "idleDetect", idleJ);
} }

// Idle note-on grace period (sec)
{
float sec = vst2_idle_grace_sec_get();
json_t *idleJ = json_real(sec);
json_object_set_new(rootJ, "idleGraceSec", idleJ);
}

// Idle output silence threshold (sec)
{
float sec = vst2_idle_output_sec_get();
json_t *idleJ = json_real(sec);
json_object_set_new(rootJ, "idleOutputSec", idleJ);
}
#endif // RACK_HOST #endif // RACK_HOST
#endif // USE_VST2 #endif // USE_VST2


@@ -466,6 +486,28 @@ void RackWidget::fromJson(json_t *rootJ) {
if (idleJ) { if (idleJ) {
vst2_idle_detect_mode_set(int(json_number_value(idleJ))); vst2_idle_detect_mode_set(int(json_number_value(idleJ)));
} }
}

// Idle note-on grace period (sec)
{
json_t *idleJ = json_object_get(rootJ, "idleGraceSec");
if (idleJ) {
vst2_idle_grace_sec_set(float(json_number_value(idleJ)));
}
else {
vst2_idle_grace_sec_set(0.75f);
}
}

// Idle output silence threshold (sec)
{
json_t *idleJ = json_object_get(rootJ, "idleOutputSec");
if (idleJ) {
vst2_idle_output_sec_set(float(json_number_value(idleJ)));
}
else {
vst2_idle_output_sec_set(0.2f);
}
} }
#endif // RACK_HOST #endif // RACK_HOST




+ 64
- 20
src/app/Toolbar.cpp View File

@@ -15,6 +15,10 @@ extern void vst2_oversample_channels_set (int _numIn, int _numOut);
extern void vst2_oversample_channels_get (int *_numIn, int *_numOut); extern void vst2_oversample_channels_get (int *_numIn, int *_numOut);
extern void vst2_idle_detect_mode_set (int _mode); extern void vst2_idle_detect_mode_set (int _mode);
extern void vst2_idle_detect_mode_get (int *_mode); extern void vst2_idle_detect_mode_get (int *_mode);
extern void vst2_idle_grace_sec_set (float _sec);
extern float vst2_idle_grace_sec_get (void);
extern void vst2_idle_output_sec_set (float _sec);
extern float vst2_idle_output_sec_get (void);
extern void vst2_refresh_rate_set (float _hz); extern void vst2_refresh_rate_set (float _hz);
extern float vst2_refresh_rate_get (void); extern float vst2_refresh_rate_get (void);
extern void vst2_window_size_set (int _width, int _height); extern void vst2_window_size_set (int _width, int _height);
@@ -214,6 +218,16 @@ struct IdleModeItem : MenuItem {
vst2_idle_detect_mode_set(idle_mode); vst2_idle_detect_mode_set(idle_mode);
} }
}; };

struct IdleTimeItem : MenuItem {
float idle_grace_sec;
float idle_output_sec;

void onAction(EventAction &e) override {
vst2_idle_grace_sec_set(idle_grace_sec);
vst2_idle_output_sec_set(idle_output_sec);
}
};
#endif // RACK_HOST #endif // RACK_HOST




@@ -302,27 +316,57 @@ struct IdleModeButton : TooltipIconButton {


menu->addChild(MenuLabel::create("Idle Mode")); menu->addChild(MenuLabel::create("Idle Mode"));


int idleMode; vst2_idle_detect_mode_get(&idleMode);

IdleModeItem *item;

item = new IdleModeItem();
item->text = "Always Active";
item->rightText = CHECKMARK(0/*IDLE_DETECT_NONE*/ == idleMode);
item->idle_mode = 0;
menu->addChild(item);

item = new IdleModeItem();
item->text = "Wake on MIDI Note-On";
item->rightText = CHECKMARK(1/*IDLE_DETECT_MIDI*/ == idleMode);
item->idle_mode = 1;
menu->addChild(item);
{
int idleMode; vst2_idle_detect_mode_get(&idleMode);

IdleModeItem *item;

item = new IdleModeItem();
item->text = "Always Active";
item->rightText = CHECKMARK(0/*IDLE_DETECT_NONE*/ == idleMode);
item->idle_mode = 0;
menu->addChild(item);

item = new IdleModeItem();
item->text = "Wake on MIDI Note-On";
item->rightText = CHECKMARK(1/*IDLE_DETECT_MIDI*/ == idleMode);
item->idle_mode = 1;
menu->addChild(item);

item = new IdleModeItem();
item->text = "Wake on Audio Input";
item->rightText = CHECKMARK(2/*IDLE_DETECT_AUDIO*/ == idleMode);
item->idle_mode = 2;
menu->addChild(item);
}


item = new IdleModeItem();
item->text = "Wake on Audio Input";
item->rightText = CHECKMARK(2/*IDLE_DETECT_AUDIO*/ == idleMode);
item->idle_mode = 2;
menu->addChild(item);
{
float idleGraceSec = vst2_idle_grace_sec_get();
float idleOutputSec = vst2_idle_output_sec_get();
IdleTimeItem *item;
printf("xxx Toolbar: idleGraceSec=%f idleOutputSec=%f\n", idleGraceSec, idleOutputSec);

item = new IdleTimeItem();
item->text = "Idle Time: Long (Slow Attacks, 750ms)";
item->rightText = CHECKMARK(0.75f == idleGraceSec);
item->idle_grace_sec = 0.75f;
item->idle_output_sec = 0.2f;
menu->addChild(item);

item = new IdleTimeItem();
item->text = "Idle Time: Default (300 ms)";
item->rightText = CHECKMARK(0.3f == idleGraceSec);
item->idle_grace_sec = 0.3f;
item->idle_output_sec = 0.2f;
menu->addChild(item);

item = new IdleTimeItem();
item->text = "Idle Time: Short (Percussion, 150ms)";
item->rightText = CHECKMARK(0.15f == idleGraceSec);
item->idle_grace_sec = 0.15f;
item->idle_output_sec = 0.1f;
menu->addChild(item);
}
#endif // RACK_HOST #endif // RACK_HOST
} }
}; };


+ 75
- 13
src/vst2_main.cpp View File

@@ -19,6 +19,8 @@
/// changed: 26Jun2018, 27Jun2018, 29Jun2018, 01Jul2018, 02Jul2018, 06Jul2018, 13Jul2018 /// changed: 26Jun2018, 27Jun2018, 29Jun2018, 01Jul2018, 02Jul2018, 06Jul2018, 13Jul2018
/// 26Jul2018, 04Aug2018, 05Aug2018, 06Aug2018, 07Aug2018, 09Aug2018, 11Aug2018 /// 26Jul2018, 04Aug2018, 05Aug2018, 06Aug2018, 07Aug2018, 09Aug2018, 11Aug2018
/// 18Aug2018, 19Aug2018, 05Sep2018, 06Sep2018, 10Oct2018, 26Oct2018, 10Mar2019 /// 18Aug2018, 19Aug2018, 05Sep2018, 06Sep2018, 10Oct2018, 26Oct2018, 10Mar2019
/// 12Mar2019
///
/// ///
/// ///


@@ -488,13 +490,16 @@ public:
bool b_offline; // true=offline rendering (HQ) bool b_offline; // true=offline rendering (HQ)
bool b_check_offline; // true=ask host if it's in offline rendering mode bool b_check_offline; // true=ask host if it's in offline rendering mode


sUI idle_detect_mode;
sUI idle_detect_mode_fx;
sUI idle_detect_mode_instr;
sUI idle_detect_mode;
sUI idle_detect_mode_fx;
sUI idle_detect_mode_instr;
sF32 idle_input_level_threshold; sF32 idle_input_level_threshold;
sF32 idle_output_level_threshold; sF32 idle_output_level_threshold;
sF32 idle_output_sec_threshold; sF32 idle_output_sec_threshold;
sUI idle_output_framecount;
sUI idle_output_framecount;
sF32 idle_noteon_sec_grace; // grace period after note on
sUI idle_frames_since_noteon;

bool b_idle; bool b_idle;


sBool b_fix_denorm; // true=fix denormalized floats + clip to -4..4. fixes broken audio in FLStudio and Reason. sBool b_fix_denorm; // true=fix denormalized floats + clip to -4..4. fixes broken audio in FLStudio and Reason.
@@ -1020,6 +1025,7 @@ public:
} }
b_idle = false; b_idle = false;
idle_output_framecount = 0u; idle_output_framecount = 0u;
idle_frames_since_noteon = 0u;
} }


void setIdleDetectModeFx(uint32_t _mode) { void setIdleDetectModeFx(uint32_t _mode) {
@@ -1036,12 +1042,28 @@ public:
#endif // VST2_EFFECT #endif // VST2_EFFECT
} }


void setIdleGraceSec(float _sec) {
idle_noteon_sec_grace = _sec;
}

float getIdleGraceSec(void) const {
return idle_noteon_sec_grace;
}

void setIdleOutputSec(float _sec) {
idle_output_sec_threshold = _sec;
}

float getIdleOutputSec(void) const {
return idle_output_sec_threshold;
}

void setEnableFixDenorm(int32_t _bEnable) { void setEnableFixDenorm(int32_t _bEnable) {
b_fix_denorm = (0 != _bEnable); b_fix_denorm = (0 != _bEnable);
Dprintf("vst2_main:setEnableFixDenorm(%d)\n", b_fix_denorm); Dprintf("vst2_main:setEnableFixDenorm(%d)\n", b_fix_denorm);
} }


int32_t getEnableFixDenorm(void) {
int32_t getEnableFixDenorm(void) const {
return int32_t(b_fix_denorm); return int32_t(b_fix_denorm);
} }


@@ -1296,8 +1318,6 @@ void VSTPluginProcessReplacingFloat32(VSTPlugin *vstPlugin,


case VSTPluginWrapper::IDLE_DETECT_AUDIO: case VSTPluginWrapper::IDLE_DETECT_AUDIO:
{ {
wrapper->b_idle = true;

for(chIdx = 0u; chIdx < NUM_INPUTS; chIdx++) for(chIdx = 0u; chIdx < NUM_INPUTS; chIdx++)
{ {
if(chIdx < wrapper->oversample.num_in) if(chIdx < wrapper->oversample.num_in)
@@ -1498,15 +1518,28 @@ void VSTPluginProcessReplacingFloat32(VSTPlugin *vstPlugin,
} }
} }


if(VSTPluginWrapper::IDLE_DETECT_MIDI == wrapper->idle_detect_mode)
{
wrapper->idle_frames_since_noteon += sampleFrames;
}

if(bSilence) if(bSilence)
{ {
wrapper->idle_output_framecount += sampleFrames; wrapper->idle_output_framecount += sampleFrames;


if(VSTPluginWrapper::IDLE_DETECT_MIDI == wrapper->idle_detect_mode)
{
bSilence = (wrapper->idle_frames_since_noteon >= sUI(wrapper->idle_noteon_sec_grace * wrapper->sample_rate));
}

if(wrapper->idle_output_framecount >= sUI(wrapper->idle_output_sec_threshold * wrapper->sample_rate)) if(wrapper->idle_output_framecount >= sUI(wrapper->idle_output_sec_threshold * wrapper->sample_rate))
{ {
// Frame threshold exceeded, become idle
wrapper->b_idle = true;
Dprintf_idle("xxx vstrack_plugin: now idle\n");
if(bSilence)
{
// Frame threshold exceeded, become idle
wrapper->b_idle = true;
Dprintf_idle("xxx vstrack_plugin: now idle\n");
}
} }
} }
else else
@@ -1871,15 +1904,17 @@ VstIntPtr VSTPluginDispatcher(VSTPlugin *vstPlugin,
Dprintf("vstrack_plugin:effProcessEvents<midi>: ev[%u].noteOffVelocity = %d\n", evIdx, mev->noteOffVelocity); // 0..127 Dprintf("vstrack_plugin:effProcessEvents<midi>: ev[%u].noteOffVelocity = %d\n", evIdx, mev->noteOffVelocity); // 0..127
#endif // DEBUG_PRINT_EVENTS #endif // DEBUG_PRINT_EVENTS


if((VSTPluginWrapper::IDLE_DETECT_MIDI == wrapper->idle_detect_mode) && wrapper->b_idle)
if(VSTPluginWrapper::IDLE_DETECT_MIDI == wrapper->idle_detect_mode)
{ {
if(0x90u == (mev->midiData[0] & 0xF0u)) // Note on ? if(0x90u == (mev->midiData[0] & 0xF0u)) // Note on ?
{ {
wrapper->lockAudio(); wrapper->lockAudio();
if(wrapper->b_idle)
Dprintf_idle("xxx vstrack_plugin: become active after MIDI note on\n");
wrapper->b_idle = false; wrapper->b_idle = false;
wrapper->idle_output_framecount = 0u; wrapper->idle_output_framecount = 0u;
wrapper->idle_frames_since_noteon = 0u;
wrapper->unlockAudio(); wrapper->unlockAudio();
Dprintf_idle("xxx vstrack_plugin: become active after MIDI note on\n");
} }
} }


@@ -2176,8 +2211,10 @@ VSTPluginWrapper::VSTPluginWrapper(audioMasterCallback vstHostCallback,
b_idle = false; b_idle = false;
idle_input_level_threshold = 0.00018f;//0.00007f; idle_input_level_threshold = 0.00018f;//0.00007f;
idle_output_level_threshold = 0.00018f;//0.00003f; idle_output_level_threshold = 0.00018f;//0.00003f;
idle_output_sec_threshold = 120.0f / 1000.0f; // idle after 120ms of silence
idle_output_sec_threshold = 0.2f; // idle after 200ms of silence
idle_output_framecount = 0u; idle_output_framecount = 0u;
idle_noteon_sec_grace = 0.3f; // grace period after note on
idle_frames_since_noteon = 0u;


b_fix_denorm = false; b_fix_denorm = false;


@@ -2315,6 +2352,31 @@ void vst2_idle_detect_mode_get(int *_mode) {
*_mode = int(rack::global->vst2.wrapper->idle_detect_mode); *_mode = int(rack::global->vst2.wrapper->idle_detect_mode);
} }


void vst2_idle_grace_sec_set(float _sec) {
// Note-ons / MIDI idle detect mode
if(_sec < 0.05f)
_sec = 0.05f;
else if(_sec > 3.0f)
_sec = 3.0f;
rack::global->vst2.wrapper->setIdleGraceSec(_sec);
}

float vst2_idle_grace_sec_get(void) {
return rack::global->vst2.wrapper->getIdleGraceSec();
}

void vst2_idle_output_sec_set(float _sec) {
if(_sec < 0.05f)
_sec = 0.05f;
else if(_sec > 3.0f)
_sec = 3.0f;
rack::global->vst2.wrapper->setIdleOutputSec(_sec);
}

float vst2_idle_output_sec_get(void) {
return rack::global->vst2.wrapper->getIdleOutputSec();
}

int vst2_fix_denorm_get(void) { int vst2_fix_denorm_get(void) {
return rack::global->vst2.wrapper->getEnableFixDenorm(); return rack::global->vst2.wrapper->getEnableFixDenorm();
} }


+ 4
- 0
todo.txt View File

@@ -192,3 +192,7 @@


+ fix save/save as keyboard shortcuts + fix save/save as keyboard shortcuts


------------------------------------------------------------------------
+ add "idleGraceSec" patch property (MIDI note-on grace period in seconds)
+ add "idleOutputSec" patch property (output silence threshold in seconds)
+ add idle grace/output Toolbar settings (short=150ms, def=300ms, long=700ms)

+ 6
- 0
vst2_bin/CHANGELOG_VST.txt View File

@@ -1,4 +1,10 @@


** March 15th, 2019
- fix "MIDI Note On" idle detection mode
- add configurable threshold settings for MIDI idle detection (short, default, long)
- add new demo video: https://youtu.be/XTpLfcz-6Vo


** March 10th, 2019 ** March 10th, 2019
- implement MIDI channel aftertouch - implement MIDI channel aftertouch
- add "fixDenorm" global setting (settings.json) (also editable via Toolbar) - add "fixDenorm" global setting (settings.json) (also editable via Toolbar)


+ 4
- 2
vst2_bin/README_vst2.txt View File

@@ -1,4 +1,4 @@
VeeSeeVST Rack VST 2.4 Plugin -- March 10th, 2019
VeeSeeVST Rack VST 2.4 Plugin -- March 15th, 2019
================================================= =================================================


!!!------------------------------------------------------------------------------ !!!------------------------------------------------------------------------------
@@ -27,7 +27,9 @@ This is a quick'n'dirty adaption of VCV Rack 0.6.1 for the VST2 format.
- wake up on MIDI note on or audio input - wake up on MIDI note on or audio input
+ comes with 827 prebuilt modules + comes with 827 prebuilt modules


Here's a demo video of it: https://vimeo.com/277703414
Here's an old demo video of it: https://vimeo.com/277703414
And a newer one: https://youtu.be/XTpLfcz-6Vo



Windows version tested in: Windows version tested in:
- Eureka (my own work-in-progress VST host) - Eureka (my own work-in-progress VST host)


+ 131
- 127
vst2_bin/log.txt View File

@@ -1,127 +1,131 @@
[0.000 info src/main.cpp:67] VeeSeeVST Rack 0.6.1
[0.000 info src/main.cpp:70] Global directory: f:\git\VeeSeeVSTRack\vst2_bin\/
[0.000 info src/main.cpp:71] Local directory: f:\git\VeeSeeVSTRack\vst2_bin\/
[0.000 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin 21kHz 0.6.1
[0.000 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin AmalgamatedHarmonics 0.6.5
[0.000 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Alikins 0.6.6
[0.000 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin alto777_LFSR 0.6.1
[0.000 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin arjo_modules 0.6.0
[0.001 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin AS 0.6.13
[0.001 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin AudibleInstruments 0.6.3
[0.001 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Autodafe 0.6.1
[0.001 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin BaconMusic 0.6.1
[0.001 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Bark 0.6.5
[0.002 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Befaco 0.6.1
[0.002 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Bidoo 0.6.27
[0.002 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Bogaudio 0.6.13
[0.002 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin CastleRocktronics 0.6.1
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin cf 0.6.8
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin com-soundchasing-stochasm 0.6.1
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin computerscare 0.6.1
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin DHE-Modules 0.6.4
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin DrumKit 0.6.1
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Edge 0.6.3
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin EH_modules 0.6.1
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin ErraticInstruments 0.6.1
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin ESeries 0.6.1
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin FrankBussFormula 0.6.1
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin FrozenWasteland 0.6.1
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Fundamental 0.6.2
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Geodesics 0.6.6
[0.004 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Gratrix 0.6.1
[0.004 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin HetrickCV 0.6.1
[0.004 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin huaba 0.6.1
[0.004 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin ImpromptuModular 0.6.16
[0.004 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin JE 0.6.1
[0.004 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin JW-Modules 0.6.3
[0.004 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Koralfx-Modules 0.6.1
[0.004 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin LabSeven 0.6.2
[0.004 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin LindenbergResearch 0.6.4
[0.004 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin LOGinstruments 0.6.1
[0.004 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin mental 0.6.1
[0.004 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin MicMusic 0.6.3
[0.005 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin ML_modules 0.6.4
[0.005 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin moDllz 0.6.6
[0.005 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin modular80 0.6.4
[0.005 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin mscHack 0.6.1
[0.005 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin mtsch-plugins 0.6.1
[0.005 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin NauModular 0.6.1
[0.005 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Nohmad 0.6.1
[0.005 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin noobhour 0.6.2
[0.005 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Ohmer 0.6.1
[0.005 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin PG-Instruments 0.6.1
[0.005 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin PvC 0.6.1
[0.005 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin QuantalAudio 0.6.4
[0.006 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Qwelk 0.6.1
[0.006 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin rcm 0.6.12
[0.006 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin RJModules 0.6.1
[0.006 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin SerialRacker 0.6.1
[0.006 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Skylights 0.6.3
[0.006 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin SonusModular 0.6.1
[0.006 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Southpole 0.6.1
[0.006 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Southpole-parasites 0.6.1
[0.006 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin squinkylabs-plug1 0.6.14
[0.007 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin SubmarineFree 0.6.8
[0.007 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin SynthKit 0.6.1
[0.007 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Template 0.6.1
[0.007 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin TheXOR 0.6.1
[0.007 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin trowaSoft 0.6.1
[0.007 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin unless_modules 0.6.1
[0.007 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Valley 0.6.16
[0.008 info src/plugin.cpp:90] trying to load shared plugin file f:\git\VeeSeeVSTRack\vst2_bin\/plugins/bsp/plugin.dll.instr
[0.009 info src/plugin.cpp:160] Loaded plugin bsp 0.6.1 from f:\git\VeeSeeVSTRack\vst2_bin\/plugins/bsp/plugin.dll.instr
[0.009 info src/plugin.cpp:90] trying to load shared plugin file f:\git\VeeSeeVSTRack\vst2_bin\/plugins/dBiz/plugin.dll.instr
[0.009 info src/plugin.cpp:160] Loaded plugin dBiz 0.6.1 from f:\git\VeeSeeVSTRack\vst2_bin\/plugins/dBiz/plugin.dll.instr
[0.010 info src/plugin.cpp:90] trying to load shared plugin file f:\git\VeeSeeVSTRack\vst2_bin\/plugins/Template_shared/plugin.dll.instr
[0.011 info src/plugin.cpp:160] Loaded plugin Template_shared 0.6.1 from f:\git\VeeSeeVSTRack\vst2_bin\/plugins/Template_shared/plugin.dll.instr
[0.011 info src/settings.cpp:475] Loading settings f:\git\VeeSeeVSTRack\vst2_bin\/settings.json
[0.020 info src/window.cpp:725] Loaded font f:\git\VeeSeeVSTRack\vst2_bin\/res/fonts/DejaVuSans.ttf
[0.021 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_146097_cc.svg
[0.021 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_31859_cc.svg
[0.021 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_1343816_cc.svg
[0.021 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_1343811_cc.svg
[0.021 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_1084369_cc.svg
[0.021 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_1745061_cc.svg
[0.022 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_1240789_cc.svg
[0.022 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_305536_cc.svg
[0.022 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_468341_cc.svg
[0.022 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/idle_mode_icon_cc.svg
[0.022 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/settings_icon_cc.svg
[0.022 info src/settings.cpp:475] Loading settings f:\git\VeeSeeVSTRack\vst2_bin\/settings.json
[0.024 info src/app/RackWidget.cpp:216] Loading patch from string
[0.026 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/Core/AudioInterface.svg
[0.026 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/ComponentLibrary/ScrewSilver.svg
[0.026 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/ComponentLibrary/PJ301M.svg
[0.026 info src/window.cpp:725] Loaded font f:\git\VeeSeeVSTRack\vst2_bin\/res/fonts/ShareTechMono-Regular.ttf
[0.027 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/Core/MIDIToCVInterface.svg
[0.029 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/XCO.svg
[0.029 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/knob_68px.svg
[0.030 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/knob_16px.svg
[0.030 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/button_9px_0.svg
[0.030 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/button_9px_1.svg
[0.030 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/knob_38px.svg
[0.030 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/slider_switch_2_14px_0.svg
[0.030 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/slider_switch_2_14px_1.svg
[0.030 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/port.svg
[0.031 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Fundamental/res/VCA.svg
[0.031 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/ComponentLibrary/RoundLargeBlackKnob.svg
[0.032 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/AS/res/ADSR.svg
[0.032 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/AS/res/as-hexscrew.svg
[0.032 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/AS/res/as-SlidePot.svg
[0.032 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/AS/res/as-SlidePotHandle.svg
[0.033 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/AS/res/as-PJ301M.svg
[0.035 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/21kHz/res/Panels/D_Inf.svg
[0.035 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/21kHz/res/Components/kHzScrew.svg
[0.035 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/21kHz/res/Components/kHzKnobSmall.svg
[0.036 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/21kHz/res/Components/kHzButton_0.svg
[0.036 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/21kHz/res/Components/kHzButton_1.svg
[0.036 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/21kHz/res/Components/kHzPort.svg
[0.037 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Autodafe/res/Multiple18.svg
[0.037 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/ComponentLibrary/PJ3410.svg
[0.040 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/huaba/res/EQ3.svg
[0.041 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/AS/res/as_LFO.svg
[0.042 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/AS/res/as-knobBlack.svg
[0.042 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/AS/res/as_CKSS_0.svg
[0.042 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/AS/res/as_CKSS_1.svg
[313.153 info src/app/RackWidget.cpp:161] Saving patch F:\git\VeeSeeVSTRack\vst2_bin\patches\bsp\BSP pulse lead 2.vcv
[327.408 info src/app/RackWidget.cpp:178] Saving patch to string
[0.000 info src/main.cpp:67] VeeSeeVST Rack 0.6.1
[0.000 info src/main.cpp:70] Global directory: f:\git\VeeSeeVSTRack\vst2_bin\/
[0.000 info src/main.cpp:71] Local directory: f:\git\VeeSeeVSTRack\vst2_bin\/
[0.000 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin 21kHz 0.6.1
[0.000 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin AmalgamatedHarmonics 0.6.5
[0.000 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Alikins 0.6.6
[0.000 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin alto777_LFSR 0.6.1
[0.000 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin arjo_modules 0.6.0
[0.000 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin AS 0.6.13
[0.000 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin AudibleInstruments 0.6.3
[0.000 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Autodafe 0.6.1
[0.000 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin BaconMusic 0.6.1
[0.000 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Bark 0.6.5
[0.000 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Befaco 0.6.1
[0.001 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Bidoo 0.6.27
[0.001 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Bogaudio 0.6.13
[0.001 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin CastleRocktronics 0.6.1
[0.001 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin cf 0.6.8
[0.001 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin com-soundchasing-stochasm 0.6.1
[0.001 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin computerscare 0.6.1
[0.001 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin DHE-Modules 0.6.4
[0.001 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin DrumKit 0.6.1
[0.001 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Edge 0.6.3
[0.001 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin EH_modules 0.6.1
[0.001 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin ErraticInstruments 0.6.1
[0.001 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin ESeries 0.6.1
[0.001 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin FrankBussFormula 0.6.1
[0.001 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin FrozenWasteland 0.6.1
[0.001 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Fundamental 0.6.2
[0.001 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Geodesics 0.6.6
[0.001 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Gratrix 0.6.1
[0.001 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin HetrickCV 0.6.1
[0.001 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin huaba 0.6.1
[0.001 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin ImpromptuModular 0.6.16
[0.001 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin JE 0.6.1
[0.002 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin JW-Modules 0.6.3
[0.002 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Koralfx-Modules 0.6.1
[0.002 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin LabSeven 0.6.2
[0.002 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin LindenbergResearch 0.6.4
[0.002 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin LOGinstruments 0.6.1
[0.002 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin mental 0.6.1
[0.002 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin MicMusic 0.6.3
[0.002 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin ML_modules 0.6.4
[0.002 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin moDllz 0.6.6
[0.002 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin modular80 0.6.4
[0.002 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin mscHack 0.6.1
[0.002 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin mtsch-plugins 0.6.1
[0.002 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin NauModular 0.6.1
[0.002 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Nohmad 0.6.1
[0.002 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin noobhour 0.6.2
[0.002 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Ohmer 0.6.1
[0.002 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin PG-Instruments 0.6.1
[0.002 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin PvC 0.6.1
[0.002 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin QuantalAudio 0.6.4
[0.002 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Qwelk 0.6.1
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin rcm 0.6.12
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin RJModules 0.6.1
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin SerialRacker 0.6.1
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Skylights 0.6.3
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin SonusModular 0.6.1
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Southpole 0.6.1
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Southpole-parasites 0.6.1
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin squinkylabs-plug1 0.6.14
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin SubmarineFree 0.6.8
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin SynthKit 0.6.1
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Template 0.6.1
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin TheXOR 0.6.1
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin trowaSoft 0.6.1
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin unless_modules 0.6.1
[0.003 info src/plugin_static.cpp:150] vcvrack: Loaded static plugin Valley 0.6.16
[0.004 info src/plugin.cpp:90] trying to load shared plugin file f:\git\VeeSeeVSTRack\vst2_bin\/plugins/bsp/plugin.dll.fx
[0.004 info src/plugin.cpp:160] Loaded plugin bsp 0.6.1 from f:\git\VeeSeeVSTRack\vst2_bin\/plugins/bsp/plugin.dll.fx
[0.004 info src/plugin.cpp:90] trying to load shared plugin file f:\git\VeeSeeVSTRack\vst2_bin\/plugins/dBiz/plugin.dll.fx
[0.004 info src/plugin.cpp:160] Loaded plugin dBiz 0.6.1 from f:\git\VeeSeeVSTRack\vst2_bin\/plugins/dBiz/plugin.dll.fx
[0.005 info src/plugin.cpp:90] trying to load shared plugin file f:\git\VeeSeeVSTRack\vst2_bin\/plugins/Template_shared/plugin.dll.fx
[0.005 info src/plugin.cpp:160] Loaded plugin Template_shared 0.6.1 from f:\git\VeeSeeVSTRack\vst2_bin\/plugins/Template_shared/plugin.dll.fx
[0.006 info src/settings.cpp:475] Loading settings f:\git\VeeSeeVSTRack\vst2_bin\/settings.json
[0.016 info src/window.cpp:725] Loaded font f:\git\VeeSeeVSTRack\vst2_bin\/res/fonts/DejaVuSans.ttf
[0.017 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_146097_cc.svg
[0.017 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_31859_cc.svg
[0.017 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_1343816_cc.svg
[0.017 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_1343811_cc.svg
[0.018 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_1084369_cc.svg
[0.018 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_1745061_cc.svg
[0.018 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_1240789_cc.svg
[0.018 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_305536_cc.svg
[0.018 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_468341_cc.svg
[0.018 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/idle_mode_icon_cc.svg
[0.018 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/settings_icon_cc.svg
[0.018 info src/settings.cpp:475] Loading settings f:\git\VeeSeeVSTRack\vst2_bin\/settings.json
[0.021 info src/app/RackWidget.cpp:220] Loading patch from string
[0.023 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/Core/AudioInterface.svg
[0.023 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/ComponentLibrary/ScrewSilver.svg
[0.023 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/ComponentLibrary/PJ301M.svg
[0.023 info src/window.cpp:725] Loaded font f:\git\VeeSeeVSTRack\vst2_bin\/res/fonts/ShareTechMono-Regular.ttf
[0.024 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/Core/MIDIToCVInterface.svg
[0.025 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Alikins/res/SpecificValue.svg
[0.025 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/ComponentLibrary/Trimpot.svg
[0.025 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Alikins/res/PurpleTrimpot.svg
[0.025 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/ComponentLibrary/Trimpot.svg
[0.026 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Fundamental/res/VCA-1.svg
[0.027 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/ComponentLibrary/CKSS_0.svg
[0.027 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/ComponentLibrary/CKSS_1.svg
[0.029 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/Pressor.svg
[0.030 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/knob_38px.svg
[0.030 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/knob_26px.svg
[0.030 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/slider_switch_2_14px_0.svg
[0.030 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/slider_switch_2_14px_1.svg
[0.030 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/port.svg
[0.032 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Southpole/res/Abr.svg
[0.032 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Southpole/res/sp-Port20.svg
[0.032 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Southpole/res/sp-switchv_0.svg
[0.032 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Southpole/res/sp-switchv_1.svg
[0.033 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Southpole/res/DeuxEtageres.svg
[0.034 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Southpole/res/sp-knobBlack.svg
[0.034 info src/window.cpp:780] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Southpole/res/sp-trimpotBlack.svg
[4.239 info src/app/RackWidget.cpp:182] Saving patch to string
[4.291 info src/app/RackWidget.cpp:182] Saving patch to string
[6.984 info src/app/RackWidget.cpp:182] Saving patch to string
[7.317 info src/app/RackWidget.cpp:182] Saving patch to string
[4.342 info src/app/RackWidget.cpp:182] Saving patch to string
[4.566 info src/app/RackWidget.cpp:182] Saving patch to string
fo src/app/RackWidget.cpp:182] Saving patch to string
[5.861 info src/app/RackWidget.cpp:182] Saving patch to string
[7.526 info src/app/RackWidget.cpp:182] Saving patch to string
[5.746 info src/app/RackWidget.cpp:182] Saving patch to string
[6.323 info src/app/RackWidget.cpp:182] Saving patch to string
[6.560 info src/app/RackWidget.cpp:182] Saving patch to string
[5.192 info src/app/RackWidget.cpp:182] Saving patch to string
[6.918 inf[5.516 info src/app/RackWidget.cpp:182] Saving patch to string
[6.092 info src/app/RackWidget.cpp:182] Saving patch to string

Loading…
Cancel
Save