Clustraly
Médiathèque

Un poster vidéo net, extrait de la première image automatiquement

Poster vidéo (extraction de première image) une fonctionnalité du module Médiathèque de Clustraly. Le poster vidéo extrait automatiquement une image de couverture de vos vidéos à l'upload, la transcode en WebP et l'associe au média.

Téléversez une vidéo, récupérez une image de couverture nette. Clustraly extrait la première image exploitable, la transcode en WebP et l'associe au média sans capture manuelle, et sans jamais bloquer votre upload.

Couverture automatique

Chaque vidéo s'affiche avec une vignette nette

Vous téléversez une vidéo, Clustraly en tire une image de couverture pour vous. Plus besoin d'ouvrir un éditeur, de faire une capture d'écran ni de dénicher la bonne image : le média arrive avec son poster, prêt à afficher.

L'IA propose la couverture, vous gardez la main. Remplacez le fichier ou ajustez les métadonnées dès que l'image ne vous convient pas.

  • Poster généré dès l'upload d'une vidéo (mime video/*)
  • Aucune capture manuelle ni outil externe à ouvrir
  • Chemin enregistré dans poster_path, prêt à l'affichage
Extraction intelligente

1 seconde d'abord, 0 seconde en secours

Clustraly vise l'image à 1 seconde plutôt que la toute première frame, souvent noire. Si cette tentative échoue, il se replie sur 0 seconde. Vous obtenez une couverture exploitable au lieu d'un rectangle sombre.

L'image extraite est ensuite transcodée en WebP (qualité 82) quand GD est disponible, pour un poster léger ; à défaut, le JPEG d'origine est conservé.

  • Cible 1 s pour éviter la première frame noire
  • Repli automatique sur 0 s si nécessaire
  • Transcodage WebP qualité 82, sinon JPEG conservé
Extraction confinée

ffmpeg appelé sans shell, jamais d'injection

L'extraction s'appuie sur ffmpeg, invoqué par proc_open avec un tableau d'arguments : aucune commande n'est passée à un shell, donc aucune injection n'est possible.

Un timeout mural de 20 secondes, doublé d'un proc_terminate, coupe court à tout traitement qui s'éterniserait. Votre serveur ne reste jamais bloqué sur une extraction.

  • proc_open avec tableau d'arguments, jamais de shell
  • Aucune injection de commande possible
  • Timeout mural de 20 s + proc_terminate
Optionnel et fail-open

Un poster en plus, jamais un upload en moins

Le service est optionnel et conçu pour ne jamais vous bloquer. Si proc_open est désactivé, si aucun binaire ffmpeg n'est trouvé ou si l'extraction échoue, l'upload de votre vidéo réussit quand même simplement sans poster.

Le binaire est recherché dans le chemin configuré, puis dans le PATH, puis aux emplacements courants. Votre médiathèque ne dépend jamais de la présence de ffmpeg.

  • Upload toujours réussi, même sans ffmpeg
  • Recherche du binaire : chemin configuré, PATH, emplacements courants
  • Aucune erreur bloquante en cas d'échec (retour null)
Toujours cohérent

Le poster suit vos remplacements de fichier

Quand vous remplacez une vidéo par une image, le poster devenu obsolète est effacé et poster_path est remis à null. Votre média ne traîne jamais une vignette qui ne lui correspond plus.

  • Poster obsolète effacé au remplacement vidéo vers image
  • poster_path remis à null, pas de vignette fantôme
Pourquoi ça compte

L'IA propose la couverture, vous gardez la main

Clustraly extrait le poster à votre place, mais rien n'est figé : remplacez le fichier ou ajustez les métadonnées quand l'image ne vous convient pas.

FAQ

Questions fréquentes

Que se passe-t-il si ffmpeg n'est pas installé ?
L'upload de votre vidéo réussit quand même. Le service est fail-open : sans binaire ffmpeg (recherché via le chemin configuré, le PATH puis les emplacements courants) ou si proc_open est désactivé, aucun poster n'est généré, sans erreur bloquante.
Pourquoi l'image est-elle prise à 1 seconde et non au tout début ?
La première frame d'une vidéo est souvent noire. Clustraly vise donc 1 seconde d'abord pour une couverture exploitable, avec repli automatique sur 0 seconde si la première tentative échoue.
Le poster est-il un JPEG ou un WebP ?
L'image extraite est transcodée en WebP (qualité 82) lorsque GD est disponible, pour un fichier plus léger. Si GD manque, le JPEG d'origine est conservé et associé au média.
L'extraction présente-t-elle un risque de sécurité ?
ffmpeg est invoqué par proc_open avec un tableau d'arguments, sans passer par un shell, ce qui exclut toute injection de commande. Un timeout mural de 20 secondes et un proc_terminate encadrent chaque extraction.
Prêt à commencer ?

Des vidéos qui s'affichent proprement, sans effort

Laissez chaque vidéo arriver avec sa couverture dans la médiathèque de Clustraly. Extraction confinée, transcodage WebP, repli automatique et fail-open : le poster se fait tout seul, et vous décidez du reste.