API média serverless-native

ffmpeg pour le serverless, en tant qu'API.

Filigrane, découpe, extraction audio et génération de miniatures en un seul appel API. Aucune limite de bundle à 250 Mo, aucun child_process, aucun mur de timeout — l'encodage lourd ne touche jamais ta fonction.

curl -X POST https://api.fotovid.co/v1/video/watermark \
  -H "Authorization: Bearer p6_YOUR_KEY_ID:YOUR_SECRET" \
  -H "Content-Type: application/json" \
  -d '{
    "source_url": "https://cdn.yoursite.com/clip.mp4",
    "params": {
      "type": "image",
      "watermark_image_url": "https://cdn.yoursite.com/logo.png",
      "position": "bottom-right",
      "opacity": 0.7,
      "scale": 0.2
    }
  }'

Intègre-le dans n'importe quel runtime serverless

Next.jsVercelNetlifyRemixNuxtSvelteKitAstroCloudflare WorkersAWS Lambda
Pourquoi tu ne peux pas juste faire un npm install ffmpeg

Le serverless n'a jamais été conçu pour traiter des médias

La limite de bundle à 250 Mo

Embarquer ffmpeg et ses codecs dans le bundle dépasse la limite de taille de ta fonction serverless avant même que tu aies écrit une ligne de logique.

Pas de child_process

Les runtimes serverless ne te donnent pas de shell. Tu ne peux pas lancer ffmpeg en sous-processus, et les builds WASM sont lents et gourmands en mémoire.

Le mur du timeout

Même si ça tournait, encoder une vidéo dépasse largement le timeout de la fonction. Fotovid exécute le travail lourd hors plateforme et te renvoie une URL.

Pensé pour le vrai travail des équipes produit

Ce que les gens construisent avec Fotovid

Filigraner les uploads utilisateurs

Appose ta marque ou un tag propre à chaque utilisateur sur toutes les vidéos et images qu'ils uploadent — directement dans la requête qui gère l'upload.

Générer automatiquement des clips pour les réseaux sociaux

Découpe de longs enregistrements en segments partageables et récupère une miniature pour la carte de prévisualisation, le tout depuis ta route API.

Extraire l'audio pour la transcription

Retire la piste audio d'une vidéo uploadée et transmets le MP3 à ton pipeline de transcription ou d'IA.

Miniatures pour un flux vidéo

Génère des images de couverture à la demande pour que ta galerie et ton flux se chargent vite, sans avoir à déployer ffmpeg.

Pensé pour la façon dont tu déploies

Serverless-native dès la première requête

Sync + webhook

Les petits jobs renvoient le fichier fini de façon synchrone, dans la même requête. Les jobs longs tournent en async et appellent ton webhook une fois terminés — pas besoin de polling.

Fonctionne depuis n'importe quel runtime

Aucun binaire ffmpeg dans ton bundle, aucun layer qui alourdit ton cold start. Le même appel HTTPS fonctionne depuis Vercel, Cloudflare Workers, Lambda ou Deno.

Résultats hébergés, aucun fichier temporaire

Chaque job renvoie une URL présignée vers le fichier fini — stream-la, stocke-la ou récupère directement les octets. Rien à écrire sur le disque en lecture seule de ta fonction.

Une tarification simple, à la consommation

Paie uniquement ce que tu traites

Commence gratuitement — sans carte. Ensuite, achète des credits et dépense-les à chaque opération. 1 $ = 100 credits, à prix fixe — sans abonnement, sans frais par utilisateur.

$10
1 000 credits
$50
5 000 credits
$100
10 000 credits
  • API HTTP complète — endpoints sync + async
  • Toutes les opérations ffmpeg — vidéo, audio et image
  • Les credits n'expirent jamais
  • Pas d'abonnement — paie à l'usage
  • Clés d'idempotence + webhooks
  • SDKs officiels (JS / Python) + serveur MCP

Documentation API · Démarrage rapide

Questions fréquentes

Déploie le traitement média dès cet après-midi

Récupère une clé API gratuite et fais ton premier appel de filigrane en moins de cinq minutes.