Downsampler
Overview
Downsampler (or decimator) - keeps 1 out of every D samples
Discussion
Multichannel downsampling module. When downsampling by a factor of D, the module will keep 1 of every D samples, with the other samples being discarded. No filtering is incorporated within the module. It is expected that the user will incorporate the filters of their choice to systems that incorporate downsampling.
Module Pack
Advanced
ClassID
classID = 1261
Type Definition
typedef struct _ModuleDownsampler
{
ModuleInstanceDescriptor instance; // Common Audio Weaver module instance structure
INT32 D; // Decimation factor. 1 out of every D samples is output.
} ModuleDownsamplerClass;
Variables
Properties
| Name | Type | Usage | isHidden | Default Value | Range | Units |
|---|---|---|---|---|---|---|
| D | int | const | 0 | 2 | 1:1:1024 |
Pins
Input Pins
| Name | in |
| Description | Input signal |
| Data type | {float, int, fract32} |
| Channel range | Unrestricted |
| Block size range | Unrestricted |
| Sample rate range | Unrestricted |
| Complex support | Real |
Output Pins
| Name | out |
| Description | Output signal |
| Data Type | {float, int, fract32} |
Matlab Usage
File Name: downsampler_module.m
M=downsampler_module(NAME, D)
Creates a multi-input downsampler module for use in the Audio Weaver
environment. This module keeps only 1 out of every D samples.
Arguments:
NAME - name of the module.
D - decimation factor.
The decimation factor is set at construction time and cannot be changed
during tuning. Note, the decimation factor must evenly divide the
block size.
Copyright (c) 2026 DSP Concepts, Inc.