![]() |
Mixxx
|
#include <ChordSegmentator.hxx>

Public Member Functions | |
| ChordSegmentator () | |
| ~ChordSegmentator () | |
| void | doIt (CLAM::TData ¤tTime, const std::vector< double > &correlation, const unsigned firstCandidate, const unsigned secondCandidate) |
| void | doItSimple (CLAM::TData ¤tTime, const std::vector< double > &correlation, const unsigned firstCandidate, const unsigned secondCandidate) |
| void | doItSimilarity (CLAM::TData ¤tTime, const std::vector< double > &correlation, const unsigned firstCandidate, const unsigned secondCandidate) |
| void | openSegment (CLAM::TData ¤tTime, unsigned currentChord) |
| void | closeSegment (CLAM::TData ¤tTime) |
| void | changeChordIfSegmentTooSmall (unsigned &segment) |
| void | mergeSegmentIfIdenticalChordInPreviousSegment (unsigned &segment) |
| void | closeLastSegment (CLAM::TData ¤tTime) |
| void | eraseAllSegments () |
| void | estimateChord (const ChordCorrelator::ChordCorrelation &correlation, unsigned &estimatedChord) |
| void | changeChordsForSmallSegments () |
| void | joinSegmentsWithIdenticalChords () |
| const CLAM::DiscontinuousSegmentation & | segmentation () const |
| const std::vector< unsigned > & | chordIndexes () const |
| void | method (unsigned method) |
ChordSegmentator divides the analysed audio data into segments characterized by different chords. It takes as input the chord correlation for each frame and decides whether this new data signifies a chord change in the music. If so it opens a new segment for the new chord, at the same time closing the previous segment.
Definition at line 44 of file ChordSegmentator.hxx.
| Simac::ChordSegmentator::ChordSegmentator | ( | ) | [inline] |
| Simac::ChordSegmentator::~ChordSegmentator | ( | ) | [inline] |
Definition at line 69 of file ChordSegmentator.hxx.
| void Simac::ChordSegmentator::changeChordIfSegmentTooSmall | ( | unsigned & | segment | ) | [inline] |
Definition at line 199 of file ChordSegmentator.hxx.


| void Simac::ChordSegmentator::changeChordsForSmallSegments | ( | ) | [inline] |
Finds segments shorter then minSegmentLength and assigns them the same chord as the chord in either the previous or the next segment.
Definition at line 294 of file ChordSegmentator.hxx.


| const std::vector<unsigned>& Simac::ChordSegmentator::chordIndexes | ( | ) | const [inline] |
Definition at line 306 of file ChordSegmentator.hxx.
| void Simac::ChordSegmentator::closeLastSegment | ( | CLAM::TData & | currentTime | ) | [inline] |
| void Simac::ChordSegmentator::closeSegment | ( | CLAM::TData & | currentTime | ) | [inline] |
Definition at line 181 of file ChordSegmentator.hxx.


| void Simac::ChordSegmentator::doIt | ( | CLAM::TData & | currentTime, |
| const std::vector< double > & | correlation, | ||
| const unsigned | firstCandidate, | ||
| const unsigned | secondCandidate | ||
| ) | [inline] |
| void Simac::ChordSegmentator::doItSimilarity | ( | CLAM::TData & | currentTime, |
| const std::vector< double > & | correlation, | ||
| const unsigned | firstCandidate, | ||
| const unsigned | secondCandidate | ||
| ) | [inline] |
Chord similarity based segmentation method
Definition at line 117 of file ChordSegmentator.hxx.


| void Simac::ChordSegmentator::doItSimple | ( | CLAM::TData & | currentTime, |
| const std::vector< double > & | correlation, | ||
| const unsigned | firstCandidate, | ||
| const unsigned | secondCandidate | ||
| ) | [inline] |
Simple chord segmentation method
Definition at line 87 of file ChordSegmentator.hxx.


| void Simac::ChordSegmentator::eraseAllSegments | ( | ) | [inline] |
| void Simac::ChordSegmentator::estimateChord | ( | const ChordCorrelator::ChordCorrelation & | correlation, |
| unsigned & | estimatedChord | ||
| ) | [inline] |
| void Simac::ChordSegmentator::joinSegmentsWithIdenticalChords | ( | ) | [inline] |
Definition at line 299 of file ChordSegmentator.hxx.


| void Simac::ChordSegmentator::mergeSegmentIfIdenticalChordInPreviousSegment | ( | unsigned & | segment | ) | [inline] |
Definition at line 217 of file ChordSegmentator.hxx.


| void Simac::ChordSegmentator::method | ( | unsigned | method | ) | [inline] |
Definition at line 307 of file ChordSegmentator.hxx.


| void Simac::ChordSegmentator::openSegment | ( | CLAM::TData & | currentTime, |
| unsigned | currentChord | ||
| ) | [inline] |
Definition at line 175 of file ChordSegmentator.hxx.


| const CLAM::DiscontinuousSegmentation& Simac::ChordSegmentator::segmentation | ( | ) | const [inline] |
Definition at line 305 of file ChordSegmentator.hxx.