diff options
author | Robin Gareus <robin@gareus.org> | 2016-11-10 05:02:31 +0100 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2016-11-10 05:02:31 +0100 |
commit | 781d88e4edd4be112a7a16b67516253cd38afbe5 (patch) | |
tree | 107c825fa55cd8de742c1a198336fbc9ed6789bd /libs/ardour/audio_unit.cc | |
parent | e34f8dbf1ee7b845bf48a78d6f5148034b455885 (diff) |
Add AU support for output-channel/bus grouping
Diffstat (limited to 'libs/ardour/audio_unit.cc')
-rw-r--r-- | libs/ardour/audio_unit.cc | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/libs/ardour/audio_unit.cc b/libs/ardour/audio_unit.cc index 13bc579731..f82ab3275e 100644 --- a/libs/ardour/audio_unit.cc +++ b/libs/ardour/audio_unit.cc @@ -1958,6 +1958,8 @@ AUPlugin::describe_io_port (ARDOUR::DataType dt, bool input, uint32_t id) const break; } + std::string busname; + if (dt == DataType::AUDIO) { if (input) { uint32_t pid = id; @@ -1966,6 +1968,7 @@ AUPlugin::describe_io_port (ARDOUR::DataType dt, bool input, uint32_t id) const id = pid; ss << _bus_name_in[bus]; ss << " / Bus " << (1 + bus); + busname = _bus_name_in[bus]; break; } pid -= bus_inputs[bus]; @@ -1978,6 +1981,7 @@ AUPlugin::describe_io_port (ARDOUR::DataType dt, bool input, uint32_t id) const id = pid; ss << _bus_name_out[bus]; ss << " / Bus " << (1 + bus); + busname = _bus_name_out[bus]; break; } pid -= bus_outputs[bus]; @@ -1994,6 +1998,10 @@ AUPlugin::describe_io_port (ARDOUR::DataType dt, bool input, uint32_t id) const ss << (id + 1); Plugin::IOPortDescription iod (ss.str()); + if (!busname.empty()) { + iod.group_name = busname; + iod.group_channel = id; + } return iod; } |