21 #ifdef LIBSNDFILE_PLUGIN 22 #define AUD_BUILD_PLUGIN 78 std::shared_ptr<Buffer> m_membuffer;
86 AUD_LOCAL static sf_count_t vio_get_filelen(
void* user_data);
87 AUD_LOCAL static sf_count_t vio_seek(sf_count_t offset,
int whence,
void* user_data);
88 AUD_LOCAL static sf_count_t vio_read(
void* ptr, sf_count_t count,
void* user_data);
89 AUD_LOCAL static sf_count_t vio_tell(
void* user_data);
118 virtual void seek(
int position);
122 virtual void read(
int& length,
bool& eos, sample_t* buffer);
This class represents a sound source as stream or as buffer which can be read for example by another ...
Definition: IReader.h:34
virtual void seek(int position)=0
Seeks to a specific position in the source.
virtual bool isSeekable() const =0
Tells whether the source provides seeking functionality or not.
virtual Specs getSpecs() const =0
Returns the specification of the reader.
virtual void read(int &length, bool &eos, sample_t *buffer)=0
Request to read the next length samples out of the source.
Specification of a sound source.
Definition: Specification.h:109
This class is a simple buffer in RAM which is 32 Byte aligned and provides resize functionality...
Definition: Buffer.h:33
This class reads a sound file via libsndfile.
Definition: SndFileReader.h:42
virtual int getPosition() const =0
Returns the position of the source as a sample count value.
virtual int getLength() const =0
Returns an approximated length of the source in samples.
#define AUD_PLUGIN_API
Used for exporting symbols in the shared library.
Definition: Audaspace.h:94
#define AUD_LOCAL
Used for hiding symbols from export in the shared library.
Definition: Audaspace.h:80