Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

This module calculates the Block Statistics of the input signal on a block-by-block basis. The input pin can have an arbitray arbitrary number of interleaved channels and the Block Statistics calculation occurs over all channels. The output pin has a single channel and a blockSize of 1.

The following algorithm is used internally. For each block, caluclates the maximum minimum, maximum absolute value, mean, RMS, standard deviation, variance, average energy is computed depending on the variable statisticsType selection. This includes all channels and the entire block.

The module also exposes computed signal as state variable; instantaneousValue holds the Block Statistics of the block

statisticsType

Description

0

maximum

1

minimum

2

maximum absolute value

3

mean

4

RMS

5

standard deviation

6

variance

7

average energy

8

sum

9

sum of squares

The statistic is computed on a block-by-block basis and stored in the instantaneousValue variable. The module is stateless and the statistic is recomputed for each block.

An optional constructor argument OUTPUTVALUE specifies whether the computed statistic should be output on an output pin.

  • OUTPUTVALUE=0 (default) - the statistic is only stored internally in instantaneousValue.

  • OUTPUTVALUE=1 then the value of the statistic is output of the first output pin as a floating-point value.

  • OUTPUTVALUE=2 then the module has two output pins. The first output pin is the statistic value and the second output pin is the index at which the value occurs.

    • Using OUTPUTVALUE=2 only makes sense when statisticType=0 (max), 1 (min), or 2 (maxAbs).

Type Definition

Code Block
typedef struct _ModuleBlockStatisticsFract32
{
    ModuleInstanceDescriptor instance;            // Common Audio Weaver module instance structure
    INT32 statisticsType;                         // Type of statistics needed
    fract32 instantaneousValue;                   // Instantaneous output value
} ModuleBlockStatisticsFract32Class;

Variables

Properties

Name

Type

Usage

isHidden

Default value

Range

Units

statisticsType

int

parameter

0

0

0:7

instantaneousValue

fract32

state

0

0

-60:10

Pins

Input Pins

Name: in

Description: Audio input

...