Video-Thumbnail / Cover

Video-Thumbnail-API: Cover-Frame zu jedem Zeitpunkt extrahieren

Gib Fotovid einen Zeitpunkt vor, und du bekommst genau diesen Frame als gehostetes Bild zurück – direkt einsetzbar als Galerie-Vorschau, Feed-Thumbnail oder Video-Poster.

curl -X POST https://api.fotovid.co/v1/video/extract-cover \
  -H "Authorization: Bearer p6_YOUR_KEY_ID:YOUR_SECRET" \
  -H "Content-Type: application/json" \
  -d '{
    "source_url": "https://cdn.yoursite.com/clip.mp4",
    "params": {
      "at": 3
    }
  }'

Warum das Extrahieren eines einzelnen Frames schwieriger ist, als es aussieht

Ein Video-Thumbnail ist konzeptionell trivial: zu einem Zeitpunkt springen, einen Frame decodieren, ihn als Bild encodieren. In der Praxis betreibst du dafür entweder ffmpeg selbst oder hängst dich an eine überladene Media-Plattform. Ein ffmpeg-Binary im Bundle sprengt die Größen- und Speicherlimits von Serverless-Umgebungen, die Cold Starts werden träge, und das Decodieren einer großen Quelldatei kann das Timeout deiner Function überschreiten. Und die komplette Toolchain brauchst du nur selten – du brauchst genau einen Frame.

  • ffmpeg-Binaries sind für die meisten Serverless-Bundles zu groß und fressen dein Cold-Start-Budget
  • Ein großes Video nur für einen einzigen Frame zu decodieren kann Speicher- und Timeout-Limits deiner Function sprengen
  • Du musst die Quelldatei selbst laden, den Prozess starten und das Ergebnis anschließend irgendwo hochladen
  • Große Media-Plattformen bündeln Transformationen, Storage und CDN, die du gar nicht willst – nur damit du ein einziges Poster bekommst

Request-Parameter

POST /v1/video/extract-cover

FieldTypeDefaultDescription
source_url*string (URL)HTTPS-URL des Quellvideos (wird per HTTP Range gelesen)
params.atnumber1Sekunden ins Video hinein, an denen der Frame entnommen wird
How it works

Dein erster Call in drei Schritten

  1. 1
    Kostenlosen API-Schlüssel holen

    Registrier dich und leg einen Schlüssel an. Jeden Request authentifizierst du mit einem Authorization: Bearer p6_<key_id>:<secret> Header. Neue Schlüssel starten mit kostenlosen Credits – du kannst deine Thumbnail-Integration also aufsetzen, bevor du irgendetwas bezahlst.

  2. 2
    POST /v1/video/extract-cover aufrufen

    Schick einen JSON-Envelope mit source_url auf die https-URL deines Videos, dazu ein params-Objekt, in dem du den gewünschten Zeitpunkt angeben kannst (als HH:MM:SS.mmm-String oder in Sekunden). Fotovid lädt die Quelldatei, decodiert den Frame an dieser Stelle und encodiert ihn auf unserer Infrastruktur als Bild – ffmpeg taucht in deinem Stack nicht auf.

  3. 3
    Gehostete Bild-URL aus der Response nutzen

    Die Response ist flaches JSON mit id, type und einer von Fotovid gehosteten url auf den extrahierten Frame, dazu ein expires_at. Zeig sie direkt als Thumbnail oder Poster an – oder lad das Bild herunter und leg eine eigene Kopie in deinem Bucket ab, damit du die Lebensdauer selbst bestimmst.

Häufige Fragen

Mit einem API-Call live gehen

Hol dir einen kostenlosen Schlüssel und mach deinen ersten Call in unter fünf Minuten.