Calculateur BPM en millisecondes
À 120 BPM, une noire dure 500 ms et une croche pointée 375 ms : saisissez votre tempo et obtenez chaque durée de note et chaque temps de délai, de la ronde à la triple croche, pointées et triolets compris. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- BPM
- 120
- Temps en ms
- 500 ms
- Ms par temps
- 500
Un calculateur de BPM en millisecondes transforme un tempo en battements par minute en durées exactes de valeurs de notes et en temps de délai dont vous avez besoin dans une DAW, un pédalier ou une partition. Saisissez le BPM du projet ; l'outil renvoie la noire en millisecondes, un tableau complet des durées de la ronde à la triple croche, valeurs pointées et triolets inclus, ainsi qu'une correspondance des temps de délai avec des étiquettes comme 1/4, 1/8 pointée et 1/8 triolet, attendues par les multi-effets et les plugins de delay. Les producteurs qui synchronisent leurs échos sur la grille, les professeurs qui expliquent les valeurs de notes et les développeurs qui écrivent des tests de métronome ou de séquenceur pas à pas ont tous besoin du même calcul déterministe 60000 divisé par le BPM, sans ouvrir de tableur.
Comment le BPM devient des millisecondes pour les notes et les délais
Les battements par minute mesurent combien de pulsations de noire se produisent en soixante secondes. La relation inverse est simple et universelle dans la pratique de production occidentale : les millisecondes par temps valent soixante mille divisé par le tempo, donc cent vingt BPM donnent cinq cents millisecondes par noire, cent BPM donnent six cents millisecondes et soixante BPM donnent mille millisecondes. Une fois cette longueur de pulsation obtenue, chaque autre valeur de note est un multiple fixe du temps.
Une ronde couvre quatre temps, une blanche deux, une croche un demi-temps, une double croche un quart de temps et une triple croche un huitième de temps. Les valeurs pointées allongent une note de la moitié de sa durée non pointée, donc une noire pointée vaut un temps et demi et une croche pointée trois quarts de temps.
Les triolets compriment trois notes égales dans l'espace de deux notes de la valeur mère, c'est pourquoi un triolet de noires dure deux tiers de temps et un triolet de croches un tiers. Les unités de delay et de multi-taps annoncent les mêmes durées sous des étiquettes fractionnaires comme un quart, un huitième pointé ou un huitième en triolet ; l'arithmétique est identique, seul le dictionnaire des clés change.
Rejeter un BPM négatif ou nul n'est pas du puritanisme : une division par zéro ou une pulsation négative produirait des temps de délai non physiques qui casseraient les scripts d'automatisation et les horloges MIDI matérielles.
Conseils pratiques, limites et recherches associées
Préférez envoyer des nombres plutôt que des chaînes préformatées lorsque vous contrôlez le client ; les nombres en chaîne ne sont acceptés que s'ils respectent un motif numérique fini strict. Les points de repère de studio courants se mémorisent facilement : cent vingt BPM signifient cinq cents millisecondes sur la noire, deux cent cinquante sur la croche et cent vingt-cinq sur la double croche ; soixante-douze BPM conviennent aux vérifications de délai pour ballades ; cent quarante BPM sont une base fréquente en musique électronique.
Cette page cible les personnes qui cherchent un calculateur de BPM en millisecondes, un convertisseur de durées de notes selon le tempo ou un temps de délai en ms à partir des battements par minute ; ce n'est ni un moteur de swing ou de shuffle, ni un convertisseur de fréquence d'échantillonnage ou de ticks MIDI par noire, ni un générateur audio de métronome en temps réel.
Préférez cette capacité lorsque vous connaissez déjà le tempo du projet et n'avez besoin que des tableaux en millisecondes ; si votre source est un enregistrement en temps libre sans grille, détectez ou tapotez d'abord le BPM.
Cas d’usage
Synchroniser delays et réverbérations sur la grille du projet
Les producteurs saisissent le BPM de la session et copient les millisecondes 1/4, 1/8_dotted ou 1/8_triplet dans les champs de délai des plugins pour que les échos tombent sur le temps.
Fiches de théorie musicale et exercices de valeurs de notes
Les professeurs génèrent des tableaux déterministes de la ronde à la triple croche à un tempo choisi pour que les élèves comparent leurs calculs à des réponses fixes en ms.
Questions fréquentes
Comment convertir des BPM en millisecondes ?
Les millisecondes par temps de noire valent 60000 divisé par le BPM. Les autres valeurs de notes multiplient cette durée de temps par leur longueur relative en temps (par exemple une croche vaut 0.5 temps).
Que se passe-t-il si le BPM est nul ou négatif ?
Les durées de notes et de délais sont indéfinies pour les tempos non positifs.
Un temps est-il toujours une noire ?
Oui pour ce calculateur. Il suit la convention de production standard selon laquelle le BPM compte les pulsations de noire, ce qui correspond à la plupart des cartes de tempo de DAW en 4/4.
Le calculateur BPM en millisecondes est-il gratuit ?
L'outil du navigateur est gratuit et s'exécute localement.
Quel temps de délai pour une croche pointée à 120 BPM ?
Une croche pointée dure 375 ms à 120 BPM, car elle vaut les trois quarts d'un temps de 500 ms. Réglez votre délai sur cette valeur et les échos tomberont entre les temps avec l'effet pointé classique.
Outils associés
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/hobby/bpm-to-ms \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"bpm":120}'const res = await fetch("https://api.kit.forhosting.com/hobby/bpm-to-ms", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"bpm": 120
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/hobby/bpm-to-ms",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"bpm": 120
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/hobby/bpm-to-ms", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"bpm":120}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"bpm":120}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/hobby/bpm-to-ms", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"bpm": 120
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "hobby.bpm_to_ms",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Limites
max_abs | 1000000000000 |
min_bpm | 1e-12 |
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
Notes techniques
Les tempos négatifs ou nuls sont rejetés avec une erreur invalid_input claire afin que vos scripts n'inventent jamais de délais négatifs ou infinis. Le chemin est purement mathématique — sans réseau, sans graine aléatoire, sans dépendance à l'horloge — donc l'outil gratuit du navigateur et l'API prépayée renvoient le même JSON après un arrondi décimal fixe à chaque appel.
Comment le BPM devient des millisecondes pour les notes et les délais
Cette capacité traite donc le tempo comme un nombre fini strictement positif, arrondit chaque durée publiée à douze décimales pour un JSON stable et fournit un tableau d'étapes ordonné afin que étudiants et tests unitaires puissent recalculer à la main 60000 sur le BPM et les multiplicateurs de temps.
Comment appeler l'API et ce qu'elle renvoie
Le tableau steps part du tempo brut puis passe par la durée du temps et des lignes représentatives de notes et de délais afin que vous puissiez vérifier les valeurs intermédiaires dans vos tests. Envoyez un corps JSON avec un seul nombre fini requis : bpm, également accepté sous les alias tempo, beats_per_minute et tempo_bpm. La valeur absolue doit rester sous la limite publiée de mille milliards et être strictement supérieure à zéro ; les valeurs nulles ou négatives, les champs manquants, les chaînes non numériques et les nombres non finis renvoient invalid_input et ne sont jamais facturés. En cas de succès, la réponse renvoie le bpm arrondi, fixe beat_ms et ms_per_beat à la même durée de noire en millisecondes, unit à la chaîne ms, formula à la relation fermée duration_ms égale 60000 sur bpm multiplié par note_beats avec un temps égal à une noire, et message à un bref résumé en anglais. L'objet note_durations_ms liste whole, half, quarter, eighth, sixteenth, thirty_second, dotted_half, dotted_quarter, dotted_eighth, dotted_sixteenth, triplet_quarter, triplet_eighth et triplet_sixteenth. L'objet delay_times_ms liste la même physique sous des étiquettes de production dont 1/1, 1/2, 1/4, 1/8, 1/16, 1/32, ainsi que les variantes pointées et en triolet comme 1/4_dotted et 1/8_triplet. La tarification est un forfait de $0.002 par requête réussie avec l'unité item et un prix marginal nul.
Conseils pratiques, limites et recherches associées
Gardez le BPM dans la plage absolue publiée afin que la durée réciproque du temps reste finie en double précision IEEE sur le Worker et dans le navigateur. Pour enseigner, associez un cas nominal positif à un tempo nul ou négatif délibéré afin de démontrer le rejet invalid_input, et confirmez que les clés pointées et en triolet restent cohérentes avec la valeur mère multipliée respectivement par un et demi ou par deux tiers. Les tâches échouées qui renvoient invalid_input ne consomment pas de solde prépayé, ce qui garde les scripts exploratoires bon marché quand les apprenants testent volontairement les cas limites. Les vérifications aller-retour sont directes : recalculez 60000 divisé par bpm et confirmez que cela égale beat_ms à douze décimales près, puis multipliez par les nombres de temps documentés pour les lignes ronde, noire pointée et croche en triolet.
Cas d'intégration
Tests unitaires pour séquenceurs et métronomes
Les développeurs fournissent des valeurs de BPM connues et vérifient beat_ms et note_durations_ms contre des fixtures golden sans minuteurs ni matériel audio.
Questions techniques
Quelle différence entre note_durations_ms et delay_times_ms ?
Ils utilisent les mêmes valeurs en millisecondes. note_durations_ms emploie des noms musicaux (quarter, dotted_eighth) ; delay_times_ms emploie des étiquettes de style DAW (1/4, 1/8_dotted) courantes sur les plugins de delay.