diff --git a/libs/ardour/ardour/io.h b/libs/ardour/ardour/io.h index 8ebf4e78a0..51cc4ea9ef 100644 --- a/libs/ardour/ardour/io.h +++ b/libs/ardour/ardour/io.h @@ -95,6 +95,10 @@ public: void set_pretty_name (const std::string& str); std::string pretty_name () const { return _pretty_name_prefix; } + void set_audio_channel_names (std::vector const& acn) { + _audio_channel_names = acn; + } + virtual void silence (samplecnt_t); int ensure_io (ChanCount cnt, bool clear, void *src); @@ -216,6 +220,8 @@ private: std::shared_ptr _bundle; ///< a bundle representing our ports + std::vector _audio_channel_names; + struct UserBundleInfo { UserBundleInfo (IO*, std::shared_ptr b); std::shared_ptr bundle; diff --git a/libs/ardour/io.cc b/libs/ardour/io.cc index 7784a8eff5..861e6662c6 100644 --- a/libs/ardour/io.cc +++ b/libs/ardour/io.cc @@ -1536,6 +1536,10 @@ IO::bundle_channel_name (uint32_t c, uint32_t n, DataType t) const if (t == DataType::AUDIO) { + if (n == _audio_channel_names.size () && c < _audio_channel_names.size ()) { + return _audio_channel_names.at (c); + } + switch (n) { case 1: return _("mono");