Table of Contents

Class ModulationAnalysisResult

Namespace
Celeritas.Core.Analysis
Assembly
Celeritas.dll

Result of modulation analysis.

public sealed class ModulationAnalysisResult
Inheritance
ModulationAnalysisResult
Inherited Members

Properties

EndKey

Final key signature.

public required KeySignature EndKey { get; init; }

Property Value

KeySignature

KeyCount

Number of distinct keys visited.

public int KeyCount { get; }

Property Value

int

Modulations

All detected modulations.

public required IReadOnlyList<ModulationEvent> Modulations { get; init; }

Property Value

IReadOnlyList<ModulationEvent>

StartKey

The key the music opens in: the key the caller gave, unless the music was never in it.

public required KeySignature StartKey { get; init; }

Property Value

KeySignature

Remarks

A change of key placed at the first note is the opening key misjudged, not a modulation, and the key heard there is the start. An A minor melody analyzed from C minor used to report a modulation from C minor to A minor at its first note and keep C minor here, a key the music was never in; it now opens in A minor, with no modulation, as the trajectory road — which has no key given — always treated its own opening.

TonicizationCount

Number of temporary tonicizations.

public int TonicizationCount { get; }

Property Value

int

TrueModulationCount

Number of true modulations (non-temporary).

public int TrueModulationCount { get; }

Property Value

int