BlockStatisticsFract32
Overview
Block statistics of a block of samples
Discussion
This module calculates the Block Statistics of the input signal on a block-by-block basis. The input pin can have an 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.
| 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).
Module Pack
Advanced
ClassID
classID = 1226
Type Definition
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 |
| Data type | fract32 |
| Channel range | Unrestricted |
| Block size range | Unrestricted |
| Sample rate range | Unrestricted |
| Complex support | Real |
Output Pins
| Name | out |
| Description | Block statistics output |
| Data Type | fract32 |
Matlab Usage
File Name: block_statistics_fract32_module.m
M=block_statistics_fract32_module(NAME, OUTPUTVALUE)
This modules calculates statistics of the input signal on a block-by-
block basis. A number of different statistics can be calculated based
on the statisticsType parameter. The computed value is stored in the
internal state variable instantaneousValue. Arguments:
NAME - name of the module.
OUTPUTVALUE - Boolean value which specifies whether the module has
an output pin. If OUTPUTVALUE=0, then the module has no
output pin. If OUTPUTVALUE=1 (the default), then
the instantaneousValue variable is output as a single
sample on the output pin.
The argument statisticsType determines what statistics computed:
0 = maximum
1 = minimum
2 = maximum absolute value
3 = mean
4 = RMS
5 = standard deviation
6 = variance
7 = average energy
Copyright (c) 2026 DSP Concepts, Inc.