Class SSDelay

Namespace
SpessaSharp.Synthesizer.Engine.Effects
Assembly
SpessaSharp.dll
public sealed class SSDelay : Effect.DelayProcessor
Inheritance
SSDelay
Inherited Members

Constructors

SSDelay(int, int)

public SSDelay(int sampleRate, int maxBufferSize)

Parameters

sampleRate int
maxBufferSize int

Properties

Feedback

0-127
(-64)-63
This parameter affects the number of times the delay will repeat. With a value of 0, the delay will not repeat. With higher values there will be more repeats. With negative (-) values, the center delay will be fed back with inverted phase. Negative values are effective with short delay times.

public override int Feedback { get; set; }

Property Value

int

Level

0-127
This parameter sets the amount of the effect sent to the effect output.

public override int Level { get; set; }

Property Value

int

LevelCenter

0-127
This parameter sets the volume of the central delay. Higher values result in a louder center delay.

public override int LevelCenter { get; set; }

Property Value

int

LevelLeft

0-127
This parameter sets the volume of the left delay. Higher values result in a louder left delay.

public override int LevelLeft { get; set; }

Property Value

int

LevelRight

0-127
This parameter sets the volume of the right delay. Higher values result in a louder right delay.

public override int LevelRight { get; set; }

Property Value

int

PreLowPass

0-7
A low-pass filter can be applied to the sound coming into the effect to cut the high frequency range. Higher values will cut more of the high frequencies, resulting in a more mellow effect sound.

public override int PreLowPass { get; set; }

Property Value

int

SendLevelToReverb

0-127
This parameter sets the amount of delay sound that is sent to the reverb. Higher values result in more sound being sent.

public override int SendLevelToReverb { get; set; }

Property Value

int

TimeCenter

0-115
0.1ms-340ms-1000ms
The delay effect has three delay times; center, left and right (when listening in stereo). Delay Time Center sets the delay time of the delay located at the center. Refer to SC-8850 Owner's Manual p. 236 for the exact mapping of the values.

public override int TimeCenter { get; set; }

Property Value

int

TimeRatioLeft

0-120
4% - 500%
This parameter sets the delay time of the delay located at the left as a percentage of the Delay Time Center (up to a max. of 1.0 s). The resolution is 100/24(%).

public override int TimeRatioLeft { get; set; }

Property Value

int

TimeRatioRight

1-120
4%-500%
This parameter sets the delay time of the delay located at the right as a percentage of the Delay Time Center (up to a max. of 1.0 s). The resolution is 100/24(%).

public override int TimeRatioRight { get; set; }

Property Value

int

Methods

GetSnapshot()

Gets a synthesizer from this effect processor instance.

public override Effect.DelayProcessorSnapshot GetSnapshot()

Returns

Effect.DelayProcessorSnapshot

Process(ReadOnlySpan<float>, Span<float>, Span<float>, Span<float>, int, int)

Process the effect and ADDS it to the output.

public override void Process(ReadOnlySpan<float> input, Span<float> outputLeft, Span<float> outputRight, Span<float> outputReverb, int startIndex, int sampleCount)

Parameters

input ReadOnlySpan<float>

The input buffer to process. It always starts at index 0.

outputLeft Span<float>

The left output buffer.

outputRight Span<float>

The right output buffer.

outputReverb Span<float>

The mono input for reverb. It always starts at index 0.

startIndex int

The index to start mixing at into the output buffers.

sampleCount int

sampleCount The amount of samples to mix.