53 std::shared_ptr<IReader> m_reader;
58 std::shared_ptr<HRTF> m_hrtfs;
63 std::shared_ptr<Source> m_source;
83 float m_RealElevation;
103 std::vector<std::unique_ptr<Convolver>> m_convolvers;
153 std::vector<sample_t*> m_vecOut;
158 std::shared_ptr<ThreadPool> m_threadPool;
168 std::vector<std::future<int>> m_futures;
184 BinauralReader(std::shared_ptr<IReader> reader, std::shared_ptr<HRTF> hrtfs, std::shared_ptr<Source> source, std::shared_ptr<ThreadPool> threadPool, std::shared_ptr<FFTPlan> plan);
188 virtual void seek(
int position);
202 void joinByChannel(
int start,
int len,
int nConvolvers);
208 void loadBuffer(
int nConvolvers);
218 int threadFunction(
int id,
bool input);
#define AUD_NAMESPACE_END
Closes the audaspace namespace aud.
Definition: Audaspace.h:119
float sample_t
Sample type.(float samples)
Definition: Audaspace.h:126
#define AUD_NAMESPACE_BEGIN
Opens the audaspace namespace aud.
Definition: Audaspace.h:116
#define AUD_API
Used for exporting symbols in the shared library.
Definition: Audaspace.h:93
This class represents a reader for a sound that can sound different depending on its realtive positio...
Definition: BinauralReader.h:43
BinauralReader(std::shared_ptr< IReader > reader, std::shared_ptr< HRTF > hrtfs, std::shared_ptr< Source > source, std::shared_ptr< ThreadPool > threadPool, std::shared_ptr< FFTPlan > plan)
Creates a new convolver reader.
virtual bool isSeekable() const
Tells whether the source provides seeking functionality or not.
virtual Specs getSpecs() const
Returns the specification of the reader.
virtual int getPosition() const
Returns the position of the source as a sample count value.
virtual void seek(int position)
Seeks to a specific position in the source.
virtual int getLength() const
Returns an approximated length of the source in samples.
virtual void read(int &length, bool &eos, sample_t *buffer)
Request to read the next length samples out of the source.
This class represents a sound source as stream or as buffer which can be read for example by another ...
Definition: IReader.h:35
Specification of a sound source.
Definition: Specification.h:110