From da144ab5edb5bb629a8300c2cbf93c7f87947a83 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Thu, 17 Feb 2011 16:43:55 +0000 Subject: more progress on speakers/vbap etc. etc (still a work in progress) git-svn-id: svn://localhost/ardour2/branches/3.0@8887 d708f5d6-7413-0410-9779-e7cbd77b26cf --- libs/ardour/panner_shell.cc | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'libs/ardour/panner_shell.cc') diff --git a/libs/ardour/panner_shell.cc b/libs/ardour/panner_shell.cc index ecf7adf990..d67925ed5c 100644 --- a/libs/ardour/panner_shell.cc +++ b/libs/ardour/panner_shell.cc @@ -104,7 +104,18 @@ PannerShell::configure_io (ChanCount in, ChanCount out) abort (); } - Panner* p = pi->descriptor.factory (_pannable, _session.get_speakers()); + boost::shared_ptr speakers = _session.get_speakers (); + + if (nouts != speakers->size()) { + /* hmm, output count doesn't match session speaker count so + create a new speaker set. + */ + Speakers* s = new Speakers (); + s->setup_default_speakers (nouts); + speakers.reset (s); + } + + Panner* p = pi->descriptor.factory (_pannable, speakers); boost_debug_shared_ptr_mark_interesting (p, "Panner"); _panner.reset (p); _panner->configure_io (in, out); -- cgit v1.2.3