Error Detection

Yass checks any of your input on errors. Errors are listed in the error window; there you can select them, obtain details, and choose to auto-correct them (if possible). Note that error detection itself does not modify your karaoke data.

These errors are checked when a song is opened:

  • Transposed notes: Note heights are outside the range [-12,36] or the lowest note is above 12. You might not hear MIDI clicks.
  • Missing end: The end tag E is missing.
  • Metadata: tags, files, sorting (most of them can only be corrected in the song library)
  • Misplaced tag: Please place comments in the header.
  • Tag after end: Please place comments in a comment line with e.g. the CREATOR tag.
  • Unsorted comments: Please use the ordering above.
  • Missing tag: A commonly used tag is missing (LANGUAGE, GENRE).
  • File not found: The given file does not exist. The directory contains no possible matches.
  • File not referenced: The song folder includes a file that is not specified in the header.
  • No [CO] label: The filename does not end with [CO].jpg.
  • No [BG] label: The filename does not end with [BG].jpg.
  • No [VD] label: The filename does not contain [VD#…].
  • Wrong video gap: The video gap does not match the [VD#…] in the filename.
  • No videogap: The video filename includes [VD#…], but there is no VIDEOGAP tag.
  • No [VIDEO] label: Please include [VIDEO] at the end of the directory name.
  • Wrong filename: The song directory or some of its files do not follow the “Artist – Title” naming convention. Auto-correction preserves file extensions and comments in [brackets].

These errors are checked whenever you modify a note:

  • Overlapping notes: Either this note starts too early or the note before lasts too long.
  • Out of order notes: Notes are not sorted by their timestamp.
  • Touching notes: No spacing between two notes. Players might find that difficult to sing. Auto-corrections shortens the first note.
  • Uncommon golden bonus: The percentage of golden notes does not match with the maximum golden bonus. You can set the variance in beats from the ideal quota in the preferences.
  • Early page break: Line disappears after less than 50 ms; users might be annoyed.
  • Late page break: Next line starts after less than 50 ms; users can hardly catch up with the text.
  • Uncommon page break: Text disappears or appears with unconventional timing.
  • Page overlap: Page break overlaps notes.
  • Too much spaces: Two or more spaces.
  • Uncommon spacing: Please place spaces in front of text.
  • Line overflow: This line might not fit on screen.
  • Empty line: Please do not insert empty lines.
  • Invalid line: Lines must start with one of these symbols: #:*F-EP.
  • Line cut: missing parameters.
Critical Errors

A few critical errors are automatically corrected while the karaoke data is loaded. In contrast to error detection (described above) changes will become permanent as soon as you save the files.

  • Lines with missing spaces after characters “:-F*” are completed and loaded correctly.
  • Text after comment symbol “#” or end symbol “E” is trimmed to remove leading/subsequent spaces.
  • Likewise all redundant spaces between numbers are removed.
  • Decimal symbol “.” is exchanged with comma “,”.
  • The boolean “true” is exchanged with “yes”.
  • Invalid lines not starting with “:-F*” are converted into comments starting with “#”.
Trimming Pages

You can trim page breaks to repair early/late page breaks, and optionally also uncommon page breaks.

To trim:

  • In the error window, select and correct a specific page break error.
  • Press Ctrl-t to trim all page breaks
  • Specify in the preferences if you want to trim automatically while editing.

In the preferences, you can set the minimum number M of beats before+after pagebreak manually. Default is M=0, which sets pagebreaks automatically using these trimming rules for pauses between page breaks:

  • Less than 2 beats: break immediately.
  • 2-8 beats: break 2 beats before new line.
  • 9-12 beats: break 3 beats before new line
  • 13-16 beats: break 4 beats before new line
  • More than 17 beats: break after 10 beats
  • More than 2s: break after 1s.
  • More than 4s: break after 2s.

These rules do not ensure a smooth transition between levels; you might experience jumps when dragging notes in automatic-trim mode. Contact me if you think you have developed a better algorithm.

Next page: Creating Songs