Je suis nouveau à php. J'ai installé FFMPEG dans mon IIS local .. est-il possible de générer une image miniature pour un fichier FLV? S'il vous plaît aider .. p>
5 Réponses :
Oui. Vous pouvez exécuter FFMPEG de PHP à l'aide du Paramètres de droite a>. p>
Utilisation de FFMPEG-PHP, vous pouvez utiliser $ film-> getframe () pour obtenir un cadre et $ Cadre-> Togdimage () pour obtenir un gd image . p>
Comment utiliser $ film-> getframe ().?
Après Script IC Créé à l'aide de la bibliothèque PHP FFMPEG. Vous pouvez saisir les informations vidéo et la vignette à l'aide des fonctions données fonction p> créera un nombre de vignettes dans le dossier spécifié dans la fonction .
Vous pouvez modifier le code en fonction de votre exigence. Cela fonctionne si vous avez installé la bibliothèque FFMPEG et PHP FFMPEG. P> renvoie ce lien
http://tecserver.blogspot.in/2009/07/fmpeg -Video-conversion-tool.html p> p>
Essayez ceci une explication des options de commande: p> -i nom de fichier em> strong> (la source Chemin de fichier de la vidéo)
-deinterlace strong> (convertit une vidéo entrelacée sur une forme non entrelacée)
-an fort> (enregistrement audio est désactivé; nous n'en avons pas besoin pour les vignettes)
Format de fichier de sortie em> strong>
-t durée em> strud> (le fichier de sortie cesse d'écrire après durée em> secondes)
-r fps em> strong> (définit la fréquence de trame à écrire à; fps em> est exprimé en hertz (1 / secondes); nous utilisons 1 afin que nous saisir une seule image)
-y strong> (écrase le fichier de sortie s'il existe déjà)
-s strong> widthxheight (taille du cadre en pixels) p> p>
Astuce: Mettez l'infilière -i b> la valeur après - SS B> Pour accélérer considérablement le processus.
<?php $W = intval($_GET['W']); $H = intval($_GET['H']); $pic = ''.htmlspecialchars($_GET['file']).''; $name = 'wapadmin/'.str_replace('/','--',$pic).'.gif'; $location = 'http://'.str_replace(array('\\','//'),array('/','/'), $_SERVER [ 'HTTP_HOST'].dirname($_SERVER['PHP_SELF']).'/'.$name); if(file_exists($name)){ header('Location: '.$location, true, 301); exit; } $mov = new ffmpeg_movie($pic, false); $wn = $mov->GetFrameWidth(); $hn = $mov->GetFrameHeight(); $frame = $mov->getFrame(480); $gd = $frame->toGDImage(); if(!$W and !$H){ $a = "131*79"; $size = explode('*',$a); $W = round(intval($size[0])); $H = round(intval($size[1])); } $new = imageCreateTrueColor($W, $H); imageCopyResampled($new, $gd, 0, 0, 0, 0, $W, $H, $wn, $hn); imageGif($new, $name, 100); header('Location: '.$location, true, 301); ?>
Ce code n'est pas compelé. vous devriez ajouter $ mov = nouveau ffmpeg_movie ('./ wildlife.wmv'); au lieu de "$ MOV = nouveau ffmpeg_movie ($ photo, false);" Cela signifie que vous utilisez "wildlife.wmv" exactement sur votre drectorat root proche du fichier .php. Et aussi, vous devriez changer "imagegif ($ nouveau, $ nom, 100);" à "imagegif ($ nouveau," yourname.gif ", 100);" Il créera un fichier nommé "YourName.gif" près de votre fichier php. espère aider quelqu'un
Il n'est pas nécessaire de spécifier une heure de 1. L'API FFMPEG fournit un format d'image2 et la possibilité de passer -vframe 1.
Dupliqué possible de Thumbnail Video Player in php
Dupliqué possible de Générer une image d'aperçu du fichier vidéo?