SAF
Loading...
Searching...
No Matches
ambi_enc_internal.c
Go to the documentation of this file.
1/*
2 * Copyright 2016-2018 Leo McCormack
3 *
4 * Permission to use, copy, modify, and/or distribute this software for any
5 * purpose with or without fee is hereby granted, provided that the above
6 * copyright notice and this permission notice appear in all copies.
7 *
8 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
9 * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
10 * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
11 * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
12 * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
13 * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14 * PERFORMANCE OF THIS SOFTWARE.
15 */
16
25
26#include "ambi_enc.h"
27#include "ambi_enc_internal.h"
28
30
31/* First 1 source(s) are for mono [0 0], the rest are for a 128 point sphere covering */
33{ { 0.0f, 0.0f},
34 { -120.415474946769f, 69.7642225220975f},
35 { 169.426697678052f, -17.3466306179260f},
36 { 107.629281568279f, -10.0793856720614f},
37 { -59.5674172539630f, -69.7763953095265f},
38 { -107.629493132161f, 10.0801907586439f},
39 { 59.5651193014662f, 69.7750019669784f},
40 { -72.3715136529922f, -10.0909592824967f},
41 { 120.418832045969f, -69.7630732527928f},
42 { 72.3705387467529f, 10.0908849630425f},
43 { 10.5699823270029f, 17.3489915451677f},
44 { -169.426851150349f, 17.3476277272366f},
45 { -30.7728814706980f, 68.2546206344998f},
46 { 101.529181734204f, 18.5653877408229f},
47 { 149.250234431564f, 68.2619792676765f},
48 { 18.9183978612362f, -10.9197242075287f},
49 { 78.4729799557400f, -18.5558892226653f},
50 { -18.9161109968480f, 10.9195275229078f},
51 { -78.4723066816396f, 18.5565169424192f},
52 { -161.085243560336f, -10.9220975953767f},
53 { -101.530063994217f, -18.5648176173994f},
54 { 161.085855454581f, 10.9237834974412f},
55 { 30.7790837424989f, -68.2562996173874f},
56 { -149.255648697558f, -68.2594892022576f},
57 { 56.4638592172755f, 41.2645742763346f},
58 { 46.4626904606488f, 24.5386896277818f},
59 { -123.528839291756f, 41.2565889648213f},
60 { 32.1932295461248f, 38.8027347956192f},
61 { 133.534545076742f, -24.5310453346374f},
62 { -32.1935458377634f, -38.8041545028931f},
63 { -133.533477606995f, 24.5319420428588f},
64 { -147.797881221742f, 38.7980990097138f},
65 { -46.4626630742447f, -24.5400749997299f},
66 { 147.799544204027f, -38.7965984357137f},
67 { -56.4649576930965f, -41.2658215291547f},
68 { 123.530547454259f, -41.2555316199835f},
69 { 84.7385596473317f, 27.3132538556364f},
70 { 27.4072860474693f, 4.67593317316088f},
71 { -95.2612516264878f, 27.3036967398252f},
72 { 10.0607591758466f, 62.2287426217158f},
73 { 152.592710471291f, -4.67007594116539f},
74 { -10.0604693351594f, -62.2317767049329f},
75 { -152.592615409799f, 4.67188744845125f},
76 { -169.918387889403f, 62.2272712110016f},
77 { -27.4047652820400f, -4.67684895484045f},
78 { 169.918493477140f, -62.2246416140826f},
79 { -84.7390238025025f, -27.3120311727342f},
80 { 95.2622793653641f, -27.3027426350066f},
81 { 136.272846725200f, -0.726139068263599f},
82 { -1.05456977390436f, -46.2698051615206f},
83 { -43.7263256019408f, -0.737666959763443f},
84 { -91.0084089447853f, 43.7170295842697f},
85 { -178.936314291048f, 46.2682278552731f},
86 { 91.0100541861312f, -43.7163112498585f},
87 { 178.938490558618f, -46.2666218304286f},
88 { 88.9860902890987f, 43.7285680951606f},
89 { 1.05095788619312f, 46.2682407577363f},
90 { -88.9851906686018f, -43.7278600822776f},
91 { -136.273314433943f, 0.726484363994244f},
92 { 43.7273191822901f, 0.733967099281741f},
93 { 55.2321077221357f, 10.8187456245361f},
94 { 13.0867814081219f, 34.0654299770448f},
95 { -124.767898552651f, 10.8099467408727f},
96 { 71.4751302534919f, 53.7984109774923f},
97 { 166.905549455530f, -34.0625862919868f},
98 { -71.4765158530160f, -53.8002805142714f},
99 { -166.904587570338f, 34.0633858486074f},
100 { -108.515564585463f, 53.7864186881779f},
101 { -13.0869589355977f, -34.0644403811701f},
102 { 108.517274377512f, -53.7853093207457f},
103 { -55.2337689585088f, -10.8200079671294f},
104 { 124.767519417537f, -10.8096092876561f},
105 { -105.493359369733f, -68.1345228940484f},
106 { -111.151973933085f, -5.71277564515985f},
107 { 74.5244447329726f, -68.1205741555505f},
108 { -173.885132403874f, -21.0401043953034f},
109 { -68.8521018079939f, 5.70313885775370f},
110 { 173.885050918764f, 21.0419786777516f},
111 { 68.8513569996117f, -5.70297394874866f},
112 { 6.12041448982713f, -21.0387333986971f},
113 { 111.151515131908f, 5.71357243375474f},
114 { -6.11913621739966f, 21.0397756114589f},
115 { 105.487055344890f, 68.1331981897040f},
116 { -74.5188619841755f, 68.1214716326340f},
117 { 35.2822222163987f, -15.1801841162885f},
118 { -25.1732516880600f, 51.9826514887145f},
119 { -144.722913967824f, -15.1859965048827f},
120 { 108.386507250934f, 33.8824333892584f},
121 { -154.839566662519f, -51.9856067440744f},
122 { -108.385758587361f, -33.8826426573830f},
123 { 154.840828582605f, 51.9884126722963f},
124 { -71.6110721306039f, 33.8714084774643f},
125 { 25.1699762263473f, -51.9843011897216f},
126 { 71.6126173250777f, -33.8705490198003f},
127 { -35.2810594358470f, 15.1763090469469f},
128 { 144.722474074749f, 15.1863112389402f},
129 { -125.277803641269f, -28.5561977838671f},
130 { -146.317489805034f, -30.4888082061806f},
131 { 54.7220842889970f, -28.5463137051834f},
132 { -133.292600372594f, -45.8199818171681f},
133 { -33.6854220654234f, 30.4794807422719f},
134 { 133.295169860873f, 45.8200619710773f},
135 { 33.6830420572493f, -30.4828689919959f},
136 { 46.7098267598019f, -45.8106991831118f},
137 { 146.318736830907f, 30.4889588527258f},
138 { -46.7107531920589f, 45.8077510168776f},
139 { 125.278543193551f, 28.5567151663926f},
140 { -54.7226679373581f, 28.5424675755949f},
141 { -144.402199049652f, 54.7141577397485f},
142 { 112.382216591782f, -28.0100385212576f},
143 { 35.5834085793474f, 54.7193853715013f},
144 { -29.9155874729000f, -19.6471282266303f},
145 { 67.6163420587218f, 28.0211878299760f},
146 { 29.9151078604395f, 19.6461577548916f},
147 { -67.6164804090156f, -28.0221553885221f},
148 { 150.081679085309f, -19.6396879622134f},
149 { -112.381365317985f, 28.0105570315277f},
150 { -150.081127534239f, 19.6412999777121f},
151 { 144.402936805264f, -54.7127597303097f},
152 { -35.5837994140428f, -54.7203576209200f},
153 { 68.5348504928164f, -52.8527273534571f},
154 { -54.8218918027732f, 12.7570858971645f},
155 { -111.464947340552f, -52.8652964226689f},
156 { 164.510735700738f, 34.1892226850382f},
157 { -125.181243085238f, -12.7710900404128f},
158 { -164.510172672569f, -34.1865270720665f},
159 { 125.180742749445f, 12.7714932994183f},
160 { -15.4967238792034f, 34.1855682977571f}};
161
163(
165 _Atomic_FLOAT32 dirs_deg[MAX_NUM_INPUTS][2],
166 _Atomic_INT32* newNCH
167)
168{
169 int ch, i, nCH;
170
171 nCH = ch = 0;
172 switch(preset){
173 default:
174 /* fall through */
175 case SOURCE_CONFIG_PRESET_DEFAULT:
176 /* fall through */
177 case SOURCE_CONFIG_PRESET_MONO:
178 nCH = 1;
179 for(ch=0; ch<nCH; ch++)
180 for(i=0; i<2; i++)
181 dirs_deg[ch][i] = __mono_dirs_deg[ch][i];
182 break;
183 case SOURCE_CONFIG_PRESET_STEREO:
184 nCH = 2;
185 for(ch=0; ch<nCH; ch++)
186 for(i=0; i<2; i++)
187 dirs_deg[ch][i] = __stereo_dirs_deg[ch][i];
188 break;
189 case SOURCE_CONFIG_PRESET_5PX:
190 nCH = 5;
191 for(ch=0; ch<nCH; ch++)
192 for(i=0; i<2; i++)
193 dirs_deg[ch][i] = __5pX_dirs_deg[ch][i];
194 break;
195 case SOURCE_CONFIG_PRESET_7PX:
196 nCH = 7;
197 for(ch=0; ch<nCH; ch++)
198 for(i=0; i<2; i++)
199 dirs_deg[ch][i] = __7pX_dirs_deg[ch][i];
200 break;
201 case SOURCE_CONFIG_PRESET_8PX:
202 nCH = 8;
203 for(ch=0; ch<nCH; ch++)
204 for(i=0; i<2; i++)
205 dirs_deg[ch][i] = __8pX_dirs_deg[ch][i];
206 break;
207 case SOURCE_CONFIG_PRESET_9PX:
208 nCH = 9;
209 for(ch=0; ch<nCH; ch++)
210 for(i=0; i<2; i++)
211 dirs_deg[ch][i] = __9pX_dirs_deg[ch][i];
212 break;
213 case SOURCE_CONFIG_PRESET_10PX:
214 nCH = 10;
215 for(ch=0; ch<nCH; ch++)
216 for(i=0; i<2; i++)
217 dirs_deg[ch][i] = __10pX_dirs_deg[ch][i];
218 break;
219 case SOURCE_CONFIG_PRESET_11PX:
220 nCH = 11;
221 for(ch=0; ch<nCH; ch++)
222 for(i=0; i<2; i++)
223 dirs_deg[ch][i] = __11pX_dirs_deg[ch][i];
224 break;
225 case SOURCE_CONFIG_PRESET_11PX_7_4:
226 nCH = 11;
227 for(ch=0; ch<nCH; ch++)
228 for(i=0; i<2; i++)
229 dirs_deg[ch][i] = __11pX_7_4_dirs_deg[ch][i];
230 break;
231 case SOURCE_CONFIG_PRESET_13PX:
232 nCH = 13;
233 for(ch=0; ch<nCH; ch++)
234 for(i=0; i<2; i++)
235 dirs_deg[ch][i] = __13pX_dirs_deg[ch][i];
236 break;
237 case SOURCE_CONFIG_PRESET_22PX:
238 nCH = 22;
239 for(ch=0; ch<nCH; ch++)
240 for(i=0; i<2; i++)
241 dirs_deg[ch][i] = __22pX_dirs_deg[ch][i];
242 break;
243 case SOURCE_CONFIG_PRESET_22P2_9_10_3:
244 saf_print_error("Not suitable, since it contains LFE channels");
245 break;
246 case SOURCE_CONFIG_PRESET_PROTOOLS_STEREO:
247 nCH = 2;
248 for(ch=0; ch<nCH; ch++)
249 for(i=0; i<2; i++)
251 break;
252 case SOURCE_CONFIG_PRESET_PROTOOLS_LCR:
253 nCH = 3;
254 for(ch=0; ch<nCH; ch++)
255 for(i=0; i<2; i++)
257 break;
258 case SOURCE_CONFIG_PRESET_PROTOOLS_QUAD:
259 nCH = 4;
260 for(ch=0; ch<nCH; ch++)
261 for(i=0; i<2; i++)
263 break;
264 case SOURCE_CONFIG_PRESET_PROTOOLS_5_0:
265 nCH = 5;
266 for(ch=0; ch<nCH; ch++)
267 for(i=0; i<2; i++)
269 break;
270 case SOURCE_CONFIG_PRESET_PROTOOLS_5_0_2:
271 nCH = 7;
272 for(ch=0; ch<nCH; ch++)
273 for(i=0; i<2; i++)
275 break;
276 case SOURCE_CONFIG_PRESET_PROTOOLS_5_0_4:
277 nCH = 9;
278 for(ch=0; ch<nCH; ch++)
279 for(i=0; i<2; i++)
281 break;
282 case SOURCE_CONFIG_PRESET_PROTOOLS_7_0:
283 nCH = 7;
284 for(ch=0; ch<nCH; ch++)
285 for(i=0; i<2; i++)
287 break;
288 case SOURCE_CONFIG_PRESET_PROTOOLS_7_0_2:
289 nCH = 9;
290 for(ch=0; ch<nCH; ch++)
291 for(i=0; i<2; i++)
293 break;
294 case SOURCE_CONFIG_PRESET_PROTOOLS_7_0_4:
295 nCH = 11;
296 for(ch=0; ch<nCH; ch++)
297 for(i=0; i<2; i++)
299 break;
300 case SOURCE_CONFIG_PRESET_PROTOOLS_7_0_6:
301 nCH = 13;
302 for(ch=0; ch<nCH; ch++)
303 for(i=0; i<2; i++)
305 break;
306 case SOURCE_CONFIG_PRESET_PROTOOLS_9_0_4:
307 nCH = 13;
308 for(ch=0; ch<nCH; ch++)
309 for(i=0; i<2; i++)
311 break;
312 case SOURCE_CONFIG_PRESET_PROTOOLS_9_0_6:
313 nCH = 15;
314 for(ch=0; ch<nCH; ch++)
315 for(i=0; i<2; i++)
317 break;
318 case SOURCE_CONFIG_PRESET_AALTO_MCC:
319 nCH = 45;
320 for(ch=0; ch<nCH; ch++)
321 for(i=0; i<2; i++)
322 dirs_deg[ch][i] = __Aalto_MCC_dirs_deg[ch][i];
323 break;
324 case SOURCE_CONFIG_PRESET_AALTO_MCC_SUBSET:
325 nCH = 37;
326 for(ch=0; ch<nCH; ch++)
327 for(i=0; i<2; i++)
328 dirs_deg[ch][i] = __Aalto_MCCsubset_dirs_deg[ch][i];
329 break;
330 case SOURCE_CONFIG_PRESET_AALTO_APAJA:
331 nCH = 29;
332 for(ch=0; ch<nCH; ch++)
333 for(i=0; i<2; i++)
334 dirs_deg[ch][i] = __Aalto_Apaja_dirs_deg[ch][i];
335 break;
336 case SOURCE_CONFIG_PRESET_AALTO_LR:
337 nCH = 13;
338 for(ch=0; ch<nCH; ch++)
339 for(i=0; i<2; i++)
340 dirs_deg[ch][i] = __Aalto_LR_dirs_deg[ch][i];
341 break;
342 case SOURCE_CONFIG_PRESET_DTU_AVIL:
343 nCH = 64;
344 for(ch=0; ch<nCH; ch++)
345 for(i=0; i<2; i++)
346 dirs_deg[ch][i] = __DTU_AVIL_dirs_deg[ch][i];
347 break;
348 case SOURCE_CONFIG_PRESET_ZYLIA_LAB:
349 nCH = 22;
350 for(ch=0; ch<nCH; ch++)
351 for(i=0; i<2; i++)
352 dirs_deg[ch][i] = __Zylia_Lab_dirs_deg[ch][i];
353 break;
354 case SOURCE_CONFIG_PRESET_T_DESIGN_4:
355 nCH = 4;
356 for(ch=0; ch<nCH; ch++)
357 for(i=0; i<2; i++)
358 dirs_deg[ch][i] = __Tdesign_degree_2_dirs_deg[ch][i];
359 break;
360 case SOURCE_CONFIG_PRESET_T_DESIGN_12:
361 nCH = 12;
362 for(ch=0; ch<nCH; ch++)
363 for(i=0; i<2; i++)
364 dirs_deg[ch][i] = __Tdesign_degree_4_dirs_deg[ch][i];
365 break;
366 case SOURCE_CONFIG_PRESET_T_DESIGN_24:
367 nCH = 24;
368 for(ch=0; ch<nCH; ch++)
369 for(i=0; i<2; i++)
370 dirs_deg[ch][i] = __Tdesign_degree_6_dirs_deg[ch][i];
371 break;
372 case SOURCE_CONFIG_PRESET_T_DESIGN_36:
373 nCH = 36;
374 for(ch=0; ch<nCH; ch++)
375 for(i=0; i<2; i++)
376 dirs_deg[ch][i] = __Tdesign_degree_8_dirs_deg[ch][i];
377 break;
378 case SOURCE_CONFIG_PRESET_T_DESIGN_48:
379 nCH = 48;
380 for(ch=0; ch<nCH; ch++)
381 for(i=0; i<2; i++)
382 dirs_deg[ch][i] = __Tdesign_degree_9_dirs_deg[ch][i];
383 break;
384 case SOURCE_CONFIG_PRESET_T_DESIGN_60:
385 nCH = 60;
386 for(ch=0; ch<nCH; ch++)
387 for(i=0; i<2; i++)
388 dirs_deg[ch][i] = __Tdesign_degree_10_dirs_deg[ch][i];
389 break;
390 case SOURCE_CONFIG_PRESET_SPH_COV_9:
391 nCH = 9;
392 for(ch=0; ch<nCH; ch++)
393 for(i=0; i<2; i++)
394 dirs_deg[ch][i] = __SphCovering_9_dirs_deg[ch][i];
395 break;
396 case SOURCE_CONFIG_PRESET_SPH_COV_16:
397 nCH = 16;
398 for(ch=0; ch<nCH; ch++)
399 for(i=0; i<2; i++)
400 dirs_deg[ch][i] = __SphCovering_16_dirs_deg[ch][i];
401 break;
402 case SOURCE_CONFIG_PRESET_SPH_COV_25:
403 nCH = 25;
404 for(ch=0; ch<nCH; ch++)
405 for(i=0; i<2; i++)
406 dirs_deg[ch][i] = __SphCovering_25_dirs_deg[ch][i];
407 break;
408 case SOURCE_CONFIG_PRESET_SPH_COV_49:
409 nCH = 49;
410 for(ch=0; ch<nCH; ch++)
411 for(i=0; i<2; i++)
412 dirs_deg[ch][i] = __SphCovering_49_dirs_deg[ch][i];
413 break;
414 case SOURCE_CONFIG_PRESET_SPH_COV_64:
415 nCH = 64;
416 for(ch=0; ch<nCH; ch++)
417 for(i=0; i<2; i++)
418 dirs_deg[ch][i] = __SphCovering_64_dirs_deg[ch][i];
419 break;
420 }
421 saf_assert(nCH>0, "Number of channels must be more than 0");
422
423 /* Fill remaining slots with default coords */
424 for(; ch<MAX_NUM_INPUTS; ch++)
425 for(i=0; i<2; i++)
426 dirs_deg[ch][i] = __default_LScoords128_deg[ch][i];
427
428 /* specify new number of channels (for dynamically changing the number of TFT channels) */
429 (*newNCH) = nCH;
430}
#define MAX_NUM_INPUTS
Maximum number of input channels supported.
Definition _common.h:261
SOURCE_CONFIG_PRESETS
Available source configurations presets to use for encoding/panning.
Definition _common.h:149
A basic Ambisonic encoder.
const int ambi_enc_defaultNumSources
Default number of Sources.
const float ambi_enc_defaultSourceDirections[MAX_NUM_INPUTS][2]
Default Loudspeaker directions.
void loadSourceConfigPreset(SOURCE_CONFIG_PRESETS preset, _Atomic_FLOAT32 dirs_deg[MAX_NUM_INPUTS][2], _Atomic_INT32 *newNCH)
Returns the source directions for a specified source config preset.
A basic Ambisonic encoder.
#define saf_print_error(message)
Macro to print a error message along with the filename and line number.
const float __Zylia_Lab_dirs_deg[22][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for the 22.x setup, at Zylia Labs.
const float __protools_Quad_dirs_deg[4][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for ProTools Quadraphonic.
const int __protools_mapping_5p0_to_discrete[5]
Indices to map a 5p0 bus to a discrete bus in ProTools.
#define saf_assert(x, message)
Macro to make an assertion, along with a string explaining its purpose.
const int __protools_mapping_7p0p4_to_discrete[11]
Indices to map a 7p0p4 bus to a discrete bus in ProTools.
const float __9pX_dirs_deg[9][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for a 9.x setup.
const float __SphCovering_16_dirs_deg[16][2]
Directions [azimuth, Elevation] in degrees, for sphere covering: 16 dirs.
const float __Aalto_MCC_dirs_deg[45][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for the multi-channel anechoic chamber (MCC),...
const float __SphCovering_49_dirs_deg[49][2]
Directions [azimuth, Elevation] in degrees, for sphere covering: 49 dirs.
const float __mono_dirs_deg[1][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for a mono setup.
const float __5pX_dirs_deg[5][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for a 5.x setup.
const float __11pX_dirs_deg[11][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for a 11.x setup.
const float __Tdesign_degree_9_dirs_deg[48][2]
Directions [azimuth, Elevation] in degrees, for minimum Tdesign degree: 9.
const float __Tdesign_degree_2_dirs_deg[4][2]
Directions [azimuth, Elevation] in degrees, for minimum Tdesign degree: 2.
const float __11pX_7_4_dirs_deg[11][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for a 7.4.x setup.
const float __Tdesign_degree_8_dirs_deg[36][2]
Directions [azimuth, Elevation] in degrees, for minimum Tdesign degree: 8.
const float __default_LScoords128_deg[128][2]
Default Loudspeaker directions [azimuth, Elevation] - to replace above!
const float __protools_7p0_dirs_deg[7][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for ProTools 7.0 surround L C R Lss Rss Lsr R...
const float __protools_7p0p2_dirs_deg[9][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for ProTools 7.0.2 surround L C R Lss Rss Lsr...
const float __Aalto_MCCsubset_dirs_deg[37][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for the multi-channel anechoic chamber (MCC) ...
const int __protools_mapping_stereo_to_discrete[2]
Indices to map a stereo bus to a discrete bus in ProTools.
const float __Aalto_Apaja_dirs_deg[29][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for the audio-visual listening room (Apaja),...
const int __protools_mapping_7p0p2_to_discrete[9]
Indices to map a 7p0p2 bus to a discrete bus in ProTools.
const int __protools_mapping_5p0p2_to_discrete[7]
Indices to map a 5p0p2 bus to a discrete bus in ProTools.
const float __SphCovering_9_dirs_deg[9][2]
Directions [azimuth, Elevation] in degrees, for sphere covering: 9 dirs.
const int __protools_mapping_LCR_to_discrete[3]
Indices to map a LCR bus to a discrete bus in ProTools.
const float __protools_7p0p6_dirs_deg[13][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for ProTools 7.0.6 surround L R C Lss Rss Lsr...
const float __protools_5p0_dirs_deg[5][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for ProTools 5.0 surround (Film) L C R Ls Rs.
const float __stereo_dirs_deg[2][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for a stereo setup.
const float __SphCovering_64_dirs_deg[64][2]
Directions [azimuth, Elevation] in degrees, for sphere covering: 64 dirs.
const int __protools_mapping_7p0p6_to_discrete[13]
Indices to map a 7p0p6 bus to a discrete bus in ProTools.
const float __Tdesign_degree_4_dirs_deg[12][2]
Directions [azimuth, Elevation] in degrees, for minimum Tdesign degree: 4.
const float __Aalto_LR_dirs_deg[13][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for the ITU standard listening room (LR),...
const float __DTU_AVIL_dirs_deg[64][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for the Audio Visual Immersion Lab (AVIL),...
const float __8pX_dirs_deg[8][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for a 8.x setup.
const float __protools_LCR_dirs_deg[3][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for ProTools Left-centre-right.
const float __Tdesign_degree_6_dirs_deg[24][2]
Directions [azimuth, Elevation] in degrees, for minimum Tdesign degree: 6.
const float __protools_stereo_dirs_deg[2][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for ProTools stereo pair.
const float __protools_9p0p6_dirs_deg[15][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for ProTools 9.0.6 surround L R C Lss Rss Lsr...
const float __13pX_dirs_deg[13][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for a 13.x setup.
const float __7pX_dirs_deg[7][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for a 7.x setup.
const int __protools_mapping_9p0p4_to_discrete[13]
Indices to map a 9p0p4 bus to a discrete bus in ProTools.
const float __22pX_dirs_deg[22][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for a 22.x setup.
const int __protools_mapping_5p0p4_to_discrete[9]
Indices to map a 5p0p4 bus to a discrete bus in ProTools.
const float __protools_5p0p4_dirs_deg[9][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for ProTools 5.0.4 surround L R C Ls Rs Ltf R...
const float __SphCovering_25_dirs_deg[25][2]
Directions [azimuth, Elevation] in degrees, for sphere covering: 25 dirs.
const int __protools_mapping_Quad_to_discrete[4]
Indices to map a Quad bus to a discrete bus in ProTools.
const int __protools_mapping_7p0_to_discrete[7]
Indices to map a 7p0 bus to a discrete bus in ProTools.
const float __protools_5p0p2_dirs_deg[7][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for ProTools 5.0.2 surround L R C Ls Rs Ltm R...
const float __protools_7p0p4_dirs_deg[11][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for ProTools 7.0.4 surround L R C Lss Rss Lsr...
const float __protools_9p0p4_dirs_deg[13][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for ProTools 9.0.4 surround L R C Lss Rss Lsr...
const int __protools_mapping_9p0p6_to_discrete[15]
Indices to map a 9p0p9 bus to a discrete bus in ProTools.
const float __Tdesign_degree_10_dirs_deg[60][2]
Directions [azimuth, Elevation] in degrees, for minimum Tdesign degree: 10.
const float __10pX_dirs_deg[10][2]
Loudspeaker directions [azimuth, Elevation] in degrees, for a 10.x setup.