summaryrefslogtreecommitdiff
path: root/libs/ardour/panner.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2010-11-23 16:38:17 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2010-11-23 16:38:17 +0000
commit1b2b21169c78fcc02759e4556c4d582f605490d4 (patch)
treea4bfe1298bbb7a4eafdb8f057735465379a7a660 /libs/ardour/panner.cc
parente6665809fb0bc6cbfa524ee359ef565cb7b89586 (diff)
semi-functioning vbap panning, still not done
git-svn-id: svn://localhost/ardour2/branches/3.0@8074 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/panner.cc')
-rw-r--r--libs/ardour/panner.cc16
1 files changed, 11 insertions, 5 deletions
diff --git a/libs/ardour/panner.cc b/libs/ardour/panner.cc
index 55d1e5f751..c44ab96a59 100644
--- a/libs/ardour/panner.cc
+++ b/libs/ardour/panner.cc
@@ -1643,10 +1643,11 @@ Panner::setup_speakers (uint32_t nouts)
outputs.push_back (Output (1.0, 1.0));
break;
case 4:
- outputs.push_back (Output (0, 0));
- outputs.push_back (Output (1.0, 0));
- outputs.push_back (Output (1.0, 1.0));
+ /* clockwise from top left */
outputs.push_back (Output (0, 1.0));
+ outputs.push_back (Output (1.0, 1.0));
+ outputs.push_back (Output (1.0, 0));
+ outputs.push_back (Output (0, 0));
break;
case 5: //square+offcenter center
@@ -1671,8 +1672,13 @@ Panner::setup_speakers (uint32_t nouts)
for (vector<Output>::iterator o = outputs.begin(); o != outputs.end(); ++o) {
double azimuth;
double elevation;
-
- cart_to_azi_ele ((*o).x + 1.0, (*o).y + 1.0, (*o).z, azimuth, elevation);
+ double tx, ty, tz;
+
+ tx = (*o).x - 0.5;
+ ty = (*o).y - 0.5;
+ tz = 0.0; // XXX change this if we ever do actual 3D
+
+ cart_to_azi_ele (tx, ty, tz, azimuth, elevation);
speakers.add_speaker (azimuth, elevation);
}
}