SAL
A C++ library for spatial audio.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
sal::KemarMic Class Reference

#include <kemarmic.h>

Inheritance diagram for sal::KemarMic:
sal::DatabaseBinauralMic sal::BinauralMic sal::StereoMicrophone sal::Microphone

Public Member Functions

 KemarMic (const mcl::Point &position, const mcl::Quaternion orientation, const std::string directory="", const Int num_samples=kFullBrirLength, const Int update_length=0, const HeadRefOrientation reference_orientation=HeadRefOrientation::standard, const Time sampling_frequency=44100.0)
 
- Public Member Functions inherited from sal::DatabaseBinauralMic
 DatabaseBinauralMic (const mcl::Point &position, const mcl::Quaternion orientation, const Int update_length, const HeadRefOrientation reference_orientation=HeadRefOrientation::standard)
 
void FilterAll (mcl::DigitalFilter *filter)
 
virtual ~DatabaseBinauralMic ()
 
- Public Member Functions inherited from sal::BinauralMic
 BinauralMic (const mcl::Point &position, const mcl::Quaternion orientation, const Int update_length, const HeadRefOrientation reference_orientation=HeadRefOrientation::standard)
 
void SetUpdateLength (Int update_length) noexcept
 
void SetBypass (bool bypass) noexcept
 
virtual void Reset () noexcept
 
bool IsCoincident () const noexcept
 
Int num_channels () const noexcept
 
virtual ~BinauralMic ()
 
virtual void AddPlaneWaveRelative (const Sample *signal, const Int num_samples, const mcl::Point &point, const Int wave_id, Buffer &output_buffer) noexcept
 
- Public Member Functions inherited from sal::StereoMicrophone
 StereoMicrophone (mcl::Point position, mcl::Quaternion orientation)
 
virtual ~StereoMicrophone ()
 
- Public Member Functions inherited from sal::Microphone
 Microphone (mcl::Point position, mcl::Quaternion orientation=mcl::Quaternion::Identity())
 
mcl::Point position () const noexcept
 
virtual void SetPosition (const mcl::Point &position) noexcept
 
mcl::Quaternion orientation () const noexcept
 
virtual void SetOrientation (const mcl::Quaternion &orientation) noexcept
 
void SetHandedness (const mcl::Handedness handedness) noexcept
 
void AddPlaneWave (const MonoBuffer &signal, const mcl::Point &point, Buffer &output_buffer) noexcept
 
void AddPlaneWave (const Sample *input_data, const Int num_samples, const mcl::Point &point, Buffer &output_buffer) noexcept
 
void AddPlaneWave (const Sample input_sample, const mcl::Point &point, Buffer &output_buffer) noexcept
 
void AddPlaneWave (const MonoBuffer &input_buffer, const mcl::Point &point, const Int wave_id, Buffer &output_buffer) noexcept
 
void AddPlaneWave (const Sample input_sample, const mcl::Point &point, const Int wave_id, Buffer &output_buffer) noexcept
 
virtual void AddPlaneWave (const Sample *input_data, const Int num_samples, const mcl::Point &point, const Int wave_id, Buffer &output_buffer) noexcept
 
virtual bool IsOmni () const noexcept
 
mcl::Point GetRelativePoint (const mcl::Point &point) const noexcept
 
virtual ~Microphone ()
 
virtual void AddPlaneWaveRelative (const MonoBuffer &signal, const mcl::Point &point, const Int wave_id, Buffer &output_buffer) noexcept
 

Static Public Member Functions

static bool IsDatabaseAvailable (const std::string directory)
 
static void PrintParsedDatabase (const Ear ear, const std::string directory, const Int num_samples, std::string variable_name)
 
static bool Test ()
 

Static Public Attributes

static const int kFullBrirLength = -1
 

Additional Inherited Members

- Protected Attributes inherited from sal::DatabaseBinauralMic
std::vector< std::vector
< Signal > > 
hrtf_database_right_
 
std::vector< std::vector
< Signal > > 
hrtf_database_left_
 

Constructor & Destructor Documentation

sal::KemarMic::KemarMic ( const mcl::Point &  position,
const mcl::Quaternion  orientation,
const std::string  directory = "",
const Int  num_samples = kFullBrirLength,
const Int  update_length = 0,
const HeadRefOrientation  reference_orientation = HeadRefOrientation::standard,
const Time  sampling_frequency = 44100.0 
)

Constructs a Kemar microphone opject. directory contains the hrtf database. With num_samples you can choose the length of the BRIR. If set to zero yields the entire BRIR.

Member Function Documentation

bool sal::KemarMic::IsDatabaseAvailable ( const std::string  directory)
static
void sal::KemarMic::PrintParsedDatabase ( const Ear  ear,
const std::string  directory,
const Int  num_samples,
std::string  variable_name 
)
static
bool sal::KemarMic::Test ( )
static

Member Data Documentation

const int sal::KemarMic::kFullBrirLength = -1
static

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