Convertir videos a FLV con PHP usando ffmpeg en CentOS con CPanel

Desde hace relativamente poco tiempo y sobre todo a raíz del “efecto Youtube”, cada vez es más común encontrarnos con proyectos web 2.0 que permiten a los usuarios subir sus propios vídeos. Y por lo tanto también encontrarnos con el problema de la variedad de formatos. Hace ya tiempo que el formato FLV de flash se convirtió en el lider indiscutible en Internet y por lo tanto es siempre la primera opción a la hora de abordar uno de estos proyectos. Pero… ¿cómo convierto los videos que han subido mis usuarios a FLV?

Esa es una buena pregunta, que afortunadamente tiene respuesta. Las herramientas necesarias:

– PHP 5
– ffmpeg
– Extensión ffmpeg-php
– FLVTool2

Convertir video a FLV usando PHP

Voy a empezar relatando mi experiencia en la instalación de estas herramientas. En mi caso, en un servidor con Linux CentOS  y CPanel.

añadir repositorio Dag y Rpmforge:

vi /etc/yum.repos.d/dag.repo
Pegar lo siguiente:
[dag]
name=Dag RPM Repository for Red Hat Enterprise Linux
baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag
gpgcheck=1
enabled=1

Añadir

/usr/local/lib

a

/etc/ld.so.conf

y ejecutar

ldconfig -v

Y luego:


rpm -Uhv http://apt.sw.be/redhat/el4/en/i386/rpmforge/RPMS/rpmforge-release-0.3.6-1.el4.rf.i386.rpm
yum install ffmpeg ffmpeg-devel

Instalar ffmpeg-php

– descargarlo y seguir las instrucciones de http://ffmpeg-php.sourceforge.net/

Una vez instalado, deberemos añadir la línea:extension="ffmpeg.so"

al php.ini (en mi servidor está en /usr/local/lib/php.ini, puedes ver dónde está en el tuyo con un phpinfo() ).
Luego reiniciamos Apache y con un phpinfo() podremos comprobar que lo tenemos correctamente cargado.

ffmpeg php

Instalar FLVTool2

– Descargar de http://inlet-media.de/flvtool2 .
– Seguir las instrucciones del README (necesitarás tener instalado ruby. yum install ruby ).

Llegados este punto, tendríamos todas las herramientas necesarias instaladas en nuestro servidor. El siguiente paso, será crear el código PHP necesario para hacer funcionar la maquinaria. Pero eso lo dejo para un siguiente artículo ;)

Publicado por

manuel

Me dedico al desarrollo de aplicaciones. Principalmente trabajo con XHTML, CSS, Javascript, XML, JSON, PHP, MySQL, Linux/MacOS X y Flash actionscript. Intento siempre trabajar con estándares y simplificar el desarrollo y las aplicaciones finales con el objetivo de orientarlas al usuario (que sean útiles y faciliten el trabajo).

2 comentarios sobre “Convertir videos a FLV con PHP usando ffmpeg en CentOS con CPanel”

  1. Hola Oscar,

    básicamente los mismos que el MPlayer (http://www.mplayerhq.hu), puedes ver la documentación para el ffmpeg en http://ffmpeg.mplayerhq.hu/ffmpeg-doc.html .

    Pero los más comunes como AVI, MOV, MPG, etc. funcionan a la perfección (comprobado) :)

    Un ejemplo para sacar una imagen de un frame de una película .mov:

    ffmpeg -y -i test.mov -f image2 -ss 5 -vframes 1 -s 120×90 -an captura.jpg

    Un ejemplo para convertir un video .mov a .flv:

    ffmpeg -i test.mov -ar 22050 -ab 32 -f flv -s 320×240 video.flv

    En mi próximo artículo pondré más detalles, aunque adelanto que una vez tienes todas las herramientas instaladas es realmente sencillo.

    Saludos

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *