Skip to main content
Skip table of contents

SourceV2Fract16

Overview

Source buffer holding 1 wire of fract16 data

Discussion

The source module has an internal buffer holding 1 output wire's worth of fract16 data. The module continuously copies the data from the internal value buffer to the output wire. Since this is a source module, you must specify the number of channels, blockSize, and sample rate of the output pin. It has an additional module argument to decide whether the internal array is in interleaved or deinterleaved format.

The module also supports real and complex data. For complex data data, set the .value field to complex data in MATLAB. On the target, complex data is stored in interleaved fashion: real, imag, real, etc.

This module makes the wire information available as internal variables. Block size, channel number, sample rate and signal complexity can be accessed in MATLAB code, source code, or in a layout using the ParamGet module.

Type Definition

CODE
typedef struct _ModuleSourceV2Fract16
{
    ModuleInstanceDescriptor instance;            // Common Audio Weaver module instance structure
    INT32 BlockSize;                              // Block Size
    INT32 NumChannels;                            // Number of Channels
    INT32 SampleRate;                             // Sample Rate
    INT32 isComplex;                              // Is Complex
    INT32 format;                                 // Is interleaved Or deinterleaved
    INT32 arrayHeap;                              // Heap in which to allocate memory.
    fract16* value;                               // Array of fract16 data
} ModuleSourceV2Fract16Class;

Variables

Properties

Name

Type

Usage

isHidden

Default value

Range

Units

BlockSize

int

const

0

16

Unrestricted

NumChannels

int

const

0

4

Unrestricted

SampleRate

int

const

0

48000

Unrestricted

isComplex

int

const

0

0

Unrestricted

format

int

const

0

0

Unrestricted

arrayHeap

int

const

1

2

Unrestricted

value

fract16*

parameter

0

[16 x 4]

Unrestricted

Pins

Output Pins

Name: out

Description: output data

Data type: fract16

MATLAB Usage

File Name: source_module.m

CODE
 M=source_v2_fract16_module(NAME, NUMCHANNELS, BLOCKSIZE, SAMPLERATE, ISCOMPLEX, FORMAT, MEMHEAP)
 Creates a source module that allows you to inject fract16 data into
 the audio processing layout.  


 Arguments:
    NAME - name of the module.
    NUMCHANNELS - number of interleaved channels in each output pin.
         By default, NUMCHANNELS=1;
    BLOCKSIZE - number of samples per output channel. By default,
         BLOCKSIZE=32.
    SAMPLERATE - sample rate of the output signal, in Hz.  By default,
         SAMPLERATE=48000.
    ISCOMPLEX - Boolean indicating whether the source module holds complex
         data.  By default ISCOMPLEX = 0 (real).
    FORMAT - Boolean indicating whether internal array is interleaved
         or deinterleaved. By default = deinterleaved
    MEMHEAP - specifies the memory heap to use to allocate the main
         state buffer. This is a string and follows the memory allocation
         enumeration in Framework.h. Allowable values are:
            'AWE_HEAP_FAST' - always use internal DM memory.
            'AWE_HEAP_FASTB' - always use internal PM memory.
            'AWE_HEAP_SLOW' - always use external memory (the default).
            'AWE_HEAP_FAST2SLOW' - use internal memory. If this fails
               then use external memory.

JavaScript errors detected

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

If this problem persists, please contact our support.