|
Blender
V2.59
|
#include <AUD_SndFileReader.h>

Public Member Functions | |
| AUD_SndFileReader (std::string filename) | |
| AUD_SndFileReader (AUD_Reference< AUD_Buffer > buffer) | |
| virtual | ~AUD_SndFileReader () |
| virtual bool | isSeekable () const |
| virtual void | seek (int position) |
| virtual int | getLength () const |
| virtual int | getPosition () const |
| virtual AUD_Specs | getSpecs () const |
| virtual void | read (int &length, sample_t *&buffer) |
This class reads a sound file via libsndfile.
Definition at line 47 of file AUD_SndFileReader.h.
| AUD_SndFileReader::AUD_SndFileReader | ( | std::string | filename | ) |
Creates a new reader.
| filename | The path to the file to be read. |
| AUD_Exception | Thrown if the file specified does not exist or cannot be read with libsndfile. |
Definition at line 88 of file AUD_SndFileReader.cpp.
References AUD_ERROR_FILE, AUD_THROW, AUD_Specs::channels, and AUD_Specs::rate.
| AUD_SndFileReader::AUD_SndFileReader | ( | AUD_Reference< AUD_Buffer > | buffer | ) |
Creates a new reader.
| buffer | The buffer to read from. |
| AUD_Exception | Thrown if the buffer specified cannot be read with libsndfile. |
Definition at line 105 of file AUD_SndFileReader.cpp.
References AUD_ERROR_FILE, AUD_THROW, AUD_Specs::channels, NULL, and AUD_Specs::rate.
| AUD_SndFileReader::~AUD_SndFileReader | ( | ) | [virtual] |
Destroys the reader and closes the file.
Definition at line 130 of file AUD_SndFileReader.cpp.
| int AUD_SndFileReader::getLength | ( | ) | const [virtual] |
Returns an approximated length of the source in samples. For readers of the type buffer this has to return a correct value!
Implements AUD_IReader.
Definition at line 149 of file AUD_SndFileReader.cpp.
| int AUD_SndFileReader::getPosition | ( | ) | const [virtual] |
Returns the position of the source as a sample count value.
Implements AUD_IReader.
Definition at line 154 of file AUD_SndFileReader.cpp.
| AUD_Specs AUD_SndFileReader::getSpecs | ( | ) | const [virtual] |
Returns the specification of the reader.
Implements AUD_IReader.
Definition at line 159 of file AUD_SndFileReader.cpp.
| bool AUD_SndFileReader::isSeekable | ( | ) | const [virtual] |
Tells whether the source provides seeking functionality or not.
Implements AUD_IReader.
Definition at line 135 of file AUD_SndFileReader.cpp.
| void AUD_SndFileReader::read | ( | int & | length, |
| sample_t *& | buffer | ||
| ) | [virtual] |
Request to read the next length samples out of the source. The buffer for reading has to stay valid until the next call of this method or until the reader is deleted.
| [in,out] | length | The count of samples that should be read. Shall contain the real count of samples after reading, in case there were only fewer samples available. A smaller value also indicates the end of the reader. |
| [out] | buffer | The pointer to the buffer with the samples. |
Implements AUD_IReader.
Definition at line 164 of file AUD_SndFileReader.cpp.
References AUD_SAMPLE_SIZE, AUD_Buffer::getBuffer(), AUD_Buffer::getSize(), length(), and AUD_Buffer::resize().
| void AUD_SndFileReader::seek | ( | int | position | ) | [virtual] |
Seeks to a specific position in the source. This function must work for buffer type readers.
| position | The position to seek for measured in samples. To get from a given time to the samples you simply have to multiply the time value in seconds with the sample rate of the reader. |
Implements AUD_IReader.
Definition at line 140 of file AUD_SndFileReader.cpp.