Ambisonic.h File Reference

#include "CSL_Core.h"
#include "CPoint.h"
#include "SpatialSource.h"
#include "SpeakerLayout.h"

Go to the source code of this file.

Namespaces

namespace  csl

Classes

class  csl::AmbisonicOrder
class  csl::AmbisonicUnitGenerator
 Ambisonic Abstract Base Class. More...
class  csl::AmbisonicEncoder
class  csl::AmbisonicDecoder

Defines

#define HOA_MAX_ORDER   2

Enumerations

enum  csl::AmbisonicDecoderMethod { csl::kPSEUDOINVERSE = 0, csl::kPROJECTION }
 Flag for the decoding method. More...
enum  csl::AmbisonicDecoderFlavour { csl::kBASIC = 0, csl::kINPHASE, csl::kMAXRE }
 Flag for the decoder flavour. More...


Define Documentation

#define HOA_MAX_ORDER   2
 

AmbisonicUGen.h -- Higher Order Ambisonic abstract base class for all Ambisonic effects and panners. See the copyright notice and acknowledgment of authors in the file COPYRIGHT Higher Order Ambisonic classes written by Jorge Castellanos, Graham Wakefield, Florian Hollerweger, 2005

Encapsulates parameters regarding the ambisonic order of the class (including hybrid orders)

CONVENTIONS USED IN THIS CODE: ------------------------------

coordinate system*** Left oriented Azimuth = 0 on the x/z plane and increasing towards the positive y direction Elevation = 0 on x/y plane and increasing towards the positive z direction Internal angle representation: spherical radians

encoding convention*** following the Furse-Malham set (Ambisonic channel weighting for uniform energy distribution)

abbreviations used in code and comments*** M ... Ambisonic order (in uniform order system) M_h ... horizontal Ambisonic order (in hybrid order systems) M_v ... horizontal Ambisonic order (in hybrid order systems) N ... total number of Ambisonic encoded channels (horizontal and vertical) N_h ... number of horizontal Ambisonic channels (in hybrid order systems) N_v ... number of vertical Ambisonic channels (in hybrid order systems) L ... number of available loudspeakers

ordering and naming of Ambisonic channels = spherical harmonics*** These conventions follow the ones used in the thesis by Jerome Daniel. The 3rd order naming convention (which Daniel doesn't provide) follows the one used in the thesis of David Malham. Watch out for different conventions in other papers! index 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 M (order) 0 1 1 1 2 2 2 2 2 3 3 3 3 3 3 3 m (=M) 0 1 1 1 2 2 2 2 2 3 3 3 3 3 3 3 n 0 1 1 0 2 2 1 1 0 3 3 2 2 1 1 0 sigma '1' 1 -1 '1' 1 -1 1 -1 '1' 1 -1 1 -1 1 -1 '1' name W X Y Z U V S T R P Q N O L M K hor/vert/omni om h h v h h v v v h h v v v v v


Generated on Fri Apr 6 20:18:15 2007 for CSL by  doxygen 1.4.5-20051010