Copyright © 2005-2019 MultiMedia Soft

Effects.FilterApply method

Previous pageReturn to chapter overviewNext page

Remarks

 

Applies a filter effect to the given player. An existing filter can be reset through the FilterReset method.

 

When a filter is activated on any of the players instanced by the control, eventual custom DSPs must be set to work with floating point samples through the CustomDSP.UseFloatSamples method.

 

See the How to apply special effects to a playing sound section for further details.

 

 

Syntax

 

[Visual Basic]

Public Function FilterApply (

nPlayerIndex as Int16,

nFilterName as enumFilterNames,

nFilterType as enumFilterTypes,

fFrequency1 as Single,

fFrequency2 as Single,

fGain as Single,

fTransitionTime as Single

) as enumErrorCodes


 

[C#]

public enumErrorCodes FilterApply (

Int16 nPlayerIndex,

enumFilterNames nFilterName,

enumFilterTypes nFilterType,

float fFrequency1,

float fFrequency2,

float fGain,

float fTransitionTime

);


 

[C++]

public: enumErrorCodes FilterApply (

Int16 nPlayerIndex,

enumFilterNames nFilterName,

enumFilterTypes nFilterType,

float fFrequency1,

float fFrequency2,

float fGain,

float fTransitionTime

);


 

 

Parameter

Description

 

 

nPlayerIndex

Number representing the zero-based index of the involved player

nFilterName

Numeric value representing the filter name.

Supported values are the following:

Mnemonic constant

Value

Meaning

FILTER_NAME_BESSEL

0

Bessel IIR Filter

FILTER_NAME_BUTTERWORTH

1

Butterworth IIR Filter

FILTER_NAME_HAMMING

2

Hamming FIR Filter

FILTER_NAME_HANNING

3

Hanning FIR Filter

FILTER_NAME_BLACKMAN

4

Blackman FIR Filter

FILTER_NAME_RECTANGULAR

5

Rectangular FIR Filter

FILTER_NAME_KAISER

6

Kaiser FIR Filter

nFilterType

Numeric value representing the filter type.

Supported values are the following:

Mnemonic constant

Value

Meaning

FILTER_TYPE_LOW_PASS

0

Low Pass Filter

FILTER_TYPE_HIGH_PASS

1

High Pass Filter

FILTER_TYPE_BAND_PASS

2

Band Pass Filter

FILTER_TYPE_BAND_STOP

3

Stop Band Filter

fFrequency1

First corner frequency, expressed in Hertz.

 

For Low Pass and High Pass filters, this parameter represents the cut-off frequency.

For Band Pass and Band Stop filters, this parameter represents the low frequency cut.

The value of this parameter must be higher than 0 and smaller than half the frequency of the sound being played; the frequency of the sound being played can be obtained through the nFrequency field of the SoundInfo2 class (requires calling the SoundInfoGet method).

fFrequency2

Second corner frequency, expressed in Hertz.

 

For Low Pass and High Pass filters, this parameter is ignored and can be set to 0.

For Band Pass and Band Stop filters, this parameter represents the high frequency cut and its value must be higher than 0, higher than the value of the fFrequency1 parameter and smaller than half the frequency of the sound being played; the frequency of the sound being played can be obtained through the nFrequency field of the SoundInfo2 class (requires calling the SoundInfoGet method).

fGain

Gain applied to the filter, expressed in percentage: typically this parameter should be set to 100 which leaves the original sound level unchanged during filtering; values under 100 reduce the sound level while values above 100 amplify the sound level.

 

This parameter is ignored by IIR filters like Bessel and Butterworth.

fTransitionTime

Transition time, expressed in milliseconds, describes how quickly a filter transitions from a pass band to a stop band, or vice versa.

The minimum accepted value is 201 milliseconds.

 

 

This parameter is ignored by IIR filters like Bessel and Butterworth.

 

Return value

 

Value

Meaning

 

 

Negative value

An error occurred (see the LastError property for further error details)

enumErrorCodes.NOERROR (0)

The method call was successful.