Skip to main content
Skip table of contents

SampleMultiplexorControl

Overview

N to 1 multiplexor module with a control input operating sample-by-sample

Discussion

Multiplexor module in which the channel to select is taken from a control pin (the first pin). The control pin is an integer value in the range 0 to N-1, where N is the number of audio inputs. If the control value is outside of the allowable range it is clipped. The multiplexor operates on a sample-by-sample basis. The 1st value on the control pin selects which channel and input pin the 1st output is from. The 2nd value on the control pin selects which channel and input pin the 2nd output is from. And so on.

Each audio input pin must have the same number of channels, sample rate, real/complex, and block size. The control pin has to be single channel with the same block size as the audio pins.

Smoothing is not supported by this module.

Type Definition

CODE
typedef struct _ModuleSampleMultiplexorControl
{
    ModuleInstanceDescriptor instance;            // Common Audio Weaver module instance structure
} ModuleSampleMultiplexorControlClass;

Variables

Properties

Name

Type

Usage

isHidden

Default value

Range

Units

indexPinFlag

int

const

0

1

Unrestricted

index

int

parameter

0

0

0:2

Pins

Input Pins

Name: Ctrl

Description: Control signal

Data type: int

Channel range: 1

Block size range: Unrestricted

Sample rate range: Unrestricted

Complex support: Real

Name: in1

Description: Input signal

Data type: {float, int, fract32}

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}

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}

MATLAB Usage

File Name: sample_multiplexor_control_module.m

CODE
 M=sample_multiplexor_control_module(NAME, NUMINPIN)
 Multiplexor with control pin that operates on a sample-by-sample basis.
 The control pin's block size is the same size as other input pin's block
 size. The control pin is an integer value in the range 0 to N-1. (N is
 the number of data pins).
 Although the control signal has to be real numbers, the data signals can
 be either real or complex number. Smoothing is not supported in this
 module. 
 Arguments:
    NAME - name of the module.
    NUMINPIN - number of input pins.
 All input pins must have the same block size and number of channels.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.