MusicXML to Singing Audio: What Works, What Breaks, and How to Fix Your Score

Why a MusicXML score sometimes sings the wrong words, notes, or order, and how to fix lyrics, voices, verses, repeats, and instruments in your notation app before you generate.

When a score turns into singing audio that sounds wrong, the voice is rarely the problem. Almost every bad render traces back to something in the MusicXML: a lyric that isn't attached to its note, two voices written as chords, a repeat typed as a word.

This guide covers what a singing engine reads from your MusicXML, what works straight out of a notation app, and the handful of problems that break a render, with how to fix each one.

What a singing engine reads from MusicXML

MusicXML is a full description of the score, not just notes. For singing audio, these parts matter:

  • Notes and rhythm: the pitches and durations each part sings.
  • Lyrics: each syllable, and which note it belongs to.
  • Part names: how you tell the engine which line to sing.
  • Voices: separate melodic lines that share a staff.
  • Verses: numbered lyric lines under the same notes.
  • Tempo: the metronome marking.
  • Repeats and navigation: repeat barlines, endings, D.C., D.S., Coda, and Fine.
  • Instruments: the declared sound of each accompaniment part.

A MIDI export keeps the notes and rhythm but drops the lyrics, part names, verses, and most of the structure, which is why MusicXML is the better starting point.

What works out of the box

Scores exported cleanly from MuseScore, Finale, Sibelius, Dorico, or Logic Pro usually need no changes. SightSinger handles, without extra preparation:

  • a choir score with two voices per staff (SA and TB), split into separate parts;
  • several verses, with the verse to sing chosen per render;
  • repeats, endings, and navigation, played in performance order or written order;
  • piano and other accompaniment parts, played as instrument tracks alongside the voices.

What breaks, and how to fix it

What you hearUsual cause in the scoreFix in your notation app
Words sung on the wrong notes, or missingLyrics typed as text boxes or staff text instead of with the lyric toolRe-enter them with the lyric tool so each syllable is attached to its note
A word runs over the wrong notesSyllables not split with hyphens, or a held syllable without an extender lineHyphenate multi-syllable words; extend a syllable held over several notes (a melisma)
A part sings the wrong line, or both linesTwo voices merged into chords on one staffWrite each line as its own voice, or on its own staff
The wrong verse is sungVerses typed as one lyric line, or unnumberedPut each verse on its own numbered lyric line
The song is too short, or a section plays onceRepeats or D.C./D.S. written as plain textUse real repeat barlines, endings, and navigation markings
The accompaniment has the wrong soundNo instrument set for that partChoose the instrument for the part (piano, guitar, strings)
Too fast or too slowNo tempo markingAdd a metronome mark at the start
Extra notes you didn't expectHidden notes, cue notes, or stray voicesDelete them, or remove the part if it isn't meant to be sung

Two input problems come before any of these:

A five-minute preflight

Before you generate, open the score and check, in this order:

  1. Every syllable is attached to a note, with hyphens and extenders in place.
  2. Every part has a clear name.
  3. Lines that share a staff are separate voices.
  4. Each verse is its own numbered lyric line.
  5. Repeats and endings are real notation.
  6. Accompaniment parts have an instrument, and the score has a tempo.

The MusicXML readiness checklist has the full list, with how to fix each item. If your singers learn pitches with solfege first, the free MusicXML solfege tool adds a movable-do or fixed-do lyric line to a melody part.

Export and generate

Export the score as .xml or .mxl, upload it to SightSinger, and ask in plain language for the part and verse you want, for example "sing the alto part, verse 2". Each part you generate joins the multi-track player with the score's instruments, so you can hear everything together.

If a render still sounds wrong, check the table above first: the fix is almost always in the score.

Summary

MusicXML carries everything a singing engine needs, as long as the score is written the way it sounds: lyrics attached to notes, one line per voice, verses numbered, repeats as notation, and instruments set. Fix those in your notation app, and the audio follows.