Snaplytics JS Tests

Frame Skipping Test

Prüfe, ob dein Display und System bei jedem Refresh ein neues Bild anzeigen oder unbemerkt einige verwerfen. Der Test misst jeden Animation-Frame gegen deine gemessene Bildwiederholfrequenz und markiert jede Lücke, in der ein oder mehrere Frames fehlten. Halte diesen Tab während des Laufs im Fokus für eine genaue Messung.

Hz

Live-Monitor läuft – halte diesen Tab im Fokus für eine genaue Messung.

Live
Letzte FramesPünktlichÜbersprungen
Sammle Frames…
Bildwiederholfrequenz
Hz
Frames pünktlich
0
Übersprungen
0
Sprungrate
Größte Lücke

Kamera-Aufnahmestreifen (optional)

Ein Marker rückt pro gerendertem Frame ein Feld weiter. Fotografiere den Bildschirm mit kurzer Verschlusszeit oder nimm in Zeitlupe auf – ein fehlender Schritt offenbart einen verlorenen Frame. Nachgeordnet zum Detektor oben.

Wie der Detektor funktioniert

Der Browser ruft requestAnimationFrame einmal pro Display-Aktualisierung auf, daher sollte der Abstand zwischen den Callbacks ungefähr einem Refresh-Intervall entsprechen – etwa 16,7 ms bei einem 60-Hz-Panel oder 6,9 ms bei 144 Hz. Der Test zeichnet diese Abstände auf und nimmt den Median, um das erwartete Intervall zu bestimmen, was gleichzeitig deine echte Bildwiederholfrequenz ergibt. Wenn sich eine Lücke auf etwa das 1,5-fache des erwarteten Intervalls oder mehr ausdehnt, wurde mindestens ein Frame nie angezeigt; der Test rundet die Lücke auf die nächste ganze Zahl von Intervallen, um abzuschätzen, wie viele Frames verloren gingen. Lange Pausen durch Tabwechsel oder minimierte Fenster werden ignoriert statt als Sprünge gezählt.

Frame-Skipping versus Stottern und Judder

Diese Begriffe überschneiden sich, beschreiben aber unterschiedliche Fehler. Frame-Skipping (verlorene Frames) liegt vor, wenn die Pipeline für einen Refresh-Zyklus kein neues Bild liefert, sodass der vorherige Frame doppelt gezeigt wird und die Bewegung springt. Stottern ist ungleichmäßiges Frame-Pacing – Frames kommen an, aber in unregelmäßigen Abständen –, was ruckelig wirkt, auch wenn technisch nichts verloren ging. Judder ist die gleichmäßige, rhythmische Unregelmäßigkeit, die entsteht, wenn eine Bildrate nicht sauber in die Bildwiederholfrequenz passt, etwa 24-Fps-Film auf einem 60-Hz-Bildschirm. Dieser Test zielt auf echte verlorene Frames auf Refresh-Ebene ab; ein Lauf ohne Sprünge kann sich trotzdem weniger als perfekt flüssig anfühlen, wenn das Pacing ungleichmäßig ist.

Warum ein Monitor Frames überspringt

  • Kabel- oder Bandbreitenlimits: Eine hohe Bildwiederholfrequenz bei hoher Auflösung kann übersteigen, was eine Kabel- oder Portversion übertragen kann, daher verwirft die Verbindung Frames. Das ist die klassische Ursache für Sprünge nur bei der maximalen Rate eines Monitors.
  • Übertaktete Bildwiederholfrequenzen: Ein Panel über seiner Rated-Hz zu betreiben, wirkt oft stabil, wiederholt aber unbemerkt Frames statt neue anzuzeigen.
  • GPU-, Treiber- oder Thermalprobleme: Veraltete Treiber, eine überlastete oder überhitzte GPU oder aggressives Energiesparen können dem Display fertige Frames vorenthalten.
  • Hintergrundlast und Browser-Drosselung: Viel Arbeit in anderen Tabs oder Apps und die Verlangsamung von requestAnimationFrame in nicht fokussierten Tabs verursachen die Lücken, die dieser Test misst.

Was dieser Test misst und was nicht

Dies ist ein Browser-Level-Test der Präsentations-Pipeline – Display, Kabel, GPU-Ausgang, Treiber und Browser –, nicht einer bestimmten Game-Engine. Er berichtet, wie zuverlässig dein System fertige Frames an den Monitor übergibt, während diese Seite im Fokus ist. Er kann keine Frames sehen, die ein Spiel intern rendert, keine Eingabelatenz messen und einen Hardware-Pattern-Generator nicht ersetzen. Für das zuverlässigste Ergebnis schließe einen Laptop an, schließe schwere Hintergrund-Tabs, halte diesen Tab im Fokus und lass einen vollständigen zeitgesteuerten Lauf beenden. Der optionale Aufnahmestreifen unten dient dem Fotografieren des Bildschirms mit kurzer Verschlusszeit, was Sprünge aufdecken kann, die schwer zu spüren sind.