Home   Information   Classes   Download   Usage   Mail List   Requirements   Tutorial


WvOut Class Reference

STK audio data output base class. More...

#include <WvOut.h>

Inheritance diagram for WvOut::

Stk RtWvOut TcpWvOut List of all members.

Public Methods

 WvOut ()
 Default constructor.

 WvOut (const char *fileName, unsigned int nChannels=1, FILE_TYPE type=WVOUT_WAV, Stk::STK_FORMAT format=STK_SINT16)
 Overloaded constructor used to specify a file name, type, and data format with this object. More...

virtual ~WvOut ()
 Class destructor.

void openFile (const char *fileName, unsigned int nChannels=1, WvOut::FILE_TYPE type=WVOUT_WAV, Stk::STK_FORMAT format=STK_SINT16)
 Create a file of the specified type and name and output samples to it in the given data format. More...

void closeFile (void)
 If a file is open, write out samples in the queue and then close it.

unsigned long getFrames (void) const
 Return the number of sample frames output.

MY_FLOAT getTime (void) const
 Return the number of seconds of data output.

virtual void tick (const MY_FLOAT sample)
 Output a single sample to all channels in a sample frame. More...

virtual void tick (const MY_FLOAT *vector, unsigned int vectorSize)
 Output each sample in vector to all channels in vectorSize sample frames. More...

virtual void tickFrame (const MY_FLOAT *frameVector, unsigned int frames=1)
 Output the frameVector of sample frames of the given length. More...


Static Public Attributes

const FILE_TYPE WVOUT_RAW
const FILE_TYPE WVOUT_WAV
const FILE_TYPE WVOUT_SND
const FILE_TYPE WVOUT_AIF
const FILE_TYPE WVOUT_MAT

Detailed Description

STK audio data output base class.

This class provides output support for various audio file formats. It also serves as a base class for "realtime" streaming subclasses.

WvOut writes samples to an audio file. It supports multi-channel data in interleaved format. It is important to distinguish the tick() methods, which output single samples to all channels in a sample frame, from the tickFrame() method, which takes a pointer to multi-channel sample frame data.

WvOut currently supports WAV, AIFF, AIFC, SND (AU), MAT-file (Matlab), and STK RAW file formats. Signed integer (8-, 16-, and 32-bit) and floating- point (32- and 64-bit) data types are supported. STK RAW files use 16-bit integers by definition. MAT-files will always be written as 64-bit floats. If a data type specification does not match the specified file type, the data type will automatically be modified. Uncompressed data types are not supported.

Currently, WvOut is non-interpolating and the output rate is always Stk::sampleRate().

by Perry R. Cook and Gary P. Scavone, 1995 - 2002.


Constructor & Destructor Documentation

WvOut::WvOut ( const char * fileName,
unsigned int nChannels = 1,
FILE_TYPE type = WVOUT_WAV,
Stk::STK_FORMAT format = STK_SINT16 )
 

Overloaded constructor used to specify a file name, type, and data format with this object.

An StkError is thrown for invalid argument values or if an error occurs when initializing the output file.


Member Function Documentation

void WvOut::openFile ( const char * fileName,
unsigned int nChannels = 1,
WvOut::FILE_TYPE type = WVOUT_WAV,
Stk::STK_FORMAT format = STK_SINT16 )
 

Create a file of the specified type and name and output samples to it in the given data format.

An StkError is thrown for invalid argument values or if an error occurs when initializing the output file.

void WvOut::tick ( const MY_FLOAT sample ) [virtual]
 

Output a single sample to all channels in a sample frame.

An StkError is thrown if a file read error occurs.

Reimplemented in RtWvOut, and TcpWvOut.

void WvOut::tick ( const MY_FLOAT * vector,
unsigned int vectorSize ) [virtual]
 

Output each sample in vector to all channels in vectorSize sample frames.

An StkError is thrown if a file read error occurs.

Reimplemented in RtWvOut, and TcpWvOut.

void WvOut::tickFrame ( const MY_FLOAT * frameVector,
unsigned int frames = 1 ) [virtual]
 

Output the frameVector of sample frames of the given length.

An StkError is thrown if a file read error occurs.

Reimplemented in RtWvOut, and TcpWvOut.


Member Data Documentation

const FILE_TYPE WvOut::WVOUT_RAW [static]
 

STK RAW file type.

const FILE_TYPE WvOut::WVOUT_WAV [static]
 

WAV file type.

const FILE_TYPE WvOut::WVOUT_SND [static]
 

SND (AU) file type.

const FILE_TYPE WvOut::WVOUT_AIF [static]
 

AIFF file type.

const FILE_TYPE WvOut::WVOUT_MAT [static]
 

Matlab MAT-file type.


The documentation for this class was generated from the following file:
The Synthesis ToolKit in C++ (STK)
©1995-2002 Perry R. Cook and Gary P. Scavone. All Rights Reserved.