Table of Contents

Class DistortionFilter

Namespace
Nyra.Entities.Filters
Assembly
Nyra.dll

Distorts the audio.

public sealed record DistortionFilter : IFilter, IEquatable<DistortionFilter>
Inheritance
DistortionFilter
Implements
Inherited Members

Remarks

The server defaults are offsets 0.0 and scales 1.0. A full-chain write by this side fills the unset members with them, which activates the filter on Lavalink. NodeLink keeps the block in the applied state but bypasses the default values, so the same write is inaudible there (the fade-out idiom when a transition rides it). Send explicit values to pin the sound you intend, removing the filter disables it.

Lavalink multiplies the three trigonometric terms (a zeroed scale mutes the whole filter), NodeLink adds them as separate terms with the offsets as phase, the same values sound different per server.

The NodeLink-only transition fades the filter in or out, the out leg is the default-values block carrying a transition, removals themselves step, no removal in this library carries a transition. Parameter changes still step.

Constructors

DistortionFilter(float?, float?, float?, float?, float?, float?, float?, float?, FilterTransition?)

Distorts the audio.

public DistortionFilter(float? SinOffset = null, float? SinScale = null, float? CosOffset = null, float? CosScale = null, float? TanOffset = null, float? TanScale = null, float? Offset = null, float? Scale = null, FilterTransition? Transition = null)

Parameters

SinOffset float?
SinScale float?
CosOffset float?
CosScale float?
TanOffset float?
TanScale float?
Offset float?
Scale float?
Transition FilterTransition

Remarks

The server defaults are offsets 0.0 and scales 1.0. A full-chain write by this side fills the unset members with them, which activates the filter on Lavalink. NodeLink keeps the block in the applied state but bypasses the default values, so the same write is inaudible there (the fade-out idiom when a transition rides it). Send explicit values to pin the sound you intend, removing the filter disables it.

Lavalink multiplies the three trigonometric terms (a zeroed scale mutes the whole filter), NodeLink adds them as separate terms with the offsets as phase, the same values sound different per server.

The NodeLink-only transition fades the filter in or out, the out leg is the default-values block carrying a transition, removals themselves step, no removal in this library carries a transition. Parameter changes still step.

Properties

CosOffset

[JsonPropertyName("cosOffset")]
public float? CosOffset { get; init; }

Property Value

float?

CosScale

[JsonPropertyName("cosScale")]
public float? CosScale { get; init; }

Property Value

float?

Offset

[JsonPropertyName("offset")]
public float? Offset { get; init; }

Property Value

float?

Scale

[JsonPropertyName("scale")]
public float? Scale { get; init; }

Property Value

float?

SinOffset

[JsonPropertyName("sinOffset")]
public float? SinOffset { get; init; }

Property Value

float?

SinScale

[JsonPropertyName("sinScale")]
public float? SinScale { get; init; }

Property Value

float?

TanOffset

[JsonPropertyName("tanOffset")]
public float? TanOffset { get; init; }

Property Value

float?

TanScale

[JsonPropertyName("tanScale")]
public float? TanScale { get; init; }

Property Value

float?

Transition

[JsonPropertyName("transition")]
public FilterTransition? Transition { get; init; }

Property Value

FilterTransition