View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0006742 | ardour | bugs | public | 2016-01-19 15:32 | 2016-01-25 03:45 |
Reporter | SadKo | Assigned To | |||
Priority | high | Severity | crash | Reproducibility | always |
Status | new | Resolution | open | ||
Platform | Linux | OS | openSUSE Linux | OS Version | 13.2 |
Product Version | 4.4 | ||||
Summary | 0006742: Crash when duplicating VST mono plugin to the stereo track | ||||
Description | The backtrace for the instantiation of the first mono plugin: T[vst.cpp: 681] vst_instantiate: Instantiated plugin Verzögerungsausgleicher Mono - Delay Compensator Mono T[vst.cpp: 354] vst_dispatcher: vst_dispatcher effect=0x6004d70, opcode=0 (effOpen), index=0, value=0, ptr=(nil), opt = 0,000 T[vst.cpp: 354] vst_dispatcher: vst_dispatcher effect=0x6004d70, opcode=58 (effGetVstVersion), index=0, value=0, ptr=(nil), opt = 0,000 T[vst.cpp: 362] vst_dispatcher: vst_version = 2400 T[vst.cpp: 354] vst_dispatcher: vst_dispatcher effect=0x6004d70, opcode=10 (effSetSampleRate), index=0, value=0, ptr=(nil), opt = 48000,000 T[vst.cpp: 354] vst_dispatcher: vst_dispatcher effect=0x6004d70, opcode=11 (effSetBlockSize), index=0, value=200, ptr=(nil), opt = 0,000 T[vst.cpp: 354] vst_dispatcher: vst_dispatcher effect=0x6004d70, opcode=56 (effGetParameterProperties), index=0, value=0, ptr=0x7fff075e3ec0, opt = 0,000 The backtrace for the instantiation of the second mono plugin: T[vst.cpp: 681] vst_instantiate: Instantiated plugin Verzögerungsausgleicher Mono - Delay Compensator Mono T[vst.cpp: 354] vst_dispatcher: vst_dispatcher effect=0x5fe9b80, opcode=0 (effOpen), index=0, value=0, ptr=(nil), opt = 0,000 T[vst.cpp: 354] vst_dispatcher: vst_dispatcher effect=0x5fe9b80, opcode=58 (effGetVstVersion), index=0, value=0, ptr=(nil), opt = 0,000 T[vst.cpp: 362] vst_dispatcher: vst_version = 2400 T[vst.cpp: 354] vst_dispatcher: vst_dispatcher effect=0x6004d70, opcode=12 (effMainsChanged), index=0, value=1, ptr=(nil), opt = 0,000 T[vst.cpp: 354] vst_dispatcher: vst_dispatcher effect=0x5fe9b80, opcode=12 (effMainsChanged), index=0, value=1, ptr=(nil), opt = 0,000 Ardour does not report effSetSampleRate to the plugin, so it crashes because can not obtain correct buffer size depending on sample rate. Reproducable on 4.6.0 release | ||||
Tags | No tags attached. | ||||
|
I tried with zam-comp as lxVST with Ardour 4.6, no crash here. Attached a patch that fixes copy constructor for VST plugins. Now Ardour report effSetSamperate and effSetBlockSize to the plugins. Does this patch solves the problem ? |
|
fix-6742.patch (807 bytes)
diff --git a/libs/ardour/lxvst_plugin.cc b/libs/ardour/lxvst_plugin.cc index 2c50144..6a0d9fc 100644 --- a/libs/ardour/lxvst_plugin.cc +++ b/libs/ardour/lxvst_plugin.cc @@ -56,7 +56,7 @@ LXVSTPlugin::LXVSTPlugin (const LXVSTPlugin &other) } Session::vst_current_loading_id = 0; - _plugin = _state->plugin; + set_plugin (_state->plugin); // Plugin::setup_controls (); } diff --git a/libs/ardour/windows_vst_plugin.cc b/libs/ardour/windows_vst_plugin.cc index a480642..a00e8aa 100644 --- a/libs/ardour/windows_vst_plugin.cc +++ b/libs/ardour/windows_vst_plugin.cc @@ -55,7 +55,7 @@ WindowsVSTPlugin::WindowsVSTPlugin (const WindowsVSTPlugin &other) } Session::vst_current_loading_id = 0; - _plugin = _state->plugin; + set_plugin (_state->plugin); } WindowsVSTPlugin::~WindowsVSTPlugin () |
|
Is it available in nightly build? |
|
No it isn't. You have to build ardour yourself with the patch applied or wait an ardour dev applies the patch upstream. |