Ver Mensaje Individual
  #1 (permalink)  
Antiguo 17/03/2010, 04:56
Avatar de estibaliz2006
estibaliz2006
 
Fecha de Ingreso: noviembre-2006
Mensajes: 439
Antigüedad: 17 años, 5 meses
Puntos: 1
subir video y convertirlo en flv

Hola a todos. estoy interesada en crear una aplicación que suba videos de cualquier extensión al servidor y éste automáticamente los convierta en formato flv.

Para ello he instalado la extensión ffmpeg en php. el caso es que tengo el form, el proceso, pero la aplicación no hace nada. y desconozco el motivo. Aquí os dejo el código para ver si me podéis echar una mano:

archivo form.php
Código PHP:
<?php
echo '<form action="upload.php" method="post" enctype="multipart/form-data">
<input type="FILE" name="archivo">
<input type="submit" value="Subir">  
</form>'
;
?>
archivo upload.php
Código PHP:
<?php
// Creo una matriz de los archivos permitidos
$matriz[0]="3g2";
$matriz[1]="3gp";
$matriz[2]="aac";
$matriz[3]="aiff";
$matriz[4]="amr";
$matriz[5]="asf";
$matriz[6]="avi";
$matriz[7]="flv";
$matriz[8]="mov";
$matriz[9]="mp4";
$matriz[10]="mpeg";
$matriz[11]="mpeg1video";
$matriz[12]="mpeg2video";
$matriz[13]="mpegvideo";
$matriz[14]="rm";
$matriz[15]="vob";
$matriz[16]="wmv";

if(!
$_GET['output'] or !$_GET['soutvideo']){
$ruta_server="movies/"//Ruta donde quieras que se guarde el video temporal
$nombre_temporal=$_FILES['archivo']['tmp_name'];
$nombre_archivo $_FILES['archivo']['name'];
$tipo_archivo $_FILES['archivo']['type'];
$tamano_archivo $_FILES['archivo']['size'];
$ubicacion $ruta_server.$nombre_archivo;

if(
is_uploaded_file($nombre_temporal)){
$tamanoKB $HTTP_POST_FILES['archivo']['size']/1024;
$ext strtolower(array_pop(explode(".",$nombre_archivo)));
$clave array_search($ext$matriz);

if (!
$clave and ($tamanoKB 50000)){

echo 
"Lo sentimos pero no se pudo subir el archivo porque no tiene el formato correcto o el peso del archivo no es el indicado";

echo 
" Los Formatos permitidos son: 3g2, 3gp, aac, aiff, amr, asf, avi, flv ,mov ,mp4, mpeg, mpeg1video, mpeg2video, mpegvideo, rm, vob, wmv";

echo 
"El peso Maximo de los archivos es 50 Mb";
}
else{
//Si subió correctamente el archivo
if(move_uploaded_file($_FILES['archivo']["tmp_name"],$ubicacion))
{
// Guardas el nombre del archivo en la base de datos con la variable $nombre_archivo


$aleatorio=rand(0,10000);
$nom=$fecha."_".$aleatorio;
$nameImage="img_".$nom;
$videoname=$nombre_archivo.$nom;
$ffmpegPath "/usr/bin/ffmpeg";

// Creo la clase (eh usado esto ffmpeg-php)
$ffmpegObj = new ffmpeg_movie($ubicacion);
// Guardando los parametros del video con las variables
$srcFPS $ffmpegObj->getFrameRate();
$srcAB intval($ffmpegObj->getAudioBitRate()/1000);
$srcAR $ffmpegObj->getAudioSampleRate();

//convierto el video al formato flv (formato usado por youtube)
exec($ffmpegPath " -i " .$ubicacion." -ar 22050 -ab " $srcAB " -f flv -acodec mp3 -s 400x320 video/".$videoname.".flv");

// convierto el primer frame del video en imagen para tener un thumbnail de video
exec($ffmpegPath." -i ".$ubicacion." -vframes 1 -s 100x100  video_imagen/".$nameImage."%d.jpg 2>&1",$soutvideo);

//Borro el archivo temporal del video
if(file_exists($ubicacion)){
$archivo"video_temp/".$nombre_archivo;
unlink($archivo);
$_SESSION['Valor']=1;

}
}
}

?>
bien. pues subo el video pero no hace nada de nada. que es lo que sucede?
__________________
desgraciadamente no conozco php ni la mitad de lo que lo conocen ustedes y eso es menos de la mitad de lo que yo querria y lo que yo querria es menos de la mitad de lo que la mitad de ustedes conocen