Upsampler
Overview
Multi-channel upsampler that inserts zeros between samples
Discussion
Multi-input upsampling module that expands the signal by a factor of L. The module uses the zero-padding method, i.e. when upsampling by a factor of L, the module will insert L-1 zeros between each sample. No filtering is incorporated within the module. It is expected that the user will incorporate the filters of their choice to systems that incorporate upsampling.
Module Pack
Advanced
ClassID
classID = 1351
Type Definition
typedef struct _ModuleUpsampler
{
ModuleInstanceDescriptor instance; // Common Audio Weaver module instance structure
INT32 L; // Interpolation factor. L-1 zeros inserted between each sample.
} ModuleUpsamplerClass;
Variables
Properties
| Name | Type | Usage | isHidden | Default Value | Range | Units |
|---|---|---|---|---|---|---|
| L | 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: upsampler_module.m
M=upsampler_module(NAME, L)
Creates a multi-input upsampler module for use in the Audio Weaver
environment. This module expands the signal by a factor of L by inserting
L-1 zeros between each sample.
Arguments:
NAME - name of the module.
L - interpolation factor.
The interpolation factor is set at construction time and cannot be changed
during tuning.
Copyright (c) 2026 DSP Concepts, Inc.