diff options
author | David Robillard <d@drobilla.net> | 2009-05-06 06:38:53 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2009-05-06 06:38:53 +0000 |
commit | 97b5eb1580d53197dc93a805d1995b82660cdfe3 (patch) | |
tree | ea1356c2c6cd1d3b08858be6dca603722b8d1381 /libs/ardour/ladspa_plugin.cc | |
parent | 9faf3bd048f48e34cd41e4ea8d8ca15e1446854b (diff) |
Fix LADSPA plugin channel mapping.
Fixes mantis issue #0002659.
git-svn-id: svn://localhost/ardour2/branches/3.0@5054 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/ladspa_plugin.cc')
-rw-r--r-- | libs/ardour/ladspa_plugin.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/libs/ardour/ladspa_plugin.cc b/libs/ardour/ladspa_plugin.cc index 348542ce1c..852587896e 100644 --- a/libs/ardour/ladspa_plugin.cc +++ b/libs/ardour/ladspa_plugin.cc @@ -514,13 +514,15 @@ LadspaPlugin::connect_and_run (BufferSet& bufs, cycles_t now; cycles_t then = get_cycles (); + uint32_t audio_in_index = 0; + uint32_t audio_out_index = 0; for (uint32_t port_index = 0; port_index < parameter_count(); ++port_index) { if (LADSPA_IS_PORT_AUDIO(port_descriptor(port_index))) { if (LADSPA_IS_PORT_INPUT(port_descriptor(port_index))) { - const uint32_t buf_index = in_map.get(DataType::AUDIO, port_index); + const uint32_t buf_index = in_map.get(DataType::AUDIO, audio_in_index++); connect_port(port_index, bufs.get_audio(buf_index).data(offset)); } else if (LADSPA_IS_PORT_OUTPUT(port_descriptor(port_index))) { - const uint32_t buf_index = out_map.get(DataType::AUDIO, port_index); + const uint32_t buf_index = out_map.get(DataType::AUDIO, audio_out_index++); connect_port(port_index, bufs.get_audio(buf_index).data(offset)); } } |