private static void SplitTrackChunkChords(TrackChunk trackChunk, Func <ChordsSplitter, IEnumerable <Chord>, IEnumerable <Chord> > splitOperation, long notesTolerance) { using (var chordsManager = trackChunk.ManageChords(notesTolerance)) { var chords = chordsManager.Chords; var chordsSplitter = new ChordsSplitter(); var newChords = splitOperation(chordsSplitter, chords).ToList(); chords.Clear(); chords.Add(newChords); } }
private static void SplitTrackChunkChords(TrackChunk trackChunk, Func <ChordsSplitter, IEnumerable <Chord>, IEnumerable <Chord> > splitOperation, ChordDetectionSettings settings) { using (var chordsManager = trackChunk.ManageChords(settings)) { var chords = chordsManager.Chords; var chordsSplitter = new ChordsSplitter(); var newChords = splitOperation(chordsSplitter, chords).ToList(); chords.Clear(); chords.Add(newChords); } }