2009-08-04 5 views
2

Voici la situation. Lors du téléchargement d'une vidéo, je souhaite capturer une capture d'écran de cette vidéo et l'enregistrer en tant que vignette vidéo. Je actuellement ne peux pas installer ffmpeg sur ma machine locale (il sera installé sur le serveur de production bien sûr), donc je ne peux pas tester l'aide d'action du contrôleur suivant je l'ai écrit à cet effet:ffmpeg + PHP + Zend Framework

<?php 
/** 
* FlvThumbnail 
* 
* @author Richard Knop 
*/ 
class My_Controller_Action_Helper_FlvThumbnail extends Zend_Controller_Action_Helper_Abstract 
{ 
    public function direct($flv, $thumbnail) { 
     $command = "ffmpeg -v 0 -y -i $flv -vframes 1 -ss 10 -vcodec mjpeg -f rawvideo -s 210x140 -aspect 16:9 $thumbnail"; 
     return shell_exec($command); 
    } 

} 

flv $ est le chemin de la vidéo (cette aide d'action sera exécutée juste après la vidéo est téléchargée)

miniature $ est le chemin où l'image miniature doit être enregistré

quelqu'un pourrait-il s'il vous plaît me dire si l'aide ci-dessus fonctionnera comme je l'attends? Je ne sais toujours pas quand le serveur de production sera acheté mais je voudrais savoir à l'avance si cela fonctionnera.

+1

Veuillez échapper vos arguments shell. – jason

Répondre

1

fonctionne bien pour moi

+0

Merci pour la confirmation, c'est ce que je voulais entendre :) –