Class RhythmAnalyzer
Rhythm analyzer - meter detection, pattern recognition, syncopation.
public static class RhythmAnalyzer
- Inheritance
-
RhythmAnalyzer
- Inherited Members
Fields
CommonPatterns
Common rhythmic patterns for recognition.
public static readonly RhythmPattern[] CommonPatterns
Field Value
Methods
Analyze(NoteBuffer, TimeSignature?)
Analyze rhythm of a note buffer.
public static RhythmAnalysisResult Analyze(NoteBuffer buffer, TimeSignature? knownMeter = null)
Parameters
bufferNoteBufferknownMeterTimeSignature?
Returns
Exceptions
- ArgumentNullException
bufferis null.
DetectMeter(NoteBuffer)
Detect the most likely time signature from a sequence of notes.
public static MeterDetectionResult DetectMeter(NoteBuffer buffer)
Parameters
bufferNoteBuffer
Returns
Exceptions
- ArgumentNullException
bufferis null.
DetectMeter(IEnumerable<NoteEvent>)
Detect the most likely time signature from a sequence of note events.
public static MeterDetectionResult DetectMeter(IEnumerable<NoteEvent> notes)
Parameters
notesIEnumerable<NoteEvent>
Returns
Exceptions
- ArgumentNullException
notesis null.
IdentifyPattern(NoteBuffer)
Identify rhythmic pattern in a sequence of notes. Returns the best matching pattern with quality score.
public static RhythmPatternMatch? IdentifyPattern(NoteBuffer buffer)
Parameters
bufferNoteBuffer
Returns
Exceptions
- ArgumentNullException
bufferis null.
IdentifyPattern(IEnumerable<NoteEvent>)
Identify rhythmic pattern in a sequence of note events. Returns the best matching pattern with quality score.
public static RhythmPatternMatch? IdentifyPattern(IEnumerable<NoteEvent> notes)
Parameters
notesIEnumerable<NoteEvent>
Returns
Exceptions
- ArgumentNullException
notesis null.