Files
stk/doc/doxygen/multichannel.txt
Gary Scavone 2cbce2d8bd Version 4.2.1
2013-09-29 23:06:23 +02:00

28 lines
1.6 KiB
Plaintext

/*! \page multichannel Multi-Channel I/O
The ToolKit WvIn and WvOut classes (and their subclasses) support multi-channel audio data input and output. A set of interleaved audio samples representing a single time "slice" is referred to as a <I>sample frame</I>. At a sample rate of 44.1 kHz, a four-channel audio stream will have 44100 sample frames per second and a total of 176400 individual samples per second.
Most STK classes process single-sample data streams via their
<TT>tick()</TT> function. In order to distinguish single-sample and
sample frame calculations, the WvIn and WvOut classes implement both
<TT>tick()</TT> and <TT>tickFrame()</TT> functions. The
<TT>tickFrame()</TT> functions take or return a reference to an StkFrames object
representing one or more sample frames. For single-channel
streams, the <TT>tick()</TT> and <TT>tickFrame()</TT> functions
produce equivalent results. When <TT>tick()</TT> is called for a
multi-channel stream, however, the function either returns a sample
frame average (WvIn) or writes a single sample argument to all
channels (WvOut).
Multi-channel support for realtime audio input and output is dependent on the audio device(s) available on your system.
The following example demonstrates the use of the FileWvOut class for
creating a four channel, 16-bit AIFF formatted audio file. We will
use four sinewaves of different frequencies for the first two seconds
and then a single sinewave for the last two seconds.
\include foursine.cpp
[<A HREF="tutorial.html">Main tutorial page</A>] &nbsp; [<A HREF="polyvoices.html">Next tutorial</A>]
*/