VST3: retain I/O from older versions (bump session format)
A VST3 plugin can have additional busses which were not available in older versions of Ardour. For compatibility reasons those should remain unconnected. This is achieved by using a custom I/O config (same way a user would configure this).
This commit is contained in:
parent
e5e9b477d0
commit
2226da1385
@ -3,7 +3,7 @@
|
||||
* Copyright (C) 2007-2012 Carl Hetherington <carl@carlh.net>
|
||||
* Copyright (C) 2007-2014 David Robillard <d@drobilla.net>
|
||||
* Copyright (C) 2008-2009 Sampo Savolainen <v2@iki.fi>
|
||||
* Copyright (C) 2013-2019 Robin Gareus <robin@gareus.org>
|
||||
* Copyright (C) 2013-2023 Robin Gareus <robin@gareus.org>
|
||||
* Copyright (C) 2016-2017 Tim Mayberry <mojofunk@gmail.com>
|
||||
* Copyright (C) 2018 Johannes Mueller <github@johannes-mueller.org>
|
||||
*
|
||||
@ -2824,6 +2824,14 @@ PluginInsert::set_state(const XMLNode& node, int version)
|
||||
}
|
||||
}
|
||||
|
||||
if (version < 7002 && !_custom_cfg /* && !strict_io ()*/ && plugin()->get_info ()->type == ARDOUR::VST3) {
|
||||
if (_configured_in != plugin()->get_info()->n_inputs * _plugins.size () ||
|
||||
_configured_out != plugin()->get_info()->n_outputs * _plugins.size ()) {
|
||||
/* do not add VST busses which were not previously available */
|
||||
_custom_cfg = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (in_maps == out_maps && out_maps >0 && out_maps == get_count()) {
|
||||
_maps_from_state = true;
|
||||
}
|
||||
|
@ -8,7 +8,7 @@ import subprocess
|
||||
import sys
|
||||
|
||||
# default state file version for this build
|
||||
CURRENT_SESSION_FILE_VERSION = 7001
|
||||
CURRENT_SESSION_FILE_VERSION = 7002
|
||||
|
||||
I18N_PACKAGE = 'ardour'
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user