Tal e como dice Sergio, o formato midi é só un "paquete de ordenes
estructuradas", para que poidas entendelo mellor hay unha páxina que o
explica moi ben:
http://www.lpi.tel.uva.es/~nacho/docencia/ing_ond_1/trabajos_01_02/formatos…
En Karaokes o que se acostuma a empregar son os chamados "comandos de
modo" para "disparar" as secuencias, un inicial que ordena leer a
determinada velocidade un texto e os sucesivos que son os encargados
de por os colorins na palabra/frase a suliñar.
Para evitar roturas na sincronización por mor das velocidades (tempo)
sobor de todo causadas pola latencia o que fai o midi é, unha de duas,
ou tomar unha referencia, normalmente un determinado bit, da música de
referencia, ou a inversa (máis complexo) facer que sexa a música a que
siga o "diapason" marcado polo ficheiro midi.
Deducese que esto implica editar dun xeito ou de outro un ficheiro de
midi, ben sexa empregando un instrumento con capacidades midi (hainos
case de xoguete (de só duas ou catro pistas), moi baratos que para
este uso deben ser máis que dabondo (Casio), ven cunha aplicación
informática sobre pc/mac, en Linux temos varias desde sinxelas ata
complexas que compiten coas privativas profesionais de 8.000€.
Para editar este tipo de ficheiros (refírome os de karaoke) é máis
importante a paciencia que a ciencia, pois son moi elementais, pero
levan o seu tempo.