Struct WaveTableOscillator

Namespace
SpessaSharp.Synthesizer.Engine.Voice
Assembly
SpessaSharp.dll

Plays back raw audio data at an arbitrary playback rate

public struct WaveTableOscillator
Inherited Members

Constructors

WaveTableOscillator()

Plays back raw audio data at an arbitrary playback rate

public WaveTableOscillator()

Fields

Cursor

The current cursor of the sample.

public float Cursor

Field Value

float

End

End position of the sample. Exclusive.

public int End

Field Value

int

IsLooping

Is the loop on?

public bool IsLooping

Field Value

bool

LoopEnd

End position of the loop. Exclusive.

public int LoopEnd

Field Value

int

LoopStart

Start position of the loop. Inclusive.

public int LoopStart

Field Value

int

PlaybackStep

Playback step (rate) for sample pitch correction.

public float PlaybackStep

Field Value

float

SampleData

Sample data of the voice.

public ArraySegment<float>? SampleData

Field Value

ArraySegment<float>?

Type

The interpolation type used.

public Synthesizer.InterpolationType Type

Field Value

Synthesizer.InterpolationType

Methods

Process(int, float, Span<float>)

Fills the output buffer with raw sample data using a given interpolation.

public bool Process(int sampleCount, float tuningRatio, Span<float> outputBuffer)

Parameters

sampleCount int

The amount of samples to write into the buffer.

tuningRatio float

The tuning ratio to apply.

outputBuffer Span<float>

The output buffer to write to.

Returns

bool

ProcessHermite(int, float, Span<float>)

public bool ProcessHermite(int sampleCount, float tuningRatio, Span<float> outputBuffer)

Parameters

sampleCount int
tuningRatio float
outputBuffer Span<float>

Returns

bool

ProcessLinear(int, float, Span<float>)

public bool ProcessLinear(int sampleCount, float tuningRatio, Span<float> outputBuffer)

Parameters

sampleCount int
tuningRatio float
outputBuffer Span<float>

Returns

bool

ProcessNearest(int, float, Span<float>)

public bool ProcessNearest(int sampleCount, float tuningRatio, Span<float> outputBuffer)

Parameters

sampleCount int
tuningRatio float
outputBuffer Span<float>

Returns

bool