HOA Library
beta 3.0
High Order Ambisonics Library
|
The class widens the propagation of the sounds in a sound field. More...
#include <Hoa_Wider.hpp>
Public Member Functions | |
Wider (const size_t order) | |
The constructor. More... | |
~Wider () | |
The destructor. | |
void | setWidening (const T value) hoa_noexcept |
This method set factor of widening. More... | |
T | getWidening () const hoa_noexcept |
Returns the the widening value. | |
void | process (const T *inputs, T *outputs) hoa_noexcept hoa_final |
The method performs the widening on the harmonics signal. More... | |
Public Member Functions inherited from ProcessorHarmonics< D, T > | |
ProcessorHarmonics (const size_t order) hoa_noexcept | |
The harmonics constructor. More... | |
virtual | ~ProcessorHarmonics () hoa_noexcept |
The harmonics destructor. | |
size_t | getDecompositionOrder () const hoa_noexcept |
Returns the order of decomposition. | |
size_t | getNumberOfHarmonics () const hoa_noexcept |
Returns the number of harmonics. | |
size_t | getHarmonicDegree (const size_t index) const hoa_noexcept |
Returns the degree of an harmonic. More... | |
long | getHarmonicOrder (const size_t index) const hoa_noexcept |
Returns the azimuthal order of an harmonic. More... | |
size_t | getHarmonicIndex (const size_t degree, const long order) const hoa_noexcept |
Returns the index of an harmonic given the degree and the azimuthal order. More... | |
std::string | getHarmonicName (const size_t index) const hoa_noexcept |
Returns the name of an harmonic. More... | |
T | getHarmonicNormalization (const size_t index) const hoa_noexcept |
Returns the normalization of an harmonic. More... | |
T | getHarmonicSemiNormalization (const size_t index) const hoa_noexcept |
Returns the semi-normalization of an harmonic. More... | |
Public Member Functions inherited from Processor< D, T > | |
virtual | ~Processor () hoa_noexcept |
The destructor. | |
The class widens the propagation of the sounds in a sound field.
The class simulates fractional orders of decomposition to reduce the precision of the sound field. When the factor of widening is \(0\) sound field, only the first hamonic \(Y_{0,0}\) remains and the sound field is omni directional. By increasing the factor of widening toward \(1\), the other harmonics appears in a logarithmic way, increasing the precision of the sound field that becomes more and more directional until all the harmonics appeared. The weight of the harmonics are defined by:
\[W_{l,m}(x) = x^l((1-x)(N-l)+1)\]
with \(N\) the order of decomposition, \(l\) the degree, \(m\) the azimuthal order and \(x\) the factor of widening.
Definition at line 30 of file Hoa_Wider.hpp.
|
inline |
The constructor.
order | The order of decomposition. |
Definition at line 36 of file Hoa_Wider.hpp.
|
inline |
This method set factor of widening.
value | The factor of widening. |
Definition at line 47 of file Hoa_Wider.hpp.
|
inlinevirtual |
The method performs the widening on the harmonics signal.
The method can be used for in-place or not-in-place processing and sample by sample. The inputs array and outputs array contains the spherical harmonics samples thus the minimum size of the array must be the number of harmonics.
inputs | The inputs array. |
outputs | The outputs array. |
Reimplemented from Processor< D, T >.
Definition at line 69 of file Hoa_Wider.hpp.