Pregunta

Quiero saber cómo convertir las garrapatas MIDI en segundos de reproducción reales.

Por ejemplo, si el MIDI PPQ (pulsos por nota del cuarto) es 1120, ¿cómo lo convertiría en segundos de reproducción del mundo real?

¿Fue útil?

Solución

La fórmula es 60000 / (BPM * PPQ) (milisegundos).

Donde BPM es el tempo de la pista (ritmos por minuto).

(es decir, una pista de 120 bpm tendría un momento midi de (60000 / (120 * 192)) o 2.604 ms para 1 tick.

Si no conoce el BPM, primero tendrá que determinarlo. Los tiempos MIDI dependen completamente del tempo de la pista.

Otros consejos

Necesita dos piezas de información:

  • PPQ (pulsos por nota del cuarto), que se define en el encabezado de un archivo MIDI, una vez.
  • Tempo (en microsegundos por nota del cuarto), que se define por Meta eventos de "establecer tempo" y puede cambiar durante la pieza musical.

Las garrapatas se pueden convertir en segundos de reproducción de la siguiente manera:

ticks_per_quarter = <PPQ from the header>
µs_per_quarter = <Tempo in latest Set Tempo event>
µs_per_tick = µs_per_quarter / ticks_per_quarter
seconds_per_tick = µs_per_tick / 1.000.000
seconds = ticks * seconds_per_tick

Tenga en cuenta que PPQ también se llama "división" o "marca por trimestre" en el documento vinculado arriba.

Tenga en cuenta que el tempo se representa comúnmente en BPM (una frecuencia) pero MIDI crudo lo representa en µs por cuarto (un período).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top