Problème avec ffmpeg (vidéo)

Eléphant du PHP | 259 Messages

30 janv. 2008, 17:43

Bonjour,

Sur mon site j'ai une partie ou j'affique quelques vidéo, dc j'arrive bien à afficher les vidéos, mais j'aimerais pouvoir afficher la 1er image de la vidéo au lieu que ça fasse un carré noir.
Je ne sais pas trop comment faire, si c'est "compliqué" ou pas.

Merci d'avance pour vos réponses :wink:
Modifié en dernier par angebleu17 le 31 janv. 2008, 15:20, modifié 1 fois.

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

30 janv. 2008, 17:51

Il te faut regarder du coté de ffmpeg (il y en a peut être d'autres)

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 259 Messages

31 janv. 2008, 11:37

Merci pour le lien, j'ai suivi un tuto pour installé ffmpeg sur mon serveur dédié : : http://forum.ovh.com/archive/index.php/t-12085.html.

ffmpeg s'est bien isntallé, j'ai récupéré l'extension ffmpeg-php, je l'ai décompréssé et là j'ai un petit probléme pour configurer l'extension ffmpeg-php.

Au niveau du tuto je suis à "Rendons-nous maintenant dans ce répertoire pour y faire quelques commandes de manière à configurer l'extension ffmpeg-php

cd ffmpeg-php-0.5.0
phpize
./configure && make
make install
"

je fait cd ffmpeg-php-0.5.0, donc je suis bien dans le dossier mais lorsque je fait phpize, cela met : -bash: phpize : command not found.

Quand j'ai fait tar -xjvf ffmpeg-php-0.5.0.tbz2 , cela a affiché la liste des fichier et dossier et il n'y a pas de phpize.

Voici une capture d'écran :

http://www.image-serveur.com/uploads/b8ef2cab6d.png

Que dois-je faire pour isntallé l'extension ffmpeg-php ?

Merci d'avance pour vos réponses :wink:

EDIT :

J'ai réussi a résoudre mon probléme en faisant :

Code : Tout sélectionner

/usr/local/php5/bin/phpize ./configure --with-php-config=/usr/local/php5/bin/php-config && make make install
Donc j'ai réussi a installé l'extension j'ai redémarré apache, quand je fait php info dans webmin cela met :

ffmpeg
ffmpeg support (ffmpeg-php) enabled
ffmpeg-php version 0.5.0
libavcodec version Lavc51.40.2
libavformat version Lavf51.11.0

Donc a priori ffmpeg et l'extension php est bien installé ?!

J'ai testé ce code :
<?
$movie = new ffmpeg_movie( "http://www.monsite.fr/videos/video2.avi", false ); //Sélection de la vidéo
$frame = $movie->getFrame(30); //Selection de la frame voulue
$gd_image = $frame->toGDImage(); //génération de l image
imagejpeg($gd_image, "http://www.monsite.fr/videos/miniature_video2.jpg", 90); //enregistrement
?>
Voici l'erreur :

Warning: Can't open movie file http://www.monsite.fr/videos/video2.avi in /home/monsite/www/dossier/page.php on line 297

Lorsque je tape l'adresse la vidéo sur mon navigateur (http://www.monsite.fr/videos/video2.avi ) cela met bien en route la vidéo.

D'ou peut venir le probléme ?

Eléphant du PHP | 66 Messages

31 janv. 2008, 16:34

Code : Tout sélectionner

chown -R apache:apache /chemin/du/rep/videos/
Mess With Best or die With the Rest

Eléphant du PHP | 259 Messages

31 janv. 2008, 16:57

J'ai tapé la ligne chown -R apache:apache /chemin/du/rep/videos/ dans putty mais cela me met :
apache:apache : usager invalide

J'ai essayé en mettant root:root et ça n'a rien mis.

Mais l'erreur est toujours là

Warning: Can't open movie file http://www.monsite.fr/videos/video2.avi in /home/monsite/www/dossier/page.php on line 297

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

31 janv. 2008, 18:58

Bonjour,

La fonction ffmpeg_movie() attend comme 1er argument le chemin relatif vers ta vidéo, en clair pas de http://... ;)
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphant du PHP | 259 Messages

01 févr. 2008, 16:32

Merci pour la réponse, c'était bien ça, il faut mettre le chemin relatif.

Par contre encore une petite erreur dans le code à la derniére ligne :
<? 
$movie = new ffmpeg_movie( "/home/monsite/www/videos/video2.avi'", false ); //Sélection de la vidéo 
$frame = $movie->getFrame(30); //Selection de la frame voulue 
$gd_image = $frame->toGDImage(); //génération de l image 
imagejpeg($gd_image, "/home/monsite/www/videos/miniature_video2.jpg", 90); //enregistrement 
?> 
Voici l'erreur :


Warning: imagejpeg() [function.imagejpeg]: Unable to open '/home/monsite/www/videos/miniature_video2.jpg' for writing in /home/monsite/www/page.php on line 302


Dans php.ini j'ai bien la ligne extension=php_gd2.dll

ViPHP
ViPHP | 2287 Messages

01 févr. 2008, 16:40

imagejpeg($gd_image, "/home/monsite/www/videos/miniature_video2.jpg", 90); //enregistrement 
?> 
Problème de permissions : ton site n'a apparemment pas le droit d'écrire dans ce répertoire et/ou dans ce fichier.
if(!@work()){ Nespresso(); } else { what(); }
______________________________

Eléphant du PHP | 259 Messages

01 févr. 2008, 16:45

Ok, il faut fait comment pour modifier les droits d'écriture dans le répertoire ?

ViPHP
ViPHP | 2287 Messages

01 févr. 2008, 17:18

Code : Tout sélectionner

# chmod a+rw /home/monsite/www/videos/
if(!@work()){ Nespresso(); } else { what(); }
______________________________

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

01 févr. 2008, 19:09

Code : Tout sélectionner

# chmod a+rw /home/monsite/www/videos/
Ou via un logiciel FTP: clic-droit sur le répertoire concerné, propriétés, CHMOD 775 (ou cocher les cases droits d'écriture/lecture)
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphant du PHP | 259 Messages

04 févr. 2008, 13:09

Merci, ça marche :wink: