Class FadeSection
One fade of a FadingOptions chain.
public sealed record FadeSection : IEquatable<FadeSection>
- Inheritance
-
FadeSection
- Implements
- Inherited Members
Properties
Curve
Fade curve by name, case-sensitive.
[JsonPropertyName("curve")]
[JsonIgnore(Condition = JsonIgnoreCondition.Never)]
[JsonConverter(typeof(FadeCurveConverter))]
public string? Curve { get; init; }
Property Value
Remarks
Allowed curves per type: volume takes linear, exponential, logarithmic or s-curve, tape takes linear, exponential or sinusoidal, and both takes only the shared linear and exponential.
Scratch reuses this field as a style instead: wash, backspin, baby, start, stop or random on trackStart, and wash, backspin, baby or stop on the other running fades. Seek and resume always run start and never read this field.
A null curve is stored as "linear". For scratch that runs as a plain ramp on trackStart and as wash on the other stages, and an empty string reaches the random default. The explicit linear is written because an omitted member would fall into the server's own default instead.
DurationMilliseconds
Fade duration in milliseconds, 0 disables this fade.
[JsonPropertyName("duration")]
[JsonIgnore(Condition = JsonIgnoreCondition.Never)]
[JsonConverter(typeof(FadeDurationConverter))]
public int? DurationMilliseconds { get; init; }
Property Value
- int?
Remarks
A null still writes an explicit zero, an omitted member would fall into the server's own default handling instead, the explicit form is the one both behaved with.
A duration a co-client stored outside the int32 range clamps to the nearest bound on read, a non-finite one reads as null, the echo of another client's write must not kill the session read.
Type
What the fade changes, null fades the volume.
[JsonPropertyName("type")]
[JsonIgnore(Condition = JsonIgnoreCondition.Never)]
[JsonConverter(typeof(FadeTypeConverter))]
public FadeType? Type { get; init; }
Property Value
Remarks
A null still writes an explicit volume, an omitted member would fall into the server's own default and merge.