ffmpeg-php sous wamp 1.6.6

Eléphant du PHP | 248 Messages

12 août 2007, 11:40

Bonjour j'essaye depuis quelques jours de mettre en place ffmpeg-php sur mon serveur local wamp 1.6.6.

Je l'ai téléchargé sur sourceforge j'ai copié les fichiers avcodec.dll et avformat.dll dans system32. Apres j'ai mis l'extension php_ffmpeg.dll correspondant à ma version de php (php 5) dans wamp/php/ext.

J'ai modifié mon php.ini en rajoutant l'extension et en enlevant le ; mais quand je fais phpinfo l'extension n'apparait pas.

J'ai refait l'installation plusieurs fois en essayant de voir un peu sur Internet des solutions pour le mettre en place mais sans succès.

Auriez vous une solution

Vous remerciant de votre aide

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

12 août 2007, 12:00

Bonjour,

Pour avoir pas mal travaillé avec FFmpeg et PHP, je pense que la meilleure solution est d'utiliser FFMPEG via la ligne de commande et les fonctions exec() ou system()
Ainsi tu pourra profiter de toutes les fonctionnalités de FFMPEG sans être bridé par l'extension PHP qui n'évolue plus depuis + de 2 ans ;)
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphant du PHP | 248 Messages

12 août 2007, 12:06

Bonjour arthur,
merci pour ta réponse. Mais cependant j'ai quelques petites questions.

1. Je dois donc télécharger le ffmpeg et non le ffmpeg-php?
2. Dois-je laisser avcodec.dll et avformat.dll dans system32 ou je dois tout éffacer et recommencer?
3. Pourrait tu m'éclairer sur l'installation?


Te remerciant d'avance

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

12 août 2007, 14:55

1) Voila les binaires Windows de FFMPEG ("Win32 Binaries"):
http://arrozcru.no-ip.org/ffmpeg_builds/

2) Humm à priori je pense que tu peux les effacer... mais dans le doute, laisse les le temps de faire les tests et tu les supprimeras après si ils ne sont effectivement pas utiles.

3) Ensuite tu décompresse le contenu du répertoire bin/ dans un répertoire proche de la racine (c'est + simple pour y accéder en ligne de commande) par exemple c:\ffmpeg\
Puis tu ouvres une invite de commande: Démarrer, Exécuter, "cmd" [OK]
Tu va dans le répertoire où se trouve FFMPEG:

Code : Tout sélectionner

cd c:\ffmpeg\
et enfin tu utilises FFMPEG en ligne de commande:

Code : Tout sélectionner

ffmpeg -i video.avi
Pour récupérer des infos à propos d'une vidéo par exemple (en supposant que video.avi soit dans le même répertoire que ffmpeg.exe
Tu trouvera toutes les options de ffmpeg en tapant juste "fmpeg.exe" (c'est très long, je te conseille de mettre ça dans un fichier pour pouvoir le conserver en permanence à côté de toi:

Code : Tout sélectionner

ffmpeg > doc_ffmpeg.txt
Voila quelques commandes de bases : http://www.jcartier.net/spip.php?article36

Dès que tu réussi à obtenir ce que tu veux, tu n'as plus qu'à appeler FFMPEG avec la bonne ligne de commande en PHP:

Exemple pour transformer une vidéo AVI au format Flash:
<?php
$video_source="video.avi";
$video_cible="video.flv";
$chemin_ffmpeg="C:\\ffmpeg\\ffmpeg.exe ";
exec($chemin_ffmpeg." -i ".$video_source."  -ab 56 -ar 44100 -b 200 -r 15 -s 320x240 -f flv ".$video_cible);
?>
Bon courage!
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphant du PHP | 248 Messages

12 août 2007, 15:42

je te remercie beaucoup pour ton aide je vais faire ce que tu m'as dit


J'ai essayé et ça marche.

Est-ce que je peut faire la meme méthode sous linux? Je veut dire décompiler le tout dans un dossier et lancer des commandes par PHP ou je dois faire une autre manoeuvre

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

12 août 2007, 16:28

Est-ce que je peut faire la meme méthode sous linux? Je veut dire décompiler le tout dans un dossier et lancer des commandes par PHP
Normalement, sans problème :)
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphant du PHP | 248 Messages

12 août 2007, 16:37

Je me suis rendu sur le site officiel et dans download je vois tout plein de fichier et je suis un peu perdu. (c'est des fichiers en C)
Sur sourceforge j'ai le ffmpeg-php

Et sur le net je trouve des infos que pour installer ffmpeg-php sous linux
Pour l'utiliser sous linux je dois utilisé quel fichier?

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

12 août 2007, 17:14

Cherches une version binaire de FFmpeg pour Linux.
Si tu n'en trouves pas alors il faut que tu compiles les sources (mais là je ne pourrai pas te guider, il existe plusieurs tuto sur le net qui pourront te servir).

Si tu utilises Debian, FFmpeg est dispo via apt-get:
http://packages.debian.org/cgi-bin/sear ... rds=ffmpeg
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphant du PHP | 248 Messages

12 août 2007, 17:28

salut arthur je suis sous fedora.

Donc tout ce dont j'ai à faire c'est de prendre le binaire de ffmpeg pour fedora puis je lance les requetes exec() vers ou?

merci encore :)

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

12 août 2007, 18:46

Donc tout ce dont j'ai à faire c'est de prendre le binaire de ffmpeg pour fedora puis je lance les requetes exec() vers ou?
Vers le binaire, en général ça marche mieux... :lol:
Quand tout le reste a échoué, lisez le mode d'emploi...

ViPHP
ViPHP | 5924 Messages

12 août 2007, 19:18

exec("ta_commande_shell");
Pour la commande shell, tu fais des tests en ligne de commande pour charger un fichier via le client mysql, et quand tu as trouvé la bonne commande, tu copies dans ton script.

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

13 août 2007, 00:33

charger un fichier via le client mysql
gnein? :-k
Quand tout le reste a échoué, lisez le mode d'emploi...

ViPHP
ViPHP | 5924 Messages

13 août 2007, 02:11

Bah exécuter un fichier de requètes…

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

13 août 2007, 09:13

Bah exécuter un fichier de requètes…
On parle de FFMPEG dans ce topic... j'ai pas vu le rapport avec MySQL... #-o
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphant du PHP | 248 Messages

13 août 2007, 10:51

lol salut arthur,
merci de ton aide. Effectivement MySQL viens faire tache. Bon pas grave je te remercie encore pour ton aide. Je vais faire l'installation via SSH. J'espère juste ne pas faire planter le serveur.

C'est fait
Modifié en dernier par moileraz le 13 août 2007, 11:37, modifié 1 fois.