Skip to content

Interleave

Overview

Interleaves multiple audio signals

Discussion

The interleave module takes N audio inputs and produces a single output, where the N input signals are interleaved together. This module allows for different signals to be mixed into a single "wire,", which is useful when creating layouts, as a single processing path can represent parallel channels. Each input pin can have an arbitrary number of interleaved channels. The output contains all of the channels on the first input pin followed by all of the channels of the second input pin, and so on, for all input pins. There are no restrictions on the number of channels or the blockSize, though the blockSize of all inputs must be the same.

Module Pack

Standard

ClassID

classID = 98

Type Definition

typedef struct _ModuleInterleave
{
ModuleInstanceDescriptor instance;            // Common Audio Weaver module instance structure
} ModuleInterleaveClass;

Pins

Input Pins

Name in1
Description Input signal
Data type {float, int, fract32, fract16}
Channel range Unrestricted
Block size range Unrestricted
Sample rate range Unrestricted
Complex support Real and Complex
Name in2
Description Input signal
Data type {float, int, fract32, fract16}
Channel range Unrestricted
Block size range Unrestricted
Sample rate range Unrestricted
Complex support Real and Complex

Output Pins

Name out
Description Output signal
Data Type {float, int, fract32, fract16}

Matlab Usage

File Name: interleave_module.m 
 M=interleave_module(NAME, NUMIN) 
 Creates a multi-input interleave module for use in the Audio Weaver 
 environment. 

 Arguments: 
    NAME - name of the module. 
    NUMIN - number of input pins. 

Copyright (c) 2026 DSP Concepts, Inc.