Zum Inhalt
Anmelden

/methodology

Wie AudioLab Dinge misst.

Jede Zahl, die in den Labs erscheint, hat eine definierte Herkunft. Diese Seite dokumentiert die Algorithmen, zitiert die Standards und verlinkt auf die Quelle. Wenn eine Demo einen Wert behauptet, solltest du ihn aus den Grundprinzipien heraus reproduzieren können, mit dem, was auf dieser Seite steht.

01 · Loudness-Messung

Integrated, Short-Term und Momentary LUFS

Die Loudness-Anzeigen von MixLab setzen ITU-R BS.1770-4 wortgetreu um, die Empfehlung, die den Algorithmus hinter LUFS definiert, das Maß, das jede große Streaming-Plattform für die Wiedergabe-Normalisierung verwendet. Der Standard schreibt einen zweistufigen Filter, einen Energiesummations-Durchlauf und ein Gate mit relativem Schwellwert vor.

Die K-Weighting-Filterkette

Das Signal wird mit zwei Biquad-Stufen vorgefiltert, die zusammen den Frequenzgang der menschlichen Loudness-Wahrnehmung modellieren:

  • Ein High-Shelf bei ~1681 Hz mit +4 dB Verstärkung, der die Resonanz des Außenohrs modelliert.
  • Ein High-Pass bei ~38 Hz (der „RLB“-Filter, BS.1770 revised low-frequency B-weighting), der Sub-Bass-Energie abschwächt, die nicht zur wahrgenommenen Loudness beiträgt.

Die Biquad-Koeffizienten sind für 48 kHz normiert; für jede andere Abtastrate berechnen wir die äquivalenten Koeffizienten über die bilineare Transformation des analogen Prototyps, keine naive Wiederverwendung der Koeffizienten. Der Vorfilter von AudioLab stimmt mit der Referenzimplementierung der EBU bis auf 0,05 LU auf dem EBU-R128-Testset überein.

Von gefilterter Energie zu LUFS

Nach dem K-Weighting wird das Signal quadriert und über ein gleitendes 400-ms-Fenster mit 75 % Überlappung gemittelt. Kanäle werden mit Kanalgewichten summiert: 1,0 für L/R/C, 1,41 für Surrounds. AudioLab misst Stereomaterial, die Kanalsumme ist also schlicht der L²-+-R²-Mittelwert der Quadrate.

Die momentane Loudness in LUFS ergibt sich dann zu:

L = -0.691 + 10·log₁₀( Σ Gᵢ · meanSquareᵢ )

where Gᵢ is the channel weight and meanSquareᵢ is the time-averaged
squared sample value after K-weighting on channel i.

Drei Zeitskalen, drei Zahlen

  • Momentary (M): 400 ms ungegated. Der schnelle Wert, dient dazu, transiente Spitzen zu erfassen.
  • Short-Term (S): 3 s ungegated. Die Grundlage für die LRA-Berechnung nach EBU 3342.
  • Integrated (I): Das gesamte Programm, mit zweistufigem Gating: ein absolutes Gate bei –70 LUFS, dann ein relatives Gate bei –10 LU unterhalb des ungegateten Mittelwerts. Das Gating entfernt Stille und sehr leise Passagen, sodass die Zahl widerspiegelt, „was du tatsächlich gehört hast“, und nicht den arithmetischen Mittelwert einschließlich Stille.

LRA: Loudness Range

EBU Tech 3342. Wir sortieren die Short-Term-LUFS-Werte, nehmen das 10. und das 95. Perzentil nach Anwendung eines relativen Gates (–20 LU unterhalb des ungegateten Short-Term-Mittelwerts) und geben ihre Differenz in LU an. Das Ergebnis drückt aus, wie stark die Loudness über das Programm hinweg „atmet“.

Referenz

ITU-R BS.1770-4 (10/2015), Algorithms to measure audio programme loudness and true-peak audio level; EBU Tech 3341 (Loudness-Metering), 3342 (LRA), 3343 (Compliance-Prüfung).

02 · True Peak

Inter-Sample-Peaks per 4×-Oversampling

Der maximale Abtastwert einer digitalen Aufnahme ist nicht dasselbe wie der Maximalwert der zugrunde liegenden kontinuierlichen Wellenform. Zwischen zwei Samples, die beide bequem unter 0 dBFS liegen, kann das rekonstruierte Analogsignal kurzzeitig 0 dB überschreiten, ein sogenannter Inter-Sample-Peak. Limiter, die nur auf die Abtastwerte schauen, übersehen diese. Die Referenzdecoder der Streaming-Plattformen nicht.

BS.1770-4 Annex 2 schreibt 4×-Oversampling über einen FIR-Interpolator vor, gefolgt von der Spitzenwerterkennung am hochgesampelten Signal. AudioLab verwendet einen 4-Punkt-Kubik-Interpolator, der zwischen jedes Paar von Originalsamples drei Zwischenwerte einfügt. Der maximale Absolutwert über den hochgesampelten Puffer wird als True Peak ausgegeben.

Kubische Interpolation genügt für den 4×-Faktor, den BS.1770 vorgibt (die Referenz des Standards verwendet einen 12-Tap-FIR; wir liegen bei Standard-Testsignalen innerhalb von 0,1 dBTP). Für Mastering-taugliche Analyse ist ein Kernel höherer Ordnung vorzuziehen; die Anzeige von AudioLab ist für diagnostische Loudness-Arbeit gedacht, nicht als Ersatz für ein kalibriertes Laborinstrument.

03 · Stereobreite + Phase

Pearson-Korrelation, Mid-/Side-Energie, Lissajous

Die Stereokorrelation in MixLab ist der Pearson-Korrelationskoeffizient zwischen linkem und rechtem Kanal, samplewise berechnet über das gesamte Programm (offline) oder über ein gleitendes 1024-Sample-Fenster (während der Wiedergabe). Die Werte reichen von +1 (perfekt mono) über 0 (dekorreliert) bis -1 (perfekt invertiert, nicht mono-kompatibel, löscht sich bei Mono-Summierung aus).

Das Phasenskop ist eine Lissajous-Figur: ein 2D-Plot mit L auf der einen und R auf der anderen Achse, gezeichnet aus einem gleitenden Fenster der jüngsten Samples. Eine senkrechte Linie bedeutet Mono-Inhalt; ein Kreis bedeutet unkorrelierte Stereofonie; eine waagerechte Linie bedeutet polaritätsinvertiertes Material, das bei Mono-Wiedergabe zu Stille kollabiert. Die Anzeige nähert nicht an, sie zeichnet die tatsächlichen Samplepaare.

Mid- und Side-Energie werden aus der üblichen Summe und Differenz abgeleitet: M = (L + R) / 2, S = (L – R) / 2. Wir geben den dBFS-RMS von beiden über 100-ms-Fenster an; das Verhältnis M/S in dB ist eine nützliche Ein-Zahl-Zusammenfassung der Balance zwischen Mitte und Seiten.

04 · Spektrum- und Bandmeter

FFT, Hann-Fenster und die siebenbandige Klangkarte

Die Echtzeit-Spektrumansicht nutzt die in den Browser integrierte AnalyserNode, die intern eine FFT mit einem Blackman-Fenster implementiert. Für die Offline-Analyse verwenden wir ein Hann-Fenster und eine 4096-Punkt-FFT mit 50 % Überlappung. Die Fensterwahl verschlechtert den Dynamikumfang gegenüber Blackman leicht, bewahrt aber eine bessere Main-Lobe-Auflösung, nützlich für die visuelle Lesbarkeit in der Analyser-Anzeige.

Der Siebenband-Meter fasst FFT-Bins zu perzeptuell verteilten Bändern zusammen. Die Wahl folgt gängigen Konventionen von Mastering-Tools:

Sub          20  Hz –   60 Hz
Bass         60  Hz –  250 Hz
Low-mid     250  Hz –  500 Hz
Mid         500  Hz –   2 kHz
High-mid      2 kHz –   4 kHz
Presence      4 kHz –   8 kHz
Air           8 kHz –  20 kHz

Jedes Band gibt RMS-Energie in dBFS aus, summiert über alle Bins innerhalb der Frequenzgrenzen des Bandes. Der Bin-Abstand bei 48 kHz / 4096 FFT beträgt 11,7 Hz, fein für alles oberhalb des Sub-Bass; das unterste Band stützt sich für die Sub-Bin-Präzision auf die bilineare Gewichtung der AnalyserNode.

05 · Voice-Quality-Scoring

Sprachverständlichkeit, Zischlaute, Rauschteppich

VoiceLab QA gibt einen zusammengesetzten Score über vier Dimensionen aus. Der Score ist meinungsstark, konzipiert für Podcast- und Voice-over-Produzenten, und ausdrücklich kein klinisches Maß.

  • Sprachpräsenz (VAD): ein Klassifikator auf Frame-Ebene aus Energie + spektraler Flachheit mit einem 20-ms-Hop. Ein Frame gilt als „Sprache“, wenn seine Energie mindestens 12 dB über dem geschätzten Rauschteppich liegt und seine spektrale Flachheit unter 0,25 liegt. Hysterese (3 Frames Attack / 10 Frames Release) verhindert Flackern bei Pausen nach Verschlusslauten.
  • Zischlautbalance: das Verhältnis der Bandenergie von 5–9 kHz zur gesamten Sprachband-Energie (200 Hz – 8 kHz). Angegeben in dB relativ zu einem typischen Broadcast-Stimmprofil (–8 dB). Positive Werte deuten auf harte Zischlaute hin; negative Werte deuten auf dumpfes oder verwaschenes Material hin.
  • Rauschteppich: der geschätzte dBFS-RMS in Sprechpausen, berechnet per Minimum-Statistics-Tracking (Martin 2001) über ein 1,5-s-Fenster. Der Wert entspricht dem, was in einer leisen Passage bei üblichen Hörpegeln hörbar wäre.
  • Plosiv-Erkennung: kurzzeitige tieffrequente Energiestöße im Bereich von 20–80 Hz während Sprachsegmenten. Erkannt über das Energieverhältnis zu den umgebenden 100 ms des Sprachbands; markiert, wenn die Anhebung mehr als 6 dB beträgt.

Der zusammengesetzte Score ist die gleichgewichtete Summe der vier oben genannten Dimensionen, jede steuert bis zu 25 Punkte bei, begrenzt auf einen Gesamtwert von 0–100. Der Score ist ein Triage-Signal, kein redaktionelles Urteil.

06 · Signalindexierung

Regionserkennung und Inhaltsklassifikation

SignalLab indexiert eine beliebige Audiodatei in beschriftete Regionen: Musik, Sprache, Stille, gemischt, rauschdominiert. Der Klassifikator ist eine zweistufige Pipeline.

  1. Frame-Merkmale: für jeden 50-ms-Frame berechnen wir den spektralen Schwerpunkt, die spektrale Flachheit, die Nulldurchgangsrate, den RMS und eine 6-Band-Mel-Zusammenfassung. Die Merkmale werden auf den laufenden 10-s-Kontext normiert, der Klassifikator arbeitet relativ, nicht absolut.
  2. Regionszusammenführung: Frame-Labels werden mit einem 1-s-Mehrheitsfilter geglättet und dann zu zusammenhängenden Regionen verschmolzen. Regionen, die kürzer als 750 ms sind, werden von ihren Nachbarn aufgenommen.

Die Labels sind heuristisch. Das Tag-Schema ist veröffentlicht unter /docs/signallab/tag-schema. Sie sind nützlich für Navigation und Massenfilterung. Für die Produktionsindexierung im großen Maßstab wäre ein gelerntes Modell mit einem beschrifteten Trainingsdatensatz vorzuziehen, nicht die In-Browser-Heuristik.

07 · Zitierte Standards

Was wir zitieren

ITU-R BS.1770-4

Algorithmen zur Loudness- und True-Peak-Messung (10/2015)

EBU R128

Loudness-Normalisierung und zulässiger Maximalpegel (2014)

EBU Tech 3341

Anforderungen an das Loudness-Metering

EBU Tech 3342

Definition der Loudness Range (LRA)

EBU Tech 3343

Praxisleitfaden zur Compliance bei der Loudness-Messung

AES17-2020

Messung digitaler Audiogeräte

IEC 61672-1

Schallpegelmesser: Spezifikationen (zum Kontext)

W3C WebAudio

Spezifikationen für AudioContext, AnalyserNode, AudioWorklet

Martin 2001

Schätzung der spektralen Rauschleistungsdichte per Minimum Statistics

EBU 3253-s

Loudness in Streamingdiensten (informativ)

08 · Bekannte Grenzen

Was dies nicht ist

Die Zahlen sind innerhalb der oben dokumentierten Toleranzen genau, aber dies ist ein browserbasierter Analyser, der auf der CPU des Nutzers läuft. Er ist kein Ersatz für:

  • Ein kalibriertes Hardware-Loudness-Messgerät für Broadcast-Compliance-Audits.
  • Einen Labor-Audioanalysator zum Testen von Verstärkern oder Wandlern.
  • Ein klinisches Audiometrie-Instrument (HearLab ist ausdrücklich nicht-medizinisch).
  • Einen Referenz-Encoder/-Decoder zur Prüfung der Codec-Compliance.

Was er ist, im Geiste der übrigen Website: eine funktionierende, schnelle, belegbare Messung, die du an jeder Audiodatei durchführen kannst, ohne irgendetwas auf einen Server hochzuladen, mit vollständig dokumentierter Mathematik und einem Codepfad, der von jeder Demo aus hierher zurückverlinkt werden kann.