Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Subir vídeo, convertir y reproducir

Estas en el tema de Subir vídeo, convertir y reproducir en el foro de PHP en Foros del Web. Buenas tardes, soy nuevo en esto del php y me surgen varias dudas, actualmente estoy utilizando como servidor una máquina virtual de Azure, puesto que ...
  #1 (permalink)  
Antiguo 23/04/2016, 06:25
 
Fecha de Ingreso: abril-2016
Mensajes: 15
Antigüedad: 7 años, 11 meses
Puntos: 0
Subir vídeo, convertir y reproducir

Buenas tardes, soy nuevo en esto del php y me surgen varias dudas, actualmente estoy utilizando como servidor una máquina virtual de Azure, puesto que me es gratuíto durante unos meses.

Lo que estoy intentando hacer, lo desarrollo por pasos:

Primeramente la página muestra un formulario de subida de vídeo, para lo cual he creado el siguiente código sencillo:

Código HTML:
 <form enctype="multipart/form-data" action="subir_videos.php" method="POST"> Elige un video:

 <input name="videofile" type="file" /> 
 <input type="submit" value="Upload Video" />

 </form> 
y que accede a un script php que sube el vídeo a mi servidor

Código PHP:
<?php 

$path 
"/var/www/base/videos/"

$path $path basename$_FILES[''videofile''][''name'']);

 if(
move_uploaded_file($_FILES[''videofile''][''tmp_name''], $path)) 

{ echo 
"Subida correcta "basename$_FILES[''videofile''][''name'']); }
 
 else
     
{ echo 
"Error al subir"; }

 
?>

El primer problema que me surge, es que observo que el vídeo de prueba que utilizo para testear, de tamaño 1MB, llega al 100% y el navegador me devuelve este error:

La página IP_SERVIDOR no funciona

La página IP_SERVIDOR no puede procesar esta solicitud ahora.
500

Donde IP_SERVIDOR es la IP de mi servidor Azure.




Seguidamente lo que me gustaría hacer con el vídeo subido es convertirlo con ffmpeg a un formato estándar para que cualquier navegador lo pudiese reproducir a través de Wowza y lo listase bajo el formulario de subida anterior.



Gracias a todos.
  #2 (permalink)  
Antiguo 23/04/2016, 07:32
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 15 años, 11 meses
Puntos: 2534
Respuesta: Subir vídeo, convertir y reproducir

Cita:
Seguidamente lo que me gustaría hacer con el vídeo subido es convertirlo con ffmpeg a un formato estándar para que cualquier navegador lo pudiese reproducir a través de Wowza y lo listase bajo el formulario de subida anterior.
Por favor: un problema a la vez, primero debes resolver el upload y luego lo demás.

Ahora volviendo lo que dices inicialmente, creo que tu código tiene graves errores de sintaxis.

Es decir, usas dos apostrofes como si fueran comillas ¿dobles?

El mismo resaltado de sintaxis te lo está indicando: corrige las comillas.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 23/04/2016, 07:40
 
Fecha de Ingreso: abril-2016
Mensajes: 15
Antigüedad: 7 años, 11 meses
Puntos: 0
Respuesta: Subir vídeo, convertir y reproducir

Cita:
Iniciado por pateketrueke Ver Mensaje
Por favor: un problema a la vez, primero debes resolver el upload y luego lo demás.

Ahora volviendo lo que dices inicialmente, creo que tu código tiene graves errores de sintaxis.

Es decir, usas dos apostrofes como si fueran comillas ¿dobles?

El mismo resaltado de sintaxis te lo está indicando: corrige las comillas.
Perdón, me equivoqué al copiar del php que no era.

Ahora me devuelve el Error al subir el vídeo.


tengo una carpeta videos creada en el directorio /var/www/html/base/
  #4 (permalink)  
Antiguo 23/04/2016, 07:46
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 15 años, 11 meses
Puntos: 2534
Respuesta: Subir vídeo, convertir y reproducir

Pues sólo tu sabes que rutas debes usar, nosotros no.

Según el manual debería mostrar un warning cuando no se puede guardar:
Cita:
Iniciado por http://php.net/manual/es/function.move-uploaded-file.php
Valores devueltos ¶

Devuelve TRUE en caso de éxito.

Si filename no es un archivo válido subido, no sucederá ninguna acción, y move_uploaded_file() devolverá FALSE.

Si filename es un archivo subido válido, pero no puede ser movido por algunas razones, no sucederá ninguna acción, y move_uploaded_file() devolverá FALSE. Adicionalmente, se emitirá un aviso.
Aunque probablemente te pase el segundo caso ¿la ruta de destino es válida?

Te sugiero activar el reporte completo de errores de php en tu servidor, o revisar los logs.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 23/04/2016, 07:53
 
Fecha de Ingreso: abril-2016
Mensajes: 15
Antigüedad: 7 años, 11 meses
Puntos: 0
Respuesta: Subir vídeo, convertir y reproducir

Cita:
Iniciado por pateketrueke Ver Mensaje
Pues sólo tu sabes que rutas debes usar, nosotros no.
Esta es el directorio donde quiero almacenar los vídeos,"/var/www/base/videos/" y ya está creado, el problema no se si viene derivado de que necesita permisos para guardar ahí el vídeo.

Si es así desconozco cómo dárselos a través de línea de comandos u otro sistema. Uso Putty.
  #6 (permalink)  
Antiguo 23/04/2016, 08:04
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 15 años, 11 meses
Puntos: 2534
Respuesta: Subir vídeo, convertir y reproducir

El problema no se va a mostrar solo, lo debes investigar.

Revisa los logs de error, habilita el reporte de errores, o agrega estas lineas al inicio de tu script:
Código PHP:
Ver original
  1. ini_set('display_errors', 1);

También sería bueno que imprimas cómo quedaría la ruta de destino desde tu código, para ver si de menos es correcta, pues está mal que asumas algo así sin verificarlo antes.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #7 (permalink)  
Antiguo 23/04/2016, 08:11
 
Fecha de Ingreso: abril-2016
Mensajes: 15
Antigüedad: 7 años, 11 meses
Puntos: 0
Respuesta: Subir vídeo, convertir y reproducir

Cita:
Iniciado por pateketrueke Ver Mensaje
Revisa los logs de error, habilita el reporte de errores, o agrega estas lineas al inicio de tu script:
Warning: move_uploaded_file(videos/video.mp4): failed to open stream: Permission denied in /var/www/html/base/upload_videos.php on line 10

Warning: move_uploaded_file(): Unable to move '/tmp/phpPZqqXo' to 'videos/video.mp4' in /var/www/html/base/upload_videos.php on line 10
Error when uploading the video.


Es cómo me temo una cuestión de permisos no?

La línea 10 tras insertar el código que me sugerías es esta:

if(move_uploaded_file($_FILES['videofile']['tmp_name'], $path))
  #8 (permalink)  
Antiguo 23/04/2016, 08:14
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 15 años, 11 meses
Puntos: 2534
Respuesta: Subir vídeo, convertir y reproducir

Cita:
Es cómo me temo una cuestión de permisos no?
Pues sí, el mismo error te lo está indicando, investiga al respecto.

Lo digo porque yo nunca he usado Azure, pero teniendo acceso a la linea de comandos debería ser simple.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #9 (permalink)  
Antiguo 23/04/2016, 11:50
 
Fecha de Ingreso: abril-2016
Mensajes: 15
Antigüedad: 7 años, 11 meses
Puntos: 0
Respuesta: Subir vídeo, convertir y reproducir

Cita:
Iniciado por pateketrueke Ver Mensaje
Pues sí, el mismo error te lo está indicando, investiga al respecto.

Lo digo porque yo nunca he usado Azure, pero teniendo acceso a la linea de comandos debería ser simple.
He hecho chmod 777 tanto al directorio /var/tmp como a /var/www/html y los subdirectorios usado y sigo igual
  #10 (permalink)  
Antiguo 23/04/2016, 11:58
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 15 años, 11 meses
Puntos: 2534
Respuesta: Subir vídeo, convertir y reproducir

Pues si yo fuera tu ya habría preguntado en los foros de Azure por eso...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #11 (permalink)  
Antiguo 23/04/2016, 13:55
 
Fecha de Ingreso: abril-2016
Mensajes: 15
Antigüedad: 7 años, 11 meses
Puntos: 0
Respuesta: Subir vídeo, convertir y reproducir

Cita:
Iniciado por pateketrueke Ver Mensaje
Pues si yo fuera tu ya habría preguntado en los foros de Azure por eso...
la obcecación de la informática entiendo (y mi nulidad)

tenía escrito /www/var en vez de /var/www

mil perdones :(

ahora toca convertir el vídeo que se suba en cualquier formato con ffmpeg al formato más estándar para que lo reproduzcan los navegadores
  #12 (permalink)  
Antiguo 23/04/2016, 16:36
 
Fecha de Ingreso: abril-2016
Mensajes: 15
Antigüedad: 7 años, 11 meses
Puntos: 0
Respuesta: Subir vídeo, convertir y reproducir

Vuelvo a la carga, ahora ya he conseguido subir el vídeo, lo he convertido con ffmpeg y me gustaría copiarlo al directorio donde Wowza almacena los vídeos:

Estoy intentando copiar el fichero convertido a ese directorio pero no hay manera.

Código PHP:
  $convertir=(exec("ffmpeg -i $uploadfile -s 320*240 $nombre.flv 2>&1",$output)); 

  echo 
"<br>Nuevo fichero: $nombre.flv <br><br>"


if (
copy('/$nombre.flv','/usr/local/WowzaStreamingEngine-4.4.1/content/$nombre.flv')) 
{
    echo 
"El fichero ha sido copiado en Wowza\n";
} else {
    echo 
"Se ha producido un error al intentar copiar el fichero\n";

Me devuelve el siguiente error:
Warning: copy(/$nombre.flv): failed to open stream: No such file or directory in /var/www/html/probando2/upload2.php on line 21

Siendo la línea 21 la del "if " que os copio. He probado con comillas dobles, pues he googleado antes de venir a dar la tabarra y no me sirvió :D


Graciaas
  #13 (permalink)  
Antiguo 23/04/2016, 17:20
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 15 años, 11 meses
Puntos: 2534
Respuesta: Subir vídeo, convertir y reproducir

Por favor abre otro tema para tratar tu segundo problema, saludos.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Etiquetas: formulario, reproducir
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:02.