Class ModulationEvent
Represents a detected key change or tonicization.
public sealed class ModulationEvent
- Inheritance
-
ModulationEvent
- Inherited Members
Properties
Confidence
Confidence in this modulation (0.0-1.0): how clearly the phrase's evidence chose ToKey over FromKey, scaled by how much of the stretch that established the new key it owns.
public required float Confidence { get; init; }
Property Value
Remarks
This is a margin, not a goodness-of-fit score, and it reads on the same modest scale as Confidence: a confident modulation to a closely related key lands between about 0.15 and 0.65 (to the dominant 0.40, the subdominant 0.33, the relative minor 0.62, measured on four-bar block-chord passages), and only a jump to a distant key approaches 1.0. Do not read 0.5 as the dividing line between unsure and sure.
Description
Description of the modulation.
public string? Description { get; init; }
Property Value
Duration
Duration of the new key area (if temporary).
public Rational? Duration { get; init; }
Property Value
FromKey
Key before modulation.
public required KeySignature FromKey { get; init; }
Property Value
Offset
Starting offset of the modulation.
public required Rational Offset { get; init; }
Property Value
PivotChord
Pivot chord if applicable (in both key contexts).
public (RomanNumeralChord? FromContext, RomanNumeralChord? ToContext)? PivotChord { get; init; }
Property Value
ToKey
Key after modulation.
public required KeySignature ToKey { get; init; }
Property Value
Type
Type of modulation.
public required ModulationType Type { get; init; }