AXFXMultiChChorusInit

Syntax


#include <cafe.h>
#include <cafe/axfx.h>

typedef enum _AXFX_CHORUS_MODE
{
    AXFX_CHORUS_MODE_2CH,       // Original chorus effects
    AXFX_CHORUS_MODE_4CH,
    AXFX_CHORUS_MODE_6CH,
    AXFX_CHORUS_MODE_2CH_2,     // Version 2 optimized chorus effects
    AXFX_CHORUS_MODE_4CH_2,
    AXFX_CHORUS_MODE_6CH_2,
} AXFX_CHORUS_MODE;


typedef enum _AXFX_SAMPLE_RATE
{
    AXFX_SAMPLE_RATE_32000,
    AXFX_SAMPLE_RATE_48000,
} AXFX_SAMPLE_RATE;

BOOL AXFXMultiChChorusInit (AXFX_MULTI_CH_CHORUS *chorus,
                            AXFX_CHORUS_MODE mode, AXFX_SAMPLE_RATE sampleRate);

Parameters

chorus Pointer to an AXFX_MULTI_CH_CHORUS structure with configured user parameters.
mode Mode enum specifying the number of channels to process
sampleRate Sample rate of each channel.
NOTE:
Only AXFX_SAMPLE_RATE_32000 is supported.

Return Values

TRUE if successful; FALSE if a parameter is out of bounds or if memory allocation fails.

Description

There are two groups of chorus effects. The first three AXFX_CHORUS_MODE enum entries select the original chorus effect algorithm. The last three enum entries, indicated by "_2", select the most recent optimized chorus effect algorithm.

The AXFXMultiChChorusInit function initializes the chorus effect (= AXFX_MULTI_CH_CHORUS) for the specified number of channels (specified by mode) and user parameters in the AXFX_MULTI_CH_CHORUS structure. This function also allocates and initializes the memory used by the delay lines and related processing steps. The user must configure the AXFX_MULTI_CH_CHORUS structure's user parameters prior to calling this function.

Modes

AXFX_DELAY_MODE_2CH Two-channel effect which processes two channels.
AXFX_DELAY_MODE_4CH Four-channel effect which processes four channels.
AXFX_DELAY_MODE_6CH Six-channel effect which processes six channels.
AXFX_DELAY_MODE_2CH_2 Version two, two-channel effect which processes two channels.
AXFX_DELAY_MODE_4CH_2 Version two, four-channel effect which processes four channels.
AXFX_DELAY_MODE_6CH_2 Version two, six-channel effect which processes six channels.

Rate

Only 32Khz data rate is supported currently.

Availability

Library Version Availability
Sound 2.0 Yes
Sound 1.0 Yes

Do Not Call From

None.

See Also

AXFX_MULTI_CH_CHORUS
AXFXMultiChChorusOverview
AXFXMultiChChorusGetMemSize
AXFXMultiChChorusShutdown
AXFXMultiChChorusSettings
AXFXMultiChChorusSettingsUpdate
AXFXMultiChChorusSettingsUpdateNoReset
AXFXMultiChChorusCallback
axfxmulticheffects demo

Revision History

2014/02/26 Add related link.
2014/01/17 Removed 48Khz refs.
2013/05/08 Automated cleanup pass.
2013/03/04 New no-reset API.
2012/05/25 Simplified API.
2012/05/10 Added 2/4/6 channel effects.
2012/04/10 Initial version.


CONFIDENTIAL