|
SAL
A C++ library for spatial audio.
|
#include <ambisonics.h>
Public Member Functions | |
| AmbisonicsHorizDec (const Int order, const bool energy_decoding, const Time cut_off_frequency, const std::vector< Angle > &loudspeaker_angles, const bool near_field_correction, const Length loudspeakers_distance, const Time sampling_frequency, const Speed sound_speed, const HoaOrdering ordering_convention=HoaOrdering::Acn) | |
| virtual void | Decode (const Buffer &input_buffer, Buffer &output_buffer) |
| virtual | ~AmbisonicsHorizDec () |
Public Member Functions inherited from sal::Decoder | |
| Decoder () | |
| virtual | ~Decoder () |
Static Public Member Functions | |
| static bool | Test () |
Implements horizontal higher order ambisonics with regular loudspeakers configuration (e.g. pentagon for II-order etc..).
| sal::AmbisonicsHorizDec::AmbisonicsHorizDec | ( | const Int | order, |
| const bool | energy_decoding, | ||
| const Time | cut_off_frequency, | ||
| const std::vector< Angle > & | loudspeaker_angles, | ||
| const bool | near_field_correction, | ||
| const Length | loudspeakers_distance, | ||
| const Time | sampling_frequency, | ||
| const Speed | sound_speed, | ||
| const HoaOrdering | ordering_convention = HoaOrdering::Acn |
||
| ) |
position is the position of the microphone in the recording space. order is the HOA order num_loudspeakers is the number of loudspeakers forming the regular polygon in the reproduction space. Exact reconstruction of the 2*order+1 circular harmonics is achieved if num_loudspeakers = 2*order+1 (e.g. penthagon loudspeaker for a second-order ambisonics). All loudspeakers are at polar angle is PI/2.0, i.e. are on an horizontal plane relative to the reference system. In other words all loudspeakers lie on a plane that is parallel with the x-y plane. The first loudspeaker is on the x-axis (azimuthal angle is 0). If energy_decoding is true a maximum energy decoding will be used for frequencies higher than cut_off_frequency. If near_field_correction is true, the signals will be processed using J. Daniel's near-field correction.
|
inlinevirtual |
|
virtual |
Decodes and puts in the output streams. It stops when the inputs stream is depleted.
Implements sal::Decoder.
|
static |
1.8.2