/
(8.D.2.2 ) TimeOutFract32

(8.D.2.2 ) TimeOutFract32

Overview

General purpose time out module with configurable timeout in seconds

Discussion

General purpose time out module for floating-point signals. The module counts the blocks untill the timeOut seconds reached. Behaviour after the timeout is controlled by the parameter timeOutBehaviour. It is a droplist control with 0-mute output, 1-attenuate output and 2-Sine tone output. The attenuation level is controled by the parameter outputLevel in dB.

The module supports multiple input and output pins using the argument NUMPINS. By default, NUMPINS=1 and the module has a single input and output pin. If you set NUMPINS > 1 then the timeout applied on all pins with same settings.

Type Definition

typedef struct _ModuleTimeOutFract32 { ModuleInstanceDescriptor instance; // Common Audio Weaver module instance structure FLOAT32 timeOut; // Timeout value in seconds. Module waits these many seconds and applies timeout based on timeOutBehaviour. INT32 timeOutBehaviour; // Selects the timeout behaviour: MuteTheOutput=0 ReduceTheOutputLevel=1 PlaySineTone=2 FLOAT32 outputLevel; // Output level after timeout in dB. fract32 currentGain; // Instantaneous gain applied by the module. This is also the starting gain of the module. fract32 gain; // Target gain in linear units. FLOAT32 sineFreq; // Sine tone frequency in Hz. INT32 sineTableSize; // Sine table length. INT32 sineTableIndx; // Sine table read index. INT32 currentBlockCount; // Blocks counter. INT32 blockCounterCount; // Number of blocks to wait before timeout occures. FLOAT32 smoothingTime; // Time constant of the smoothing process. fract32 smoothingCoeff; // Smoothing coefficient. INT32 postShift; // Number of bits to shift after the fractional multiply. This is based on outputLevel.range. FLOAT32 twoPowMinusPostShift; // 2^(-postShift). Used by to streamline the operation of the set function fract32* sineTable; // Pre-computed Sine tone table. } ModuleTimeOutFract32Class;

Variables

Properties

Name

Type

Usage

isHidden

Default value

Range

Units

timeOut

float

parameter

0

10

Unrestricted

sec

timeOutBehaviour

int

parameter

0

0

0:2

 

outputLevel

float

parameter

0

0

-50:0

 

currentGain

fract32

state

0

0

Unrestricted

 

gain

fract32

derived

1

1

Unrestricted

 

sineFreq

float

const

1

240

Unrestricted

 

sineTableSize

int

derived

1

200

Unrestricted

 

sineTableIndx

int

state

1

0

Unrestricted

 

currentBlockCount

int

state

1

0

Unrestricted

 

blockCounterCount

int

derived

1

15000

Unrestricted

 

smoothingTime

float

const

1

30

Unrestricted

msec

smoothingCoeff

fract32

derived

1

0.0006942

Unrestricted

 

postShift

int

derived

1

0

Unrestricted

 

twoPowMinusPostShift

float

derived

1

1

Unrestricted

 

sineTable

fract32*

state

0

[200 x 1]

Unrestricted

 

Pins

Input Pins

Name: in1

Description: audio input

Data type: fract32

Channel range: Unrestricted

Block size range: Unrestricted

Sample rate range: Unrestricted

Complex support: Real

Output Pins

Name: out1

Description: audio output

Data type: fract32

MATLAB Usage

File Name: timeout_fract32_module.m

M = timeout_fract32_module(NAME, NUMPINS) Fract32 version of general purpose Timeout moudle. Module waits for TimeOut seconds and then once the timeout is reached the output will be muted or attenuated or a sine wave depending on the parameter timeOutBehaviour. User can control the timeout level through the parameter outputLevel. Arguments: NAME - name of the module. NUMPINS - number of pins. Default = 1.

 

Related content

(8.D.2.2) TimeOutFract32
(8.D.2.2) TimeOutFract32
More like this
(8.D.2.3) TimeOutFract32
(8.D.2.3) TimeOutFract32
More like this
(8.D.2.5) TimeOutFract32
(8.D.2.5) TimeOutFract32
More like this
(8.D.2.7) TimeOutFract32
(8.D.2.7) TimeOutFract32
More like this
(8.D.2.4) TimeOutFract32
(8.D.2.4) TimeOutFract32
More like this
(8.D.2.6) TimeOutFract32
(8.D.2.6) TimeOutFract32
More like this