Foros del Web » Programando para Internet » PHP »

Streaming real con AVI (XVID) y php

Estas en el tema de Streaming real con AVI (XVID) y php en el foro de PHP en Foros del Web. Hola! Tengo una web con vídeos, los cuales están fuera del directorio visible por el usuario. De esta manera, no hay forma que se los ...
  #1 (permalink)  
Antiguo 10/04/2010, 15:13
 
Fecha de Ingreso: febrero-2006
Mensajes: 20
Antigüedad: 18 años, 2 meses
Puntos: 0
Streaming real con AVI (XVID) y php

Hola!

Tengo una web con vídeos, los cuales están fuera del directorio visible por el usuario. De esta manera, no hay forma que se los descarguen de forma directa.

El caso es que estoy intentando que se vean mediante streaming pero no lo consigo. Los vídeos se pueden ver tanto con el reproductor web (el plugin de microsoft), como por el vlc, y cualquier reproductor preparado para ello.

Os pego el código del plugin de microsoft, aunque no creo que importe mucho...


<object id="Player" name="Player" classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6" standby="Cargando en memoria -> Espere por favor ## Loading please wait a moment" type="application/x-oleobject" height="352" width="288">

<param name="URL" value="reproductirvideo.php" ref>

<param name="AutoStart" value="0">

<param name="rate" value="1">



<param name="balance" value="0">

<param name="currentPosition" value="0">

<param name="defaultFrame" value>

<param name="playCount" value="1">

<param name="currentMarker" value="0">

<param name="invokeURLs" value="-1">

<param name="baseURL" value>

<param name="volume" value="50">

<param name="mute" value="0">



<param name="uiMode" value="full">

<param name="stretchToFit" value="0">

<param name="windowlessVideo" value="0">

<param name="enabled" value="-1">

<param name="enableContextMenu" value="-1">

<param name="fullScreen" value="0">

<param name="SAMIStyle" value>

<param name="SAMILang" value>

<param name="SAMIFilename" value>



<param name="captioningID" value>

<param name="enableErrorDialogs" value="0">

<param name="_cx" value="12700">

<param name="_cy" value="11536">

<embed name="Player" src="reproductirvideo.php" type="application/x-mplayer2" showc="" showstatusbar="1" autosize="true" loop="true" enablec="" 0="" displaysize="0" pluginspage="http://www.microsoft.com/Windows/Downloads/Contents/Products/MediaPlayer/" height="436" width="480"></object>



</div>



El problema viene dado por que los vídeos son bastante grandes (hasta 300MB), y no se visualizan, hasta que no terminan de descargarse totalmente. Es decir, se ve la pantallita del web player en negro, y comienza a poner 1%, 2%, etc... Hasta que se carga del todo, y comienza a verse el vídeo. Pero claro, ya os podéis imaginar el tiempo que tarda en bajarse un vídeo de estos xD

Os pego el código con el que muestro los vídeos:

header ( 'Content-Type: video/x-msvideo' );
header ( 'Content-Disposition: inline; filename=' . $arch.$extension );
header("Content-length: " . filesize($ruta));
readfile($ruta_total);

También lo he intentado añadiendo las cabeceras:

header('X-Pad: avoid browser bug');
header('Cache-Control: no-cache');

O cambiando el readfile por:

$fp=fopen($ruta, "r");
fpassthru($fp);

En todos los casos se produce el mismo efecto, el reproductor espera a que termine de cargarse el video (totalmente), y entonces comienza a reproducirlo.

No tengo acceso directo al apache del servidor, por lo tanto quedan descartadas opciones como ffmpeg, para convertirlo a flv por ejemplo...

¿Alguien sabe si esto tiene solución o es imposible realizarlo?
Con los wmv normalmente si que se pueden visualizar por streaming, pero tengo muchísimos vídeos, y no es plan de pasarlos todos a wmv. (Además que no me gusta dicho formato)

Tal vez con divx.. se pueda, porque cuando existía stage6, son su web player si que permitía esto, pero claro, también tendría que hacer una conversión.... Así que en último caso, ¿alguien conoce algún software que sea capaz de coger todos los vídeos de un directorio (con subdirectorios), y pasarlos exactamente con la misma calidad y la misma resolución que utiliza para cada vídeo?
(Aunque tal vez esta pregunta vaya en otro sitio :P )


Muchas gracias a todos!
  #2 (permalink)  
Antiguo 10/04/2010, 15:31
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: Streaming real con AVI (XVID) y php

Entiendo que lo mejor es que uses FLASH para estos casos. Que te permite ver el video mientras se va cargando.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 11/08/2010, 14:31
 
Fecha de Ingreso: febrero-2006
Mensajes: 20
Antigüedad: 18 años, 2 meses
Puntos: 0
Respuesta: Streaming real con AVI (XVID) y php

Hola!

Se me olvidó decir que no utilizaba flash más que nada, porque ya tenía una base de datos bastante grande, y me iba a ser imposible pasarlos a formato flash. Dicho esto he de decir que lo dejé por un tiempo, pero aún sigo con la misma duda :P

De todas formas, si en algún momento consigo resolverla la postearé

Etiquetas: avi, real, streaming
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 07:10.