Portability | non-portable |
---|---|
Stability | experimental |
Maintainer | bash@cs.uu.nl, jpm@cs.ox.ac.uk |
Safe Haskell | None |
Summary: Combining low-level features (VAMP plug-ins) with high-level knowledge (the HarmTrace harmony model)
- mptreeAnnotator :: GrammarEx -> Maybe [TimedData Key] -> AudioFeat -> ChordAnnotation
- groupAnnotator :: GrammarEx -> Maybe [TimedData Key] -> AudioFeat -> ChordAnnotation
- simpleAnnotator :: GrammarEx -> Maybe [TimedData Key] -> AudioFeat -> ChordAnnotation
- mptreeAnnotatorSTG :: GrammarEx -> Maybe [TimedData Key] -> AudioFeat -> ChordAnnotation
- putSegStats :: Maybe [TimedData Key] -> AudioFeat -> IO ()
- preProcessData :: Maybe [TimedData Key] -> AudioFeat -> [ProbChordSeg]
Documentation
mptreeAnnotator :: GrammarEx -> Maybe [TimedData Key] -> AudioFeat -> ChordAnnotationSource
MPTrEE (Model Propelled Transcription of Euphonic Enitities): a sophisticated, harmony and beat informed chord annotator
groupAnnotator :: GrammarEx -> Maybe [TimedData Key] -> AudioFeat -> ChordAnnotationSource
Creates an annotation out of a Chord candidate list by just picking the
first chord. This annotator does smart grouping
(see mergeByBeat
).
simpleAnnotator :: GrammarEx -> Maybe [TimedData Key] -> AudioFeat -> ChordAnnotationSource
The most simple annotator, no grouping, no matching, just pick the best matching chord
mptreeAnnotatorSTG :: GrammarEx -> Maybe [TimedData Key] -> AudioFeat -> ChordAnnotationSource
preProcessData :: Maybe [TimedData Key] -> AudioFeat -> [ProbChordSeg]Source
preprocesses the raw audio data before using chord harmony model based chord selection. First, the beats and chroma are synchronised. Second, chord candidate lists are created. Third, smart, beat informed grouping of the chord candidates is performed. Fourth, the chord candidate lists are grouped in segments based on the key (obtained as provided by the user or as derived from the audio data). Last, the chord candidate lists are further segmented based on the occurrences of I and V chords.