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
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
Level
0-127
This parameter sets the amount of the effect sent to the effect output.
public override int Level { get; set; }
Property Value
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
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
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
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
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
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
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
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
Methods
GetSnapshot()
Gets a synthesizer from this effect processor instance.
public override Effect.DelayProcessorSnapshot GetSnapshot()
Returns
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
inputReadOnlySpan<float>The input buffer to process. It always starts at index 0.
outputLeftSpan<float>The left output buffer.
outputRightSpan<float>The right output buffer.
outputReverbSpan<float>The mono input for reverb. It always starts at index 0.
startIndexintThe index to start mixing at into the output buffers.
sampleCountintsampleCount The amount of samples to mix.