diff --git a/cnn_madmom/segment.py b/cnn_madmom/segment.py index 95725517947691c441002c68dd02dd54081d12ce..a377c7276015b27288daae527e4923db722287ef 100644 --- a/cnn_madmom/segment.py +++ b/cnn_madmom/segment.py @@ -55,9 +55,12 @@ def segment(songfile, reference_syls=None, syls_per_line=10, last_syl_dur=500): syl_number = len(line) - 1 line_onsets = [o for o in onsets if (o >= line[0][0] and o <= line[-1][0])] line_onsets.sort(reverse=True, key=(lambda x: activation_smoothed[x])) + missing_syls = 0 if syl_number > len(line_onsets): print("WARNING : failed to detect enough onsets in line %d (%d, %d)" % (line_index, line[0][0], line[-1][0])) + missing_syls = syl_number - len(line_onsets) filtered_onsets += line_onsets[0:syl_number] + filtered_onsets += [line[-1][0] for i in range(missing_syls)] # If missing some syllables, pad with 0-length syls onsets = np.array(sorted(filtered_onsets))