Wie dieser Tonhöhen-Detektor funktioniert
Dein Mikrofon erfasst einen Puffer von 8192 Samples im Browser — etwa 170 ms bei 48 kHz, lang genug, um selbst bei tiefen Bassnoten mehrere Zyklen zu erfassen. Das Tool führt eine normalisierte Autokorrelation nach McLeod über dieses Fenster aus — es vergleicht die aktuelle Wellenform mit verschobenen Kopien ihrer selbst und sucht nach dem stärksten sich wiederholenden Zyklus. Diese Zykluslänge ist die Periode der Welle; der Kehrwert der Periode ist die Frequenz in Hz. Die Frequenz wird dann in die nächste Musiknote plus einer Abweichung in Cents umgerechnet (ein Halbton = 100 Cents).
Vor der Analyse bitten wir den Browser, automatische Verstärkung, Echounterdrückung und Rauschunterdrückung für den Mikrofon-Stream zu deaktivieren. Diese Filter verfälschen die Wellenform und können die Tonhöhenmessung bei leisen Stimmen und tiefen Instrumenten um Dutzende von Cents verzerren. Das Deaktivieren dieser Funktionen ist daher der wichtigste Faktor für die Genauigkeit. Ein kurzer Medianfilter über die letzten Frames fängt Ausreißer ab, ohne eine spürbare Verzögerung zu verursachen.
Dieser Ansatz verfolgt gehaltene, einstimme Klänge besser als eine einfache FFT, insbesondere bei tiefen Frequenzen, da er weniger dazu neigt, Obertöne mit dem Grundton zu verwechseln. Der Nachteil: Er kann keine Akkorde erkennen, Vibrato lässt die Cents-Anzeige schwanken und laute Hintergrundgeräusche können die Erkennung stören.
Referenz: Standardstimmung
Der Detektor startet beim Kammerton A4 = 440 Hz. Du kannst die Referenz anpassen, falls dein Instrument oder Ensemble einen anderen Standard nutzt. Jede andere Note steht in einem festen Verhältnis dazu — die zwölfte Wurzel aus zwei (≈1,05946) pro Halbton. Oktaven verdoppeln die Frequenz: A3 ist 220 Hz, A5 ist 880 Hz. Cents messen die Abweichung innerhalb eines Halbtons; Unterschiede unter ±5 Cents sind in der Regel nicht hörbar.
Die Anzeige lesen
- Große Note — der nächste Halbton, der in den letzten Frames erkannt wurde.
- Cents-Balken — die Markierung ist zentriert, wenn du richtig gestimmt bist, wandert nach links, wenn du zu tief (flat) bist, und nach rechts, wenn du zu hoch (sharp) bist. Grün = richtig gestimmt (±5 ¢), Gelb = nah dran (±20 ¢), Rot = deutlich daneben.
- Klaviertastatur — hebt die erkannte Note in ihrer Oktave zwischen C1 und B6 hervor. Noten außerhalb dieses Bereichs werden weiterhin in der Textanzeige ausgegeben.
- Zuletzt erkannt — jedes Mal, wenn du zu einer neuen gehaltenen Tonhöhe wechselst, wird diese zur Liste hinzugefügt, damit du sehen kannst, was du gerade gesungen oder gespielt hast.
Tipps für genaue Messungen
- Halte eine einzelne Note für mindestens eine halbe Sekunde — der Detektor benötigt einige übereinstimmende Frames, bevor er sich festlegt.
- Ruhige Umgebung. Ventilatoren, Verkehr und Tastaturklicken stören schneller, als man denkt.
- Halte den Ton stabil. Vibrato verschiebt die Cents-Anzeige, selbst wenn die durchschnittliche Tonhöhe korrekt ist.
- Verwende nach Möglichkeit ein externes Mikrofon. Laptop-Mikrofone fallen unter ~80 Hz oft ab, was die tiefsten Bassnoten abschneidet.
- Gehe nah ran. Eine Verdoppelung des Abstands zum Mikrofon viertelt den Pegel, den der Detektor empfängt.
Häufig gestellte Fragen
Welche Instrumente kann ich damit stimmen?
Alles, was einen einzelnen, gehaltenen Ton im Bereich von etwa 40 Hz bis 2,2 kHz erzeugt: Gitarre, Bass, Ukulele, Violine, Bratsche, Cello, Harfe, Blech- und Holzblasinstrumente sowie Gesang. Schlagzeug, Becken und volle Klavierakkorde werden nicht erkannt — die Autokorrelation benötigt eine einzelne dominante Frequenz.
Die Note springt beim Singen hin und her — liegt das an mir oder am Tool?
Meistens an dir, aber nicht so, wie du denkst. Mikrofone nehmen deine Stimme, deinen Atem und den Raum zusammen auf. Kleine Tonhöhenschwankungen, die für das Ohr unhörbar sind, zeigen sich als Ausschläge von ±20 Cents. Halte einen lauteren, stabileren Ton, dann beruhigt sich die Anzeige.
Warum stoppt die Erkennung bei sehr tiefen oder sehr hohen Tönen?
Der Detektor ist auf etwa 40 Hz bis 2,2 kHz begrenzt. Unter 40 Hz fallen die meisten Laptop-Mikrofone ab; über 2,2 kHz beginnen Obertöne zu aliasing-Effekten zu führen, wodurch die Tonhöhenschätzung unzuverlässig wird. Innerhalb dieses Bereichs deckt das Tool alles ab, vom tiefen B0 eines 5-Saiter-Bass bis zum oberen Bereich eines Soprans.
Wird etwas aufgenommen oder an einen Server gesendet?
Nein. Die gesamte Audioanalyse findet direkt in deinem Browser über die Web Audio API statt. Nichts wird hochgeladen, gespeichert oder übertragen. Sobald du den Detektor stoppst oder den Tab schließt, endet der Stream.