Allolib  1.0
C++ Components For Interactive Multimedia
al::Dbap Class Reference

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

Inheritance diagram for al::Dbap:
al::Spatializer

Public Member Functions

 Dbap (const Speakers &sl, float focus=1.f)
 
virtual void renderSample (AudioIOData &io, const Pose &listeningPose, const float &sample, const unsigned int &frameIndex) override
 Render audio sample in position.
 
virtual void renderBuffer (AudioIOData &io, const Pose &listeningPose, const float *samples, const unsigned int &numFrames) override
 Render audio buffer in position.
 
void setFocus (float focus)
 focus is an exponent determining the amplitude focus to nearby speakers. More...
 
void print (std::ostream &stream) override
 Print out information about spatializer.
 
virtual void compile ()
 
virtual void prepare (AudioIOData &io)
 
virtual void finalize (AudioIOData &io)
 
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

Distance-based amplitude panner

Definition at line 60 of file al_Dbap.hpp.

Constructor & Destructor Documentation

◆ Dbap()

al::Dbap::Dbap ( const Speakers sl,
float  focus = 1.f 
)
Parameters
[in]slA speaker layout
[in]focusAmplitude focus to nearby speakers

Member Function Documentation

◆ compile()

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

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)
inlinevirtualinherited

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)
inlinevirtualinherited

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.

◆ setFocus()

void al::Dbap::setFocus ( float  focus)
inline

focus is an exponent determining the amplitude focus to nearby speakers.

focus is (0, inf) with usable range typically [0.2, 5]. Default is 1. A denser speaker layout my benefit from a high focus > 1, and a sparse layout may benefit from focus < 1

Definition at line 81 of file al_Dbap.hpp.


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