Animated Video Scroll ist eine Technik zur Erstellung kinematografischer One-Page-Websites, bei der das Scrollen der Seite die Wiedergabe von Videomaterial direkt steuert. Wenn der Nutzer mit dem Mausrad oder per Wischgeste auf dem Smartphone scrollt, wechselt das Video flüssig Bild für Bild und synchronisiert sich dabei mit dem Lesetempo sowie dem Erscheinen der Informationsblöcke.
Dieser Effekt hat sich zum Aushängeschild für Präsentationen von Premium-Produkten wie Apple, Tesla und Porsche sowie von führenden Design-Studios weltweit entwickelt.
Diese Technik ist kein Einbetten eines herkömmlichen Video-Players und verwendet keine animierten GIFs. Im Kern basiert sie auf einer Einzelbild-Sequenz aus leichten WebP-Bildern, die hardwarebeschleunigt auf einem <canvas>-Element via WebGL oder 2D Context gerendert werden. Dies garantiert eine sofortige Reaktion auf jedes Pixel des Scrolls.
1. Was ist eine Scroll-Site mit Video und ihre Vorteile
Traditionelles Hintergrundvideo auf einer Seite weist zwei wesentliche Nachteile auf: Es läuft in seinem eigenen Tempo ab, ignoriert die Aufmerksamkeit des Lesers und erzeugt eine hohe Belastung für Netzwerk und Akku mobiler Geräte.
Eine scroll-gesteuerte Website löst dieses Problem:
- Volle Kontrolle über die Aufmerksamkeit: Der Nutzer bestimmt selbst das Betrachtungstempo. Bleibt er an einem wichtigen Absatz stehen, friert das Objekt im Bildausschnitt in der gewünschten Perspektive ein.
- Keine Verzögerungen und Pufferung: Die Videodatei wird vorab in optimierte statische WebP-Frames zerlegt, sodass der Browser während schnellen Scrollens keine schwere Dekodierung von MP4-Containern durchführen muss.
- Narrative Synchronisation: Textthesen, grafische Markierungen, numerische Metriken und technische Spezifikationen erscheinen genau dann, wenn die Kamera das entsprechende Detail des Objekts zeigt.
Eignung nach Projekttyp
| Produkttyp | Warum Scroll-Video geeignet ist | Fokus im Bildausschnitt |
|---|---|---|
| Automobile & Technik | Betont Aerodynamik, Chassis-Details, Innenraum-Materialien | Sanfte Kamerabewegung entlang der Karosserie, Wechsel der Perspektiven |
| Premium-Elektronik | Demonstriert präzise Montage, Gehäuse-Dicke, Optik | Explosionsansicht (exploded view), Makroaufnahmen |
| Architektur & Immobilien | Erzeugt räumliches Volumen- und Lichtgefühl | Flug durch die Fassade in den Innenbereich |
| Fashion & Schmuck | Zeigt Stofftextur, Lichtspiel auf Metall | Delikate Lichtbewegung um das Produkt herum |
2. Architektur und Dateistruktur des Skills
Der Skill ist als modularer Engineering-Pipeline aufgebaut. Jede Komponente ist für einen isolierten Arbeitsschritt verantwortlich:
1. SKILL.md — Hauptanweisung und Skriptalgorithmus
Beschreibt den Lebenszyklus der Seitenerstellung: von der technischen Analyse des Quellmaterials mittels ffprobe bis hin zur Strukturierung in sinnvolle Kapitel, Berechnung der Scroll-Länge und Zusammenbau der fertigen HTML/JS-Anwendung.
2. visual-system.md — Referenzhandbuch des Precision Editorial Systems
Legt strenge ästhetische Regeln fest: Verzicht auf billige Klischees (grundlose Neon-Glows, Glass-Panels und Playfair-Schriftarten), vorgefertigte „Trackline“-Palette für technische Storylines, 5 grundlegende Layout-Schemata für Textplatzierung und typografische Paare.
3. extract_frames.py — Extraktions- und Komprimierungsskript für Frames
Konsolen-Utility in Python. Liest automatisch Video-Metadaten via ffprobe, berechnet die proportionale Anzahl der Frames, schneidet separate Streams für Desktop und Mobile im WebP-Format zu und generiert die manifest.json.
4. evals.json — Szenarien zur Qualitätssicherung
Enthält einen Test-Referenzfall (am Beispiel eines Porsche-Videos), der die Flüssigkeit der LERP-Interpolation, das Verhalten des Canvas bei Fenstergrößenänderungen, Tastaturzugänglichkeit und Asset-Gewicht überprüft.
3. Wiedergabemechanik: Canvas, LERP und Dwell-Remap
Im Zentrum steht ein <canvas>-Element, das den gesamten Bildschirm abdeckt (position: fixed). Das Scrollen der Seite wird in einen relativen Fortschritt von 0.0 bis 1.0 umgerechnet, der bestimmt, welche Frame-Nummer angezeigt werden soll.
1. Glättung durch LERP (Linear Interpolation)
Würde man Frames strikt bei jedem Scroll-Event wechseln, würde die Animation ruckartig wirken, besonders bei Mäusen mit diskretem Scrollrad.
Für kinematografische Flüssigkeit wird lineare Interpolation angewendet: Der aktuell gerenderte Frame (currentFrame) „holt“ sanft den Ziel-Frame (targetFrame) ein.
2. Verlangsamung nahe jedem Kapitel (Dwell-Remap)
Damit der Nutzer Zeit hat, Überschriften und Texte zu lesen, ohne das Mausrad filigran stoppen zu müssen, wird die Dwell-Remap-Technik eingesetzt. Nahe der Mitte jedes Kapitels wird die Geschwindigkeit des Frame-Wechsels künstlich verlangsamt, während zwischen den Kapiteln eine flüssige Bewegung erhalten bleibt.
3. Progressives Laden der Frames
Um weiße Flashes zu vermeiden und nicht auf das Laden des gesamten Pakets (100–150 Frames) warten zu müssen, wird eine zweistufige Strategie angewendet:
- Kritische Priorität: Sofort werden die ersten 5 Frames sowie die Schlüssel-Frames der wichtigsten Kapitel geladen.
- Hintergrund-Warteschlange: Die übrigen Frames werden in kleinen Batches via
requestIdleCallbackoder Promise-Queue nachgeladen. Falls der benötigte Frame noch unterwegs ist, rendert das Canvas den nächstgelegenen bereits geladenen Frame.
4. Schritt-für-Schritt-Entwicklungsprozess: Vom Video zum Code
Der gesamte Produktionsprozess ist in sieben sequenzielle Schritte unterteilt:
Schritt 1. Analyse des Videos mittels ffprobe
Vor der Codegenerierung werden die technischen Parameter der Quelldatei analysiert:
Es wird ein Kontaktbogen mit 6 Referenz-Frames erstellt, um Kamerabewegung, Objektposition und verfügbaren negativen Raum (negative space) für Text einzuschätzen.
Schritt 2. Formulierung des Design-Konzepts
Eine klare These wird definiert:
- Hauptdarsteller: Wer oder was steht im Mittelpunkt?
- Ziel-Emotion: Technische Präzision, ruhiger Luxus, Drive, Meditativität.
- Schrift-Paar: Kontrastreiche Headline und ingenieurtechnische Monospace-Akzentuierung.
- Markantes Stilmittel: Telemetrie, variabler Tracking-Wert, Mikroframe-Zähler.
Schritt 3. Zuschnitt und Optimierung der Frames
Anzahl der Frames und Scroll-Höhe werden entsprechend der Video-Lauflänge gewählt:
| Video-Länge | Anzahl Frames | Empfohlene Scroll-Höhe | Gesamtzielgewicht (WebP) |
|---|---|---|---|
| 0–5 Sekunden | 60–80 Frames | 450–550vh | 4–7 MB |
| 5–15 Sekunden | 90–130 Frames | 600–750vh | 8–12 MB |
| 15–30 Sekunden | 130–180 Frames | 750–900vh | 10–15 MB |
| 30+ Sekunden | 180–200 Frames | 900–1000vh | 12–16 MB |
Start der Extraktion via Python-Skript:
Schritt 4. Skript pro Kapitel
Die Seite wird in 4–6 inhaltliche Abschnitte unterteilt. Zum Beispiel:
- Kapitel 1: Intro (0–15%) — Modellname, minimalistische Silhouette.
- Kapitel 2: Aerodynamik (20–40%) — Fokus auf Geometrie des Spoilers und Luftkanäle.
- Kapitel 3: Antriebsstrang (45–65%) — Darstellung des Motors oder Chassis mit Telemetriedaten.
- Kapitel 4: Finale & Action (75–100%) — Vollständige Entfaltung des Fahrzeugs und Testfahrt-Button.
Schritt 5. Layer-Komposition und Layout rund um das Video
Text darf niemals Schlüsseldetails im Bild überdecken. Je nach Bewegungsrichtung des Objekts verschieben sich Textblöcke sanft vom linken zum rechten Rand oder fixieren sich im unteren Bilddrittel.
Schritt 6. Assembly basierend auf Start-Template
Ein robustes HTML5-Framework mit vorbereiteter Lazy-Loading-Logik und Responsive-Support wird genutzt, an das individuelle Farb-Tokens und das Frame-Manifest angebunden werden.
Schritt 7. Überprüfung und Kritik
Testen Sie Scroll-Sites immer über einen lokalen HTTP-Server (python3 -m http.server), statt die Datei direkt via file:/// zu öffnen. Browser-CORS-Richtlinien blockieren das Laden von WebP-Frames via fetch() beim lokalen Öffnen von Dateien.
5. Visuelles System: Typografie und Trackline-Palette
Das Precision Editorial-System verlangt den Verzicht auf dekorative Überladenheit zugunsten einer ausgefeilten Schweizer Typografie und der Ästhetik von Kontrollinstrumenten.
Typografische Kombinationen
- Headlines: Archivo (Black, Tight tracking
-0.03em) - Body Text: Archivo (Regular, 15px)
- Technische Captions & Telemetrie: IBM Plex Mono (Medium, 11px, Uppercase)
- Ideal für: Automobile, Luftfahrt, Heavy Engineering, Uhrwerke.
Farbpalette „Trackline“
Die Palette basiert auf Farben echter Rennstrecken: mattes Carbon, kühles Aluminium und dezente Racing-Akzente.
Signal-Farben (--color-signal und --color-heritage) werden punktuell eingesetzt — zur Markierung des aktiven Kapitels oder Positionsindikators, wobei sie maximal 3% der Bildschirmfläche beanspruchen.
6. Layer-Komposition, Bewegung und markante Stilmittel
Die Seite besteht aus drei visuell unabhängigen Ebenen unterschiedlicher Tiefe:
5 Varianten der Textkomposition
| Layout-Schema | Content-Position | Optimales Nutzungsszenario |
|---|---|---|
| Masthead Statement | Riesige Headline zentriert über den ganzen Screen | Erster Viewport (Intro des Videos) |
| Side Margin Annotation | Schmale Spalte (3–4 cols) rechts oder links | Objekt bewegt sich im gegenüberliegenden Bildteil |
| Split Statement | Headline links, techn. Beschreibung rechts | Objekt stabil streng zentriert fixiert |
| Telemetry Dock | Horizontales Panel unten mit Instrumentendaten | Demonstration von Dynamik, Speed, Power |
| Final Callout | Fokussierter Block mit einer einzigen Hauptaktion (CTA) | Abschluss-Screen nach Ende der Videosequenz |
Animationsprinzipien für DOM-Elemente
Da das Video auf dem Canvas bereits intensive Bewegung erzeugt, muss die Animation der Textblöcke zurückhaltend sein:
- Erscheinen via Maske: Text steigt von unten aus einem Container mit
overflow: hiddenauf. - Verschiebung: Maximal 16–24px auf der Y-Achse.
- Timings: 600–800ms beim Eintritt des Kapitels mit der Kurve
cubic-bezier(0.16, 1, 0.3, 1). - Kein Blur: Der Filter
filter: blur()ist streng verboten — er erzwingt Neurechnungen der Browser-Layer und zerstört stabile 60 FPS.
7. Anti-Patterns: Verzicht auf veraltete „Luxus“-Klischees
Die meisten Template-Video-Landingpages wirken billig aufgrund typischer Designer-Klischees. Hier ist, was vollständig vermieden werden sollte:
| Veraltetes Klischee | Warum es schlecht ist | Professionelle Alternative |
|---|---|---|
| Playfair Display + dünner Grotesk | Standard-Template für „Pseudo-Luxus“ | Präzise Grotesks: Archivo, Roboto Flex, Manrope |
| Glassmorphism (Mattglas) | Verschwimmt das Hintergrundvideo, belastet GPU stark | Kontrastreiner klarer Text im freien Raum des Bildes |
| Schwebende Partikel & Staub | Lenken vom realen Objekt ab | Sauberes Canvas ohne künstlichen dekorativen Ballast |
| Violett-blaue Neon-Gradienten | Assoziiert mit Krypto-Landingpage-Templates | Natürliche Farben, direkt aus den Video-Frames entnommen |
| Custom Cursor mit Lag | Erzeugt Trägheitsgefühl und ist unkomfortabel | Nativer System-Cursor mit klaren Hover-States |
8. Performance, Accessibility (A11y) und Mobile-Optimierung
Scroll-Sites mit viel Grafik erfordern strenge technische Disziplin:
1. Begrenzung des Device Pixel Ratio (DPR)
Moderne Smartphones haben Screens mit DPR 3.0 oder 3.5. Rendert man das Canvas in dieser Auflösung, steigt die Rechenfläche fast um den Faktor 10, was den Prozessor sofort überhitzt.
2. Rendering-Pause für versteckte Tabs
Wenn der Nutzer zu einem anderen Tab wechselt, muss das Rendering sofort pausieren:
3. Reduzierter Animationsmodus (prefers-reduced-motion)
Für Menschen mit empfindlichem Vestibularapparat kann kontinuierliches Frame-Scrolling Schwindel auslösen.
Ist in der OS-Einstellung prefers-reduced-motion: reduce aktiviert, muss die Site statt endloser Frame-Scrolling einen hochwertigen statischen Poster oder eine vereinfachte Slide-Galerie anzeigen.
9. Praktischer Workshop: Erstellung und Start des Projekts
Erstellen wir eine minimale funktionierende Struktur einer Scroll-Site.
Schritt 1. Generierung der Frames aus dem Video
Legen Sie das Video im Arbeitsverzeichnis ab und starten Sie den Zuschnitt:
Das Skript erstellt die Manifestdatei frames/manifest.json:
Schritt 2. Dateistruktur des fertigen Projekts
Schritt 3. Start der lokalen Umgebung
Für korrektes Nachladen der Ressourcen starten Sie einen lokalen HTTP-Server:
Öffnen Sie die Adresse http://localhost:3000 im Browser und prüfen Sie die Flüssigkeit des Frame-Laufs sowie die korrekte Umschaltung der Kapitel.
10. Abschließender Checkliste für die Fertigstellung der Scroll-Site
Vor dem Release prüfen Sie die Einhaltung aller ingenieurtechnischen und visuellen Kriterien:
Technische Metriken
- Gesamtgewicht der Desktop-Frames überschreitet nicht 12 MB (Mobile max. 5 MB).
- Die ersten 5 Frames haben Preload-Priorität (
preload). - DPR-Faktor ist auf den Wert
2begrenzt, um Überhitzung mobiler Geräte zu verhindern. - Der
requestAnimationFrame-Loop stoppt beim Wechsel zu einem anderen Browser-Tab.
User Experience & Accessibility
- Sanfter LERP-Übergang zwischen Frames ohne harte Ruckler implementiert.
- Dwell-Remap für komfortables Lesen des Textes nahe jedem Kapitel eingestellt.
- Modus
prefers-reduced-motionmit statischem Poster unterstützt. - Mindestgröße aller klickbaren Elemente beträgt mindestens 44×44px.
Design & Ästhetik
- Klares ingenieurtechnisches Schrift-Paar ohne Pseudo-Luxus-Klischees verwendet.
- Text überdeckt nicht das bewegte Hauptobjekt im Bild.
- UI-Farben direkt aus dem Videomaterial übernommen.
- Seite endet mit einer klaren, eindeutigen Handlungsaufforderung (CTA).