último lanzamiento de software: midi lyric checker

MIDI Lyric Checker – Blog Post

📸 Portada: captura de pantalla de la aplicación en Funcionamiento

descripción por IA: Ventana de un programa llamado “Verificador de Letras MIDI”. En la parte superior hay un menú con las opciones “Archivo” e “Idioma – language”. Debajo, se muestra la sección “Parejas de Pistas” con la palabra “Letras” y el estado “Estado:”. Hay una lista con una pareja seleccionada: “Pareja 1: Notas:Pista 2, Letras:Pista 3”.En el área principal, aparece el siguiente texto: “es cu cha her ma no la can cion de la a le gri a el can to a le gre del que es pe ra un nue vo di a”En la parte inferior izquierda hay información sobre la nota y las pistas: Nota: 8/28 Pareja: 1/1 Notas: Pista 2 Letras: Pista 3 Letras en pareja: 26 MIDI: Sí Sincronización de letras: Activado Anuncio de letras: ActivadoEn la barra inferior se muestran atajos de teclado para controlar la reproducción y navegación, así como para activar/desactivar anuncios y metrónomo.

La interfaz tiene fondo blanco, menús en la parte superior sobre una barra gris claro, una lista de pistas resaltada en azul, letras de canción fragmentadas en texto negro en el centro y detalles de la pista en texto negro en la parte inferior izquierda.

En esta captura de pantalla se visualiza:

  • Pareja de Pistas: “Pareja 1: Notas=Pista 2, Letras=Pista 3” – mostrando cómo la aplicación empareja automáticamente las pistas
  • Letras Sincronizadas: Las letras se muestran en tiempo real conforme avanza la reproducción
  • Estado Detallado: Información completa sobre la posición actual (Nota 9/28), pistas configuradas, y estado del MIDI y metrónomo
  • Interfaz en Español: La aplicación funciona completamente en español, incluyendo menús, etiquetas y mensajes de estado
  • Información de Control: Instrucciones de teclado visibles en la parte inferior para navegación fácil

🎵 MIDI Lyric Checker: Una Herramienta simple para Revisar Archivos MIDI que contengan Letras

Una aplicación completamente portable diseñada para músicos ciegos, entusiastas del karaoke.

Cuando realizo transcripciones o partituras que contienen letra, es importante poder revisar si la alineación con las notas es la correcta, sobretodo en los casos de melismas, que son varias notas usando la misma sílaba (como en el caso de Kirie, por ejemplo). Antes requería de mucho apoyo visual (un poco tedioso para todos) y mi forma de hacerlo independientemente era algo rudimentaria e incómoda con algunos reproductores de karaoke MIDI Lyric Checker es una respuesta a una frustración y trata de resolver esto de forma accesible.

pero entonces ¿Qué hace especial a esta aplicación?

Es verdad que es un reproductor midi más, y de hecho mucho más básico que otros. Sin embargo, quise que fuera un programa especializado que detecta automáticamente qué pistas contienen notas y cuáles contienen letras, permitiendo emparejarlas y revisarlas de manera accesible y pausada. Al programar esto, que me tomó bastante, por cierto, aprendí muchas cosas. Pero tal vez es suficiente charlatanería, así que vamos al grano.

Características Principales

🔍 Detección Automática

Analiza automáticamente cada pista del archivo MIDI para identificar si contiene notas musicales, letras, o ambas. Lee y muestra los nombres de las pistas directamente del archivo.

Parejas de Pistas

Permite seleccionar múltiples parejas de pistas para revisar. En algunos programas, la letra se exporta por separado de las notas. Se puede emparejar una pista de notas con una de letras, o usar la misma pista si contiene ambas. También está la opción “sin letra”, para pistas que sirvan como acompañamiento instrumental y no necesiten revisarse pero pueda que sea igual útil escucharla.

Anuncios Configurables

Los anuncios de letras se pueden activar o desactivar. Perfecto para usuarios de lectores de pantalla que quieren escuchar las letras automáticamente. De igual manera la letra se muestra, se subraya la sílaba que corresponde a la nota que suena, lo cual puede ser útil para el uso de este programa con líneas braille.

🥁 Metrónomo Sincronizado

Detecta automáticamente compases, tempo y métricas del archivo. El metrónomo se ejecuta sincrónicamente con la reproducción usando tiempo compartido entre pistas y tiempo real. Resulta que al programar esto, me di cuenta que Mido, la librería de python que puede interpretar midi, no tiene en sus funciones un método de reproducción real. por lo tanto la reproducción era esporádica, lenta, pausada y poco confiable para escuchar el archivo continuamente.

🎛️ Audio Personalizable

Se puede configurar sonidos, balance estéreo, volumen, instrumentos y canales MIDI para cada pista según las necesidades específicas..

🌐 Interfaz Bilingüe

Cambie dinámicamente entre inglés y español desde el menú de idioma. El idioma predeterminado es español.

⌨️ Navegación y Controles

Atajos de Teclado Principales:
Espacio – Reproducir/Pausa
Alt + Flechas – Navegar entre notas una a una. Las sílabas de la letra se irán subrayando en el cuadro de texto, y se irán anunciando por separado siempre y cuando estén habilitados los anuncios.
Inicio/Fin – Ir al principio/final
Re Pág/Av Pág – Saltar 8 notas hacia atrás/adelante
F4 – Alternar metrónomo
F6 – Alternar anuncio automático de letras
Ctrl+O – Abrir archivo MIDI
Ctrl+T – Configurar pistas
F5 – Actualizar archivo

🛠️ Características Técnicas

Implementación MIDI:
✓ Soporte para los 16 canales MIDI
✓ Instrumentos configurables (0-127)
✓ Selección de banco (0-127)
✓ Control de volumen por pista
✓ Salida MIDI en tiempo real

Formatos Soportados:
✓ Archivos MIDI estándar (.mid, .midi), también se puede renombrar .kar a .mid
✓ Tipo 0 y Tipo 1
✓ Múltiples codificaciones de texto para letras, aunque aún hay problemas con caracteres acentuados
✓ Eventos de extracción de letras: lyrics, text, markers, cue markers

👍 Ventajas

  • Completamente portable – no requiere instalación
  • Detección automática de notas y letras entre pistas. Traté de simular que fuera inteligente.
  • Interfaz accesible para varios lectores de pantalla: jaws, NVDA, narrador integrado de windows.
  • Se puede navegar únicamente con el teclado si se desea.
  • Carga completa en memoria RAM para no tener que reiniciar el programa o reabrir el archivo midi si se actualiza. Para eso está la acción de rrefrescar.
  • Sincronización precisa de letras. La sílaba cambia solo cuando hay cambios en la letra y no se repite para no distraer.
  • Soporte bilingüe codificado, pronto trataré de hacer algún sistema de traducciones.

⚠️ Consideraciones

  • Requiere Python y dependencias específicas, aunque no debería ser problema para el programa ya compilado.
  • Se Necesita dispositivo MIDI virtual instalado para reproducción.
  • Aún hay que trabajar en mostrar mejor los caracteres acentuados aunque es una limitante del formato midi.
  • Necesito implementar sistema de traducciones flexible y robusto

Librerías python usadas para hacer este programa

Dependencias Principales:

  • Python 3.7+
  • wxPython para interfaz utilizable con lectores de pantalla
  • mido
  • python-rtmidi (para soporte MIDI completo)
  • accessible-output2 (para anuncios de letra en lectores de pantalla)

📥 De dónde descargar esto?

La aplicación es completamente gratuita y de código abierto

⬇️ Descarga directamente el Ejecutable (v2.0) Descargar Código Fuente Ver en GitHub Documentación Completa

🔮 Desarrollo y a Futuro

Esta aplicación representa una solución simple para un nicho tal vez, muy específico (pero no menos importante) en el mundo de la elaboración de partituras. Realmente lo que más me importó al hacer este proyecto es su enfoque en la accesibilidad y la simplicidad de uso. Ya que no encontraba soluciones para lo que estaba buscando, no fue fácil pero decidí hacerla yo mismo. algunas veces incluso quise contratar a algún programador, pero tristemente fueron muchos saludos sin responder.

¿Colaboradores y usuarios bienvenidos Me encantaría conocer experiencias y sugerencias para futuras mejoras. Y ya que es de código abierto y está simplemente allá fuera, espero que sea útil para alguien más.

MIDI Lyric Checker – Haciendo partituras más accesibles, una nota a la vez.