#include <OggFileSource.h>
Inherits Marsyas::AbsSoundFileSource.
Public Member Functions | |
| void | getHeader (std::string filename) |
| void | myProcess (realvec &in, realvec &out) |
Private Member Functions | |
| void | closeFile () |
| void | myUpdate (MarControlPtr sender) |
This class reads an ogg file using the vorbis ogg decoder library.
Definition at line 42 of file OggFileSource.h.
| void closeFile | ( | ) | [private] |
Function: closeFile()
Description: Close the file if its open, release memory, and release mad structs.
Definition at line 285 of file OggFileSource.cpp.
Referenced by OggFileSource::getHeader(), and OggFileSource::myProcess().
| void getHeader | ( | std::string | filename | ) | [virtual] |
Function: getHeader Description: Opens the Ogg file and collects all the necessary information to update the MarSystem.
Implements AbsSoundFileSource.
Definition at line 130 of file OggFileSource.cpp.
References OggFileSource::closeFile(), and MarSystem::updControl().
Function: process Description: Fills an output vector with samples. In this case, getLinear16 does all the work.
Implements AbsSoundFileSource.
Definition at line 207 of file OggFileSource.cpp.
References OggFileSource::closeFile(), and realvec::setval().
| void myUpdate | ( | MarControlPtr | sender | ) | [private, virtual] |
Function: update
Description: Performs the usual MarSystem update jobs. Additionally, it can update the position of the index in the file if the user seeks forward or backward. Note that this is currently going to be slow as we have to refill the mad buffer each time somebody seeks in the file.
Reimplemented from MarSystem.
Definition at line 180 of file OggFileSource.cpp.
1.5.6