WaveWarp 2.0 Component
      

Controllable Input Audio Files:
Controllable Input WAV file
|
Functional Description
Represents an 8-, 16-, 20-, 24-, or 32-bit, linearly-coded, mono or stereo WAV file as
an audio source with completely flexible playback control via the Control Signal input.
The Controllable Input Audio Files category of the Component Library includes the filenames of
all such files located in the user-specified directory on the hard-disk. Any file in the
list can be used as an audio source on the DrawingBoard. Unlimited multiple copies of the same file
are permitted on any number of DrawingBoards simultaneously. WAV files of any sample rate are
supported, and files with different sample rates can be used simultaneously on a DrawingBoard,
as long as the rules of connectivity for multiple sample rates are adhered to (see the WaveWarp
Users' Guide for more information.)
The name of any file on the DrawingBoard can be changed by double-clicking on its filename. This will
open a conventional "Save As" file dialog box which can then be used to rename the file in the usual
"Windows" manner.
The flexible playback control works as follows: the numerical value of the Control Signal input is truncated
to the nearest integer, and this integer value is used as the step-size (in samples) for advancing the
file location pointer during playback. For example, if the Control Signal has a constant value of 1, then
the file playback will be entirely normal, since the playback pointer simply advances by one sample at a
time through the audio file. If the Control Signal has a constant value of 2, then the file playback will be
accelerated, since the playback pointer will advance by two samples at a time through the audio file, etc.
Likewise, if the Control Signal has a negative value, the file playback will be reversed at the corresponding
rate. If the Control Signal is time-varying, then the file will be played at a time-varying rate, with the
instantaneous rate determined by the instantaneous integer value of the Control Signal. The
Playback Controllers
category of the Component Library contains various components (with internal buffers) which facilitate
playback at any fractional (non-integer) rate, allowing full playback flexibility.
When the DrawingBoard is played, the file pointer for a given Controllable WAV file skips through the
audio data in steps determined by the instantaneous integer value of the Control Signal. At each "hit",
the corresponding audio sample is converted to floating-point representation (over the range -1 to +1)
and streamed out. The rate at which output samples are generated is determined
by the sample rate of the given WAV file. If Loop mode is activated in the Transport Window, each file
will repeat indefinitely during playback. If Loop mode is not activated, the DrawingBoard will
automatically stop playing when the end of the longest file is reached. Until this time, the shorter
files will repeat as in Loop mode. If it is desired that a given file is not repeated, the
Control Signal input for that file can be set to zero after a certain time (using a Start-Stop Controller
component).
Note that all valid WAV files will appear in both the standard Input Audio Files category and
the Controllable Input Audio Files category of the Component Library, so any file can be played
normally or with flexible playback control.
Note for MATLAB® users: the "wwmatlab" sub-directory of the WaveWarp root directory contains
the necessary function m-files (plus example scripts) for reading and writing WAV files from
within MATLAB, thus enabling the user to directly manipulate the individual samples of a WAV file off-line,
and, furthermore, to create a WAV file from any sequence of numerical values.
Algorithm
n/a
Signal Implementations
| Audio signals | Control signals | Description |
| Single output mono | Single input | 8-, 16-, 20-, 24-, or 32-bit mono audio signal output, with the instantaneous playback increment dynamically controlled by the Control Signal input |
| Single output stereo | Single input | 8-, 16-, 20-, 24-, or 32-bit stereo audio signal output, with the instantaneous playback increment dynamically controlled by the Control Signal input |
Related components:
Example DrawingBoards illustrating usage:

      
|