2009-09-16 11 views
0

Je suis intéressé à installer ffmpeg ou quelque chose sur mon serveur afin que je puisse télécharger des fichiers, les encoder automatiquement en FLV et ensuite servir un lecteur intégré à utiliser sur mes pages.Comment encoder une vidéo en utilisant PHP?

Le problème est que je ne sais pas par où commencer. Je ne veux pas devoir passer des jours à coder un service d'encodage basé sur le Web, car je suis plus intéressé par l'utilisation d'une solution prête à l'emploi. Mes recherches jusqu'à présent m'ont conduit à FFMPEG et peut-être Gallery2: il a un ffmpeg intégré et le cadre de la galerie 2 fournit des comptes d'utilisateurs et des installations de téléchargement FTP.

Quelqu'un connaît-il d'autres solutions d'encodage open source que vous pouvez installer sur Linux?

Répondre

0

Il y a aussi memcoder, qui fait la même chose que ffmpeg fait, mais vous devra le code de la colle qui lie ffmpeg/memcoder, PHP et les vidéos mises en ligne ensemble.

Le flux de travail général serait quelque chose comme:

  • forme actuelle à l'utilisateur avec PHP
  • fichier Upload par post
  • Vérifier le fichier téléchargé est une vidéo à la fois client et Serverside
  • Magasin téléchargé vidéo un dossier connu
  • À partir de PHP, exécutez une commande CLI avec tous les paramètres désirés et stockez le fichier dans un autre emplacement connu
  • Supprimer fichier original si le succès (en option)
  • magasin dans DB le chemin vers le fichier créé
  • Servir le contenu
  • Profit!
+0

ouais j'espérais éviter d'avoir à faire des codes personnalisés si possible - j'aimerais simplement configurer une plateforme existante et minimiser ma charge de travail. – MrFidge

0

Vous pouvez également jeter un oeil à VLC puisqu'il peut transcoder et agir comme serveur pour vos flux FLV. L'application principale est une interface utilisateur pour lire la vidéo, mais elle peut être invoquée à partir de la ligne de commande pour faire le service - plutôt que de jouer.

De même, libvlc est la bibliothèque C sur laquelle VLC est écrite. VLC est basé sur ffmpeg et pourrait juste rendre votre vie un peu plus facile.

+0

Hiya, j'ai jeté un coup d'oeil à ça mais ça ne fait aucune mention de FLV, ce qui serait mon format web préféré je pense. – MrFidge

+1

Vous avez raison, je ne peux que le voir comme un format d'entrée. Cependant, cela fonctionne vraiment - j'ai travaillé sur un projet qui convertit la vidéo brute H.264 en FLV en utilisant VLC, donc je suis absolument certain! – chrism1

0

Vous devriez vérifier les docs pour votre encodeur choisi, j'ai utilisé ffmpeg avec succès dans le passé. Ensuite, votre flux de travail ressemble à ceci.

  • Manipulez le téléchargement de fichiers avec PHP
  • Utilisez exec() à débourser à l'encodeur et encoder la vidéo.
  • Au retour exec(), vous pouvez alors servir la vidéo dans votre page

ffmpeg était vraiment facile de se lever et courir avec quelques arguments de ligne de commande.

+0

dois dire que la ligne de commande a l'air assez simple! Encore une fois je suis vraiment à la recherche d'une solution packagée si possible. – MrFidge

+1

Je ne pense vraiment pas que vous allez trouver une solution packagée. et comme la ligne de commande ne devrait vous prendre que 10 minutes pour comprendre exactement les paramètres que vous recherchez, je ne perdrais pas mon temps à chercher un paquet qui n'existe probablement pas. –

+0

Je crains que vous ayez raison, mais j'espère que vous ne l'êtes pas! Je n'ai pas vraiment le temps pour ça mais il me semble que je devrais le mettre correctement sur la liste des emplois. Merci pour l'aide! – MrFidge

Questions connexes