Overview
pdf of data
Discussion
The PDF module builds a histogram of incoming data and allows you to freeze the histogram with an input pin. It also provides optional smoothing as well as an optional reset pin. A histogram is a graphical representation showing a visual impression of the distribution of data values. A histogram is essentially a table in which each entry represents the number of times that the input sample values fell in a particular range.
Unlike the Histogram module, the PDF module calculates the bin spacing based on the higherBinEdge and lowerBinEdge variables ((higherBinEdge - lowerBinEdge) / numBins). Set these variables to change the bin spacing of your PDF module’s histogram.
Connect an audio signal that you wish to analyze by wiring into input pin 1.
Conenct a BooleanSource module to the freeze pin and toggle to freeze the histogram in its current state.
(OPTIONAL) Enable the reset pin in the Arguments tab. Connect a BooleanSource module to the optional reset pin to clear the histogram data.
Module Pack
Advanced
ClassID
classID = 1370
Type Definition
typedef struct _ModulePDF
{
ModuleInstanceDescriptor instance; // Common Audio Weaver module instance structure
INT32 numBins; // Number of bins
INT32 controllableResetPin; // Controlling Reset Pin
FLOAT32 lowerBinEdge; // Specifies the lowest bin in the histogram
FLOAT32 higherBinEdge; // Specifies the highest bin in the histogram
FLOAT32 smoothingTime; // The smoothing time of the PDF in ms
FLOAT32 alpha; // Forgetting factor
FLOAT32 binSpacing; // BinSpacing
INT32 reset; // Boolean parameter to reset the pdf.
FLOAT32* binCenter; // indices
FLOAT32* previousOut; // previous output.
INT32* hist; // init hist.
} ModulePDFClass;
Variables
Properties
| Name | Type | Usage | isHidden | Default Value | Range | Units |
|---|---|---|---|---|---|---|
| numBins | int | const | 0 | 32 | Unrestricted | |
| controllableResetPin | int | const | 0 | 1 | Unrestricted | |
| lowerBinEdge | float | parameter | 0 | -1 | Unrestricted | |
| higherBinEdge | float | parameter | 0 | 1 | Unrestricted | |
| smoothingTime | float | parameter | 0 | 1000 | 0:10000 | |
| alpha | float | derived | 0 | 0.0006664 | Unrestricted | |
| binSpacing | float | derived | 0 | 0.0625 | Unrestricted | |
| reset | int | parameter | 0 | 0 | 0:1 | |
| binCenter | float* | derived | 0 | [32 x 1] | Unrestricted | |
| previousOut | float* | state | 0 | [32 x 1] | Unrestricted | |
| hist | int* | state | 0 | [32 x 1] | Unrestricted |
Pins
Input Pins
| Name | in |
| Description | Audio input |
| Data type | float |
| Channel range | Unrestricted |
| Block size range | Unrestricted |
| Sample rate range | Unrestricted |
| Complex support | Real |
| Name | freeze |
| Description | input freeze |
| Data type | int |
| Channel range | 1 |
| Block size range | 1 |
| Sample rate range | Unrestricted |
| Complex support | Real |
| Name | reset |
| Description | input reset |
| Data type | int |
| Channel range | 1 |
| Block size range | 1 |
| Sample rate range | Unrestricted |
| Complex support | Real |
Output Pins
| Name | out |
| Description | Audio output |
| Data Type | float |
Matlab Usage
File Name: pdf_module.m
Copyright (c) 2026 DSP Concepts, Inc.