Polyrhythmus-Rechner für das gemeinsame Pulsraster
Ein Polyrhythmus lässt sich wesentlich leichter lesen, programmieren und proben, wenn beide Stimmen auf einem exakten Pulsraster liegen.
Im Browser ausführen – kostenlos
Geben Sie die Anzahl gleichmäßig verteilter Anschläge beider Rhythmen ein, beispielsweise drei und vier. Der Rechner bestimmt daraus die kleinste gemeinsame Unterteilung. Außerdem führt er sämtliche Anschlagspositionen auf, kennzeichnet Gleichzeitigkeit und zeigt, ob sich die Rhythmen innerhalb des Zyklus oder nur an dessen Grenzen treffen.
Führen Sie zwei rhythmische Zählungen in einem Zyklus zusammen
Verstehen Sie beide Zahlen als gleichmäßig über denselben musikalischen Zeitraum verteilte Anschläge. Bei drei gegen vier teilt eine Stimme den Zyklus in drei, die andere in vier gleiche Abschnitte. Da ihre Zwischenpunkte nicht zusammenfallen, erzeugt der Rechner ein feineres Raster, das beide Stimmen ohne Rundung abbildet. Das kleinstmögliche Raster entspricht dem kleinsten gemeinsamen Vielfachen beider Anzahlen. Drei gegen vier benötigt daher zwölf Unterteilungen: Der Dreier-Rhythmus erklingt alle vier Rasterpulse, der Vierer-Rhythmus alle drei. Die Positionslisten beginnen bei null und enthalten auch die Schlussgrenze, sodass der gesamte Zyklus sichtbar ist. Diese Konvention eignet sich für Notationsentwürfe, Sequenzer, Drumcomputer und Probendiagramme. Die letzte Position ist zugleich der Anfang der nächsten Wiederholung und kein zusätzlicher Anschlag, der doppelt gespielt werden soll. Lesen Sie das Verhältnis als Beziehung innerhalb einer gemeinsamen Dauer, nicht als zwei unabhängige Tempi oder unverbundene Takte.
Deuten Sie Treffpunkte und innere Übereinstimmungen
Der größte gemeinsame Teiler zeigt, wie viele gleich große Bereiche des Zyklus gemeinsame Grenzen besitzen. Sind beide Anzahlen teilerfremd, wie drei und vier, treffen sie sich nur am Anfang und Ende des gemeinsamen Zyklus. Besitzen sie einen gemeinsamen Faktor, entstehen zusätzliche Treffpunkte im Inneren. Bei vier gegen sechs beträgt der größte gemeinsame Teiler zwei; beide Muster erklingen deshalb auch in der Mitte gleichzeitig. Der Rechner nennt die Ausrichtungspositionen in Pulsen des gemeinsamen Rasters und zählt innere Übereinstimmungen getrennt, ohne Anfangs- und Schlussgrenze. Das Ausrichtungsintervall ist der konstante Abstand zwischen gleichzeitigen Anschlägen. Es hilft beim Setzen von Akzenten, Dirigierzeichen, Phrasenmarken oder Synchronisationsereignissen. Zugleich verhindert es eine häufige Verwechslung: Das kleinste gemeinsame Vielfache bestimmt die Größe des Notationsrasters, während der größte gemeinsame Teiler wiederholte Treffpunkte innerhalb des Zyklus bestimmt. Beide Werte sind wichtig, beantworten jedoch unterschiedliche musikalische Fragen. Anhand der ausgegebenen Positionen können Sie das Ergebnis unmittelbar prüfen.
Nutzen Sie das Raster für Notation, Probe und Produktion
Stellen Sie sich die ausgegebenen Unterteilungen als gleichmäßig verteilte Striche innerhalb eines gemeinsamen Schlages, Taktes oder einer Phrase vor. Setzen Sie die Anschläge der ersten Stimme alle rhythm_a_step Striche und die der zweiten alle rhythm_b_step Striche. Die Zeichnung lässt sich skalieren, ohne diese ganzzahligen Beziehungen zu verändern. Zählen oder klopfen Sie beim Üben zunächst langsam das feine Raster und betonen Sie die Positionen des jeweiligen Rhythmus, bis beide Ebenen unabhängig werden. In einer digitalen Audio-Workstation dienen die Positionen als Schrittindizes; beachten Sie, dass die Schlussgrenze bereits zur nächsten Schleifenrunde gehört. Für MIDI oder Programmcode multiplizieren Sie jede Position mit einer gewählten Schrittdauer. Da alle Positionen ganzzahlig sind, entsteht keine zeitliche Drift durch Bruchrundung. Die Berechnung beschreibt ideale, gleichmäßig verteilte Kreuzrhythmen. Swing, ungleichmäßige Teilungen, Tempo, Metrum, Notenschreibweise und expressives Mikrotiming werden nicht abgeleitet. Diese Punkte bleiben musikalische Entscheidungen. Eine API-Berechnung kostet $0.002; gleiche Eingaben ergeben stets dasselbe Raster.
Anwendungsfälle
Drei gegen vier notieren
Ermitteln Sie das gemeinsame Zwölfer-Raster und setzen Sie beide Stimmen auf exakte ganzzahlige Positionen.
Eine Kreuzrhythmus-Schleife programmieren
Wandeln Sie zwei Anschlagszahlen in Sequenzer-Schritte um, ohne Rundungsfehler anzusammeln.
Probenakzente planen
Bestimmen Sie gleichzeitige Anschläge und nutzen Sie diese als sichere Orientierung für unabhängige Ebenen.
Häufige Fragen
Was bedeutet das gemeinsame Pulsraster?
Es ist die kleinste Zahl gleich großer Unterteilungen, die alle Anschläge beider Rhythmen auf ganzzahlige Positionen setzt.
Wann treffen drei gegen vier zusammen?
Sie treffen sich am Anfang und Ende des gemeinsamen Zyklus mit zwölf Unterteilungen, jedoch nicht dazwischen.
Warum steht die Schlussposition in beiden Listen?
Sie bezeichnet die Grenze, an der beide Muster erneut zusammenfallen. In einer Schleife ist sie zugleich die null des nächsten Zyklus.
Berechnet das Werkzeug Tempo oder Notenlänge?
Nein. Es bestimmt exakte proportionale Positionen im gemeinsamen Zyklus; Dauer und Notation wählen Sie selbst.
Können sich Rhythmen innerhalb des Zyklus treffen?
Ja. Innere Treffpunkte entstehen, wenn beide Anzahlen einen Teiler größer als eins besitzen, etwa vier und sechs.
Was kostet eine Berechnung über die API?
Jede Berechnung über die API kostet $0.002.
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/hobby/music-polyrhythm-alignment \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"rhythm_a":3,"rhythm_b":4}'const res = await fetch("https://api.kit.forhosting.com/hobby/music-polyrhythm-alignment", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"rhythm_a": 3,
"rhythm_b": 4
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/hobby/music-polyrhythm-alignment",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"rhythm_a": 3,
"rhythm_b": 4
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/hobby/music-polyrhythm-alignment", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"rhythm_a":3,"rhythm_b":4}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"rhythm_a":3,"rhythm_b":4}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/hobby/music-polyrhythm-alignment", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"rhythm_a": 3,
"rhythm_b": 4
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "hobby.music_polyrhythm_alignment",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |