Allolib  1.0
C++ Components For Interactive Multimedia
al::Spatializer Class Referenceabstract

#include <C:/Users/Andres/source/repos/casm_viewer/external/tinc/external/allolib/include/al/sound/al_Spatializer.hpp>

Inheritance diagram for al::Spatializer:
al::AmbisonicsSpatializer al::Dbap al::Lbap al::StereoPanner al::Vbap

Public Member Functions

 Spatializer (const Speakers &sl)
 
virtual void compile ()
 
virtual void prepare (AudioIOData &io)
 
virtual void renderBuffer (AudioIOData &io, const Pose &listeningPose, const float *samples, const unsigned int &numFrames)=0
 Render audio buffer in position.
 
virtual void renderSample (AudioIOData &io, const Pose &listeningPose, const float &sample, const unsigned int &frameIndex)=0
 Render audio sample in position.
 
virtual void finalize (AudioIOData &io)
 
virtual void print (std::ostream &stream=std::cout)
 Print out information about spatializer.
 
int numSpeakers () const
 Get number of speakers.
 
virtual void numFrames (unsigned int v)
 Set number of frames.
 

Protected Attributes

Speakers mSpeakers
 
std::vector< float > mBuffer
 
unsigned int mNumFrames {0}
 

Detailed Description

Abstract class for all spatializers: Ambisonics, DBAP, VBAP, etc.

Definition at line 56 of file al_Spatializer.hpp.

Constructor & Destructor Documentation

◆ Spatializer()

al::Spatializer::Spatializer ( const Speakers sl)
Parameters
[in]slA speaker layout to use

Member Function Documentation

◆ compile()

virtual void al::Spatializer::compile ( )
inlinevirtual

Perform any necessary updates when the speaker layout changes, ex. new speaker triplets for VBAP Must be called before any calls to prepare(), renderBuffer(), renderSample() or perform()

Reimplemented in al::Vbap, al::Lbap, and al::AmbisonicsSpatializer.

Definition at line 66 of file al_Spatializer.hpp.

◆ finalize()

virtual void al::Spatializer::finalize ( AudioIOData io)
inlinevirtual

Called once per listener, after sources are rendered. ex. ambisonics decode

Reimplemented in al::AmbisonicsSpatializer.

Definition at line 84 of file al_Spatializer.hpp.

◆ prepare()

virtual void al::Spatializer::prepare ( AudioIOData io)
inlinevirtual

Called once per listener, before sources are rendered. ex. zero ambisonics coefficients

Reimplemented in al::Lbap, and al::AmbisonicsSpatializer.

Definition at line 70 of file al_Spatializer.hpp.


The documentation for this class was generated from the following file: