Convertir une vidéo en GIF
Convertir une vidéo en GIF, c’est transformer un court extrait filmé en une animation qui se joue en boucle, sans son et sans lecteur : le GIF s’affiche seul dans un e-mail, une messagerie ou une page web. Idéal pour montrer un geste, une réaction ou une démonstration en quelques secondes.
Exécuter en ligne
Exécutez cette tâche sur nos serveurs, avec votre compte. Les outils gratuits tournent dans votre navigateur ; celui-ci est facturé sur votre solde KIT au prix affiché ci-dessus.
Pourquoi un GIF
Le GIF s’anime tout seul, en boucle, partout où une vidéo demanderait un lecteur : dans le corps d’un e-mail, une conversation ou une page. Il n’emporte pas de son et se prête aux extraits courts — un geste de démonstration, une réaction, une étape d’un mode d’emploi. En contrepartie, un GIF au-delà de quelques secondes devient vite lourd et perd en qualité de couleur : la brièveté est sa règle.
Choisir le bon extrait
Indiquez le passage à convertir, généralement quelques secondes, et l’outil produit l’animation. Plus l’extrait est court et sa taille d’image réduite, plus le GIF reste léger et fluide. Une captation d’écran ou un plan simple donnent un résultat propre ; une scène très détaillée ou très colorée montrera les limites du format. Pour un extrait plus long ou avec du son, mieux vaut garder la vidéo.
Limites et tarif
La vidéo de départ peut atteindre 500 Mo et 60 min, même si l’on n’en convertit qu’un court passage. Le service se paie à l’usage, en dollars US : $0.077 par requête, puis $0.0045 par minute de source traitée. Une conversion sur une source de cinq minutes revient à environ $0.10, sans abonnement. La capacité est en cours de déploiement : le prix est affiché, l’exécution ouvrira sur cette page, puis via l’API.
Cas d’usage
Démonstration en boucle
Studio Lumen SAS transforme trois secondes d’une vidéo produit en GIF pour montrer un geste d’usage directement dans une infolettre, sans lecteur à charger.
Étape d’un mode d’emploi
Julien Lefèvre illustre une manipulation par un GIF court dans une page d’aide : le lecteur voit le geste se répéter sans cliquer sur lecture.
Réaction à partager
Un extrait amusant d’une vidéo devient un GIF léger, glissé dans une conversation où l’envoi d’une vidéo entière serait trop lourd.
Questions fréquentes
Le GIF conserve-t-il le son de la vidéo ?
Non. Le format GIF ne porte pas de son : il ne restitue que l’image animée. Pour garder la parole ou la musique, conservez la vidéo d’origine.
Quelle durée d’extrait choisir ?
Quelques secondes suffisent et donnent le meilleur résultat. Au-delà, le fichier devient lourd et l’animation perd en qualité de couleur : le GIF est fait pour le court.
Comment garder un GIF léger ?
Réduisez la durée et la taille d’image de l’extrait. Un plan simple ou une captation d’écran se compressent bien ; une scène très colorée pèsera davantage.
Combien coûte la conversion en GIF ?
Le tarif est de $0.077 par requête, plus $0.0045 par minute de source. Une source de cinq minutes revient à environ $0.10, en dollars US, sans abonnement.
Ma vidéo est-elle supprimée après conversion ?
Oui. Le fichier transite par nos serveurs le temps de créer l’animation, via un transfert chiffré, puis il est effacé une fois le GIF récupéré.
L’outil est-il déjà disponible ?
Il est en cours de déploiement. Le tarif est publié ; l’exécution ouvrira sous peu, sur cette page puis via l’API.
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/video/gif \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"audio":"https://ejemplo.com/audio.mp3"}'const res = await fetch("https://api.kit.forhosting.com/video/gif", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"audio": "https://ejemplo.com/audio.mp3"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/video/gif",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"audio": "https://ejemplo.com/audio.mp3"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/video/gif", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"audio":"https://ejemplo.com/audio.mp3"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"audio":"https://ejemplo.com/audio.mp3"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/video/gif", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"audio": "https://ejemplo.com/audio.mp3"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "video.gif",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Limites
max_mb | 500 |
max_minutes | 60 |
max_megapixels | 3.9 |
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |