MIDI file not importing lyrics correctly from Sibelius

When I import a MIDI file with lyrics generated in Sibelius, the lyrics are not even 50% correct:

I even reset them all to their defaults. Sometimes I get extra empty “la” at the beginning, sometimes, I don’t.

The file

Synthesizer V Studio Pro 1.8.1
OSX Catalina 10.15.7
Sibelius Ultimate 2022.12 build 1722

1 Like

Looking at your MIDI file using this tool: https://colxi.info/midi-parser-js/test/test-es6-import.html

It looks like most the lyric events ("metaType": 5) are being encoded with a non-zero “deltaTime” value, meaning there is time between the actual start of the note and when the lyric starts, and in some cases they occur shortly before their respective note.

For example, I see a couple instances of two lyric events immediately adjacent to another, which seems like it would cause issues for SynthV Studio.

...
{
  "deltaTime": 0,
  "type": 9,
  "channel": 1,
  "data": [
    68,
    75
  ]
},
{
  "deltaTime": 3,
  "type": 255,
  "metaType": 5,
  "data": "and "
},
{
  "deltaTime": 720,
  "type": 255,
  "metaType": 5,
  "data": "again "
},
{
  "deltaTime": 45,
  "type": 8,
  "channel": 1,
  "data": [
    68,
    0
  ]
},
...

I don’t know if this is “normal” for MIDI encoding or not, this is my first time really digging into the file encoding, but it could be part of what’s causing the inconsistent behavior since the lyric events aren’t strictly associated with a note.

You can look for yourself, but if I were to guess this behavior is caused by the notation software not maintaining any association between notes lyrics, which is distinctly different from SVP format where the lyric is embedded as part of the note.


MIDI file specifications, as presented by the maker of the above tool: MIDI File Format Specifications · colxi/midi-parser-js Wiki · GitHub

This expresses things in hexadecimal and includes a lot of extra information, so here are the relevant bits:

Delta-Times
The event delta time is defined by a variable-length value. It determines when an event should be played relative to the track’s last event. A delta time of 0 means that it should play simultaneously with the last event.

  • "type": 9 is the start of a note (“Note On” event)
  • "type": 8 is the end of a note (“Note Off” event)
  • The data for Note On/Off is expressed as the MIDI pitch followed by the velocity (0 velocity for “off”)
  • "metaType": 5 is a lyric event
1 Like

The oddest part is that I have been using this exact method of export/import from Sibelius to Synth V, and in DOZENS of songs this has happened only a couple times. Very frustrating.

1 Like