Calculadora de ticks MIDI por valor de nota
A 480 PPQ una negra ocupa exactamente 480 ticks MIDI: elija la resolución y un valor de nota, simple, con puntillo o de tresillo, y obtenga su duración en ticks y una tabla con todas las figuras habituales. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Ppq
- 480
- Valor de la nota
- Quarter
- Tiempos de la nota
- 1 ticks
- Ticks
- 480
- Ticks enteros
- 480
Los secuenciadores MIDI guardan el tiempo en ticks enteros con una resolución fija de pulsos por negra (PPQ o PPQN), no en milisegundos de reloj. Cuando usted coloca una negra, una corchea, una negra con puntillo o un tresillo en el piano roll, el editor multiplica la duración en tiempos de esa nota por el PPQ de la secuencia para que cada evento caiga en una rejilla que el reproductor y el formato de archivo comparten. Esta calculadora de ticks MIDI por valor de nota acepta un PPQ positivo y un nombre de valor de nota, devuelve el tramo exacto de ticks, el entero más cercano para secuenciadores que solo guardan ticks enteros, y una tabla de referencia de duraciones habituales a la misma resolución. Úsela al construir archivos MIDI a mano, al escribir herramientas de cuantización, al revisar el export de un DAW o al enseñar cómo los valores musicales se proyectan sobre la base de tiempo MIDI.
Cómo el PPQ y los valores de nota se convierten en ticks MIDI
Una secuencia MIDI declara una división de tiempo en pulsos por negra: cuántos ticks caben en un tiempo de negra. Los archivos General MIDI clásicos suelen usar 96 o 192; muchos DAW modernos eligen 480 o 960 por defecto para que tresillos y fusas caigan en enteros limpios. Fijado el PPQ, cada valor de nota es un múltiplo de esa unidad de negra.
Una redonda son cuatro negras, así que su longitud en ticks es cuatro veces el PPQ. Una blanca son dos veces el PPQ, una negra iguala el PPQ, una corchea es la mitad del PPQ, una semicorchea es un cuarto del PPQ y una fusa es un octavo del PPQ. Los valores con puntillo suman la mitad de la duración sin puntillo: una negra con puntillo son uno y medio tiempos de negra, o sea uno y medio veces el PPQ.
Los tresillos reparten dos tiempos del valor padre en tres partes iguales; un tresillo de negras son dos tercios de una negra (dos tercios del PPQ), un tresillo de corcheas es un tercio del PPQ y un tresillo de semicorcheas es un sexto del PPQ. La calculadora codifica esa tabla una sola vez, multiplica por su PPQ y redondea a doce decimales para que los resultados flotantes se mantengan estables entre runtimes, informando además el entero más cercano cuando necesite ticks enteros para los delta-times del Standard MIDI File.
Qué puede hacer con ella
Herramientas de archivo MIDI y piano roll
Convierta valores de notación en tramos de ticks al PPQ del proyecto antes de escribir delta-times SMF o colocar eventos en un piano roll propio.
Cuantización y cambios de resolución
Reconstruya tablas de rejilla al pasar de 480 a 960 PPQ para que corcheas, negras con puntillo y tresillos sigan siendo musicalmente correctos.
Enseñanza de bases de tiempo MIDI
Muestre a los alumnos que ticks = PPQ × tiempos de nota, independiente del BPM, con tablas en vivo de valores rectos, con puntillo y tresillos.
Preguntas frecuentes
¿Qué es PPQ o PPQN?
Pulsos (ticks) por negra: la resolución de la secuencia. Una negra dura siempre exactamente esos ticks; los demás valores se escalan desde ahí. Ajustes habituales: 96, 480 y 960.
¿Funcionan las notas con puntillo y los tresillos?
Sí. Los valores con puntillo usan 1.5× la duración sin puntillo. Tresillos de negra, corchea y semicorchea usan 2/3, 1/3 y 1/6 de una negra en tiempos.
¿Cuántos ticks tiene una negra a 480 PPQ?
Exactamente 480 ticks, porque PPQ cuenta los pulsos que caben en una negra. Los demás valores son múltiplos de ella: una redonda vale cuatro veces PPQ y una corchea, la mitad.
¿El tempo cambia la cantidad de ticks MIDI?
No. Los ticks dependen solo de la resolución y del valor de nota, no del BPM. El tempo decide cuánto dura cada tick en el tiempo, pero una corchea o un tresillo conservan los mismos ticks.
¿Qué resolución PPQ conviene para los tresillos?
Una resolución alta, como 480 o 960, hace que los tresillos y las fusas caigan en ticks enteros. Los archivos General MIDI antiguos suelen usar 96 o 192, y el resultado indica si un valor necesita redondeo.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/hobby/music-ticks-per-note \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"ppq":480,"note_value":"quarter"}'const res = await fetch("https://api.kit.forhosting.com/hobby/music-ticks-per-note", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"ppq": 480,
"note_value": "quarter"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/hobby/music-ticks-per-note",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"ppq": 480,
"note_value": "quarter"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/hobby/music-ticks-per-note", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"ppq":480,"note_value":"quarter"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"ppq":480,"note_value":"quarter"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/hobby/music-ticks-per-note", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"ppq": 480,
"note_value": "quarter"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "hobby.music_ticks_per_note",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
Contrato de entrada, campos de respuesta y validación
El campo ppq es la resolución de la secuencia: un número finito y positivo de pulsos por negra. Valores legales habituales son 96, 192, 240, 480 y 960; cualquier número finito positivo dentro de los límites absolutos también se admite, para resoluciones experimentales. Las cadenas formula y message resumen la regla para pantalla; steps enumera la aritmética en orden para interfaces de depuración. Envíe un cuerpo JSON con dos campos obligatorios. Se aceptan alias como ppqn, ticks_per_quarter, resolution, pulses_per_quarter y tpqn, todos mapeados al mismo valor. El campo note_value es un enum cerrado de nombres musicales: whole, half, quarter, eighth, sixteenth, thirty_second, dotted_half, dotted_quarter, dotted_eighth, dotted_sixteenth, triplet_quarter, triplet_eighth y triplet_sixteenth. Alias como 1/4, quaver y 1/8_triplet se normalizan a las mismas claves. Un ppq ausente, no positivo o no finito falla con invalid_input y no se factura. Un note_value desconocido falla igual. En éxito el cuerpo repite ppq y el note_value canónico, informa note_beats relativos a una negra, ticks como producto preciso, ticks_integer como Math.round de ese producto, is_exact_integer cuando el producto está a una epsilon ínfima de un entero, y note_ticks como diccionario completo de cada valor admitido a ese PPQ. Ejemplo: ppq 480 y note_value quarter da 480 ticks; el mismo PPQ con eighth da 240; dotted_quarter da 720; triplet_eighth da exactamente 160.
Dónde una calculadora de ticks por nota aporta valor real
Los autores de herramientas MIDI necesitan una única fuente de verdad al convertir notación en delta-times antes de escribir chunks de pista. Los usuarios avanzados de DAW que cambian la resolución del proyecto deben re-cuantizar regiones existentes; saber que una corchea a 480 PPQ son 240 ticks y a 960 PPQ son 480 ticks evita ediciones con factor erróneo que deslizan todas las notas. La validación fallida no consume saldo. Quienes enseñan audio digital explican que el tempo cambia la duración en reloj mientras el PPQ solo cambia la rejilla de ticks, y este endpoint hace concreta esa distinción sin abrir un secuenciador completo. Motores de juego y de música interactiva que programan eventos tipo MIDI en un reloj de pulsos fijo pueden llamar a la API una vez por valor de nota y cachear la tabla. Como la implementación es parse puro de nivel A, cada llamada exitosa cuesta el precio base publicado $0.002 sin tokens de modelo y sin red saliente.
Preguntas técnicas
¿Cómo convierto un valor de nota en ticks MIDI?
Envíe un ppq positivo (pulsos por negra) y un note_value como quarter, eighth o triplet_eighth. La API devuelve ticks = ppq × note_beats, donde un tiempo es una negra.
¿Por qué existen ticks y ticks_integer?
ticks es el producto preciso (estable a doce decimales). ticks_integer es el tick entero más cercano para secuenciadores y delta-times SMF que solo guardan enteros. is_exact_integer es verdadero cuando no hizo falta redondear.
¿Cuánto cuesta la calculadora de ticks MIDI?
La herramienta del navegador es gratuita. Las peticiones API usan saldo prepago de KIT a $0.002 por llamada exitosa; la entrada inválida no se factura.