Sounds Logical
home

WaveWarp 2.0 Component

IndexCurrent GroupPrevious GroupNext GroupPrevious ComponentNext ComponentBottom of Page

Functional Description | Algorithm | Signal Implementations | Related Components | Example DWBs usage

Signal Generators:

Random Pulse Control Generator (A)

Functional Description
Generates a sequence of rectangular pulses, (pseudo-)randomly distributed in time, with an amplitude nominally between 0 and 1 (for use as an "Amplitude" controller).

NOTE: the sample rate at which this component is executed can be arbitrarily set via the "Sample-rate setting for Signal Generators and Input ASCII files" button (or the "Sample-Rate Setting" command under the "Edit" menu) on the toolbar, which is activated whenever the component is selected on the DrawingBoard. Equivalently, it can be set via the dialog box which (i) appears when the component is initially dragged on to the DrawingBoard or (ii) is activated using the right-mouse-button when the component is selected on the DrawingBoard. This procedure allows the component to either (i) enforce a user-determined sample rate on the downstream component(s), or (ii) to inherit the sample rate from the downstream component(s). Different signal generators can run at different sample rates 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 characteristics of the random pulse train are adjustable via the Parameter Window, as summarised in the following table.

Parameter Purpose
"Pulse average separation" slider Adjusts the average duration between successive pulses, given by the slider value multiplied by the "Max separation" range selection. The actual time elapsed between two successive pulses, is determined by a (pseudo-)random sequence with a mean value equal to the selected resultant "Total separation".
"Pulse width" slider Adjusts the duration of each pulse, given by the slider value multiplied by the "Max width" range selection. The resultant "Total width" corresponds to the duration (measured from the start of the pulse). The signal ouput will be equal to the selected "Amplitude" for the duration of the pulse, and zero thereafter.
"Amplitude" slider Adjusts the amplitude of the output signal. Depending on the selected "Range", the control signal output will be scaled either between -1 and 1, or between 0 and 1.
"Modulation" checkbox If enabled, the "Range" selection is automatically disabled, and the "Amplitude" slider becomes a "Depth" slider. The control signal ouput will be automatically scaled over the range from 0 to 1. The "Depth" determines the fraction of this range over which the pulse sequence will be mapped. Maximum "Depth" (a value of 1) implies that the pulse sequence will be mapped on to the entire range from 0 to 1, thereby maximising the signal variation. Minimum "Depth" (a value of 0) implies no mapping, thereby minimising the signal variation (i.e. constant output). An intermediate value, say 0.2, implies that the ouput of the pulse sequence will be mapped on to the upper 20% of the output range, and so forth.
Plot window Displays a representative portion of the time-history of the pulse sequence, reflecting the time scaling due to the "Pulse average separation" and "Pulse width" sliders, and the amplitude scaling due to the "Amplitude" or "Depth" slider.

Algorithm
Utilizes a pseudo-random number generator using the system clock as a "seed".
Signal Implementations
Audio signals Control signals Description
n/a single output Generates a control signal with an amplitude nominally between 0 and 1
Related components:
Example DrawingBoards illustrating usage:

IndexCurrent GroupPrevious GroupNext GroupPrevious ComponentNext ComponentTop of Page

home - news - products - store - support - site map - company info
© 2007 Sounds Logical. All rights reserved.
Sounds Logical
legal notice - privacy statement