Antes de comenzar este artículo, y para que nadie se haga ilusiones, aclararé que no es posible hacer streaming por tu cuenta a través de las conexiones de datos de las operadoras tradicionales. Tienen esos puertos bloqueados para que sólo ellas o quien ellas quieran pueda ofrecer este servicio, de ahí la exclusividad de los canales de televisión en el móvil que tanto promocionan y que no son más que servicios de streaming. Si cualquiera pudiese hacerlo se les terminaría el chollo, aunque siempre queda el asunto del tráfico de datos, a ti te lo cobrarían íntegramente mientras que en sus canales no, ya pagas la suscripción mensual.
No lo he probado con las nuevas operadoras virtuales ni con Yoigo, aunque es posible que con éstas sí que funcione. De todos modos, con la proliferación de terminales con wifi se abre un nuevo mundo de posibilidades sin límite, entre ellos el streaming.
En esta ocasión utilizaremos un servidor Linux (Centos5.2) y como servidor de streaming, Darwin Stream Server.
Darwin es la versión Open Source del QuickTime Streaming Server de Apple, sí, habéis oído bien, Apple, la del iPod y la del iPhone, y permite enviar streamings a través de los protocolos estandar RTP y RTSP. Pero lo que hace más interesante a Darwin sobre otros servidores de streaming es que maneja perfectamente archivos MPEG4 y 3gpp, algo imprescindible si queremos enviarlos a dispositivos móviles
Puedes descargar aquí el archivo de instalación para Linux. Una vez lo descomprimes, la instalación es extramadamente sencilla, sólo debes ejecutar el archivo Install y un asistente te guiará. Cuando haya terminado tendrás tu servidor de streaming funcionando. Vamos a probarlo
La instalación deja todos los archivos de configuración en /etc/streaming y algunos vídeos de ejemplo en /usr/local/movies, ruta por defecto para los archivos. Puedes modificar esta ruta en el archivo /etc/streaming/streamingserver.xml buscando el parámetro de nombre “movie_folder”. Lo dejaremos como viene por defecto.
Si no has iniciado todavía tu servidor, hazlo con el siguiente comando:
/usr/bin/perl /usr/local/sbin/streamingadminserver.pl
Si todo ha ido bien puedes probar los vídeos de ejemplo. Abre tu Quicktime Player y abre la url:
rtsp://tuip/sample_h264_300kbit.mp4
Si has seguido bien los pasos verás un vídeo de muestra de QuickTime. Tu servidor de streaming ya está funcionando.
Prueba ahora alguno de tus vídeos 3gpp. Copialos a la ruta correspondiente de tu servidor, /usr/local/movies y llámalos con la url anterior cambiando el nombre del archivo:
rtsp://tuip/nombre.3gp
Deberías ver tu vídeo en el Quicktime Player. Prueba ahora desde tu móvil. Abre el Real Player (o el software que traiga para visualizar vídeos por streaming) e introduce esa dirección.
Cierto, no funciona 😛 . No podía ser tan simple 🙂 …
Preparando los archivos para visualizar en el móvil
Para visualizar los vídeos 3gpp y mp4 en el móvil a través de Darwin han de someterse a un proceso denominado hint.
Necesitaremos una nueva herramienta que haga este proceso, en este caso será el paquete gpac. Descargamos e instalamos el software y tendremos el programa que necesitamos, MP4Box. Ahora simplemente debemos ejecutar la siguiente instrucción en todos nuestros vídeos:
/usr/local/bin/MP4Box -3gp -mtu 1450 -hint video.3gpp
Ya está. Si vuelves a intentar ver el vídeo en tu móvil comprobarás como ahora sí que se visualiza.
Creando gráficas del servidor Darwin en Cacti
Hace algunos meses os conté como monitorizar tu servidor con Cacti. Vamos pues a añadir gráficas de nuestro servidor de streaming para poder monitorizar la actividad del mismo.
Lo primero que debemos hacer será habilitar el acceso remoto desde la IP de nuestro monitor Cacti a la consola de administración del servidor, el “remote admin”. Para ello editamos /etc/streaming/streamingserver.xml, localizamos el módulo QTSSAdminModule y en el parámetro IPAccessList introducimos la IP correspondiente, ponemos a false LocalAccessOnlyenable_remote_admin y a true. Habrá que reiniciar el servidor. Quedaría tal que así.
<MODULE NAME="QTSSAdminModule" > <PREF NAME="IPAccessList" >XXX.XXX.XXX.XXX</PREF> <PREF NAME="Authenticate" TYPE="Bool16" >true</PREF> <PREF NAME="LocalAccessOnly" TYPE="Bool16" >false</PREF> <PREF NAME="RequestTimeIntervalMilli" TYPE="UInt32" >50</PREF> <PREF NAME="enable_remote_admin" TYPE="Bool16" >true</PREF> <PREF NAME="AdministratorGroup" >admin</PREF> </MODULE>
Ya tenemos el servidor de streaming listo, ahora tocaremos en el servidor Cacti. Aquí está todo explicado, pero lo repasaremos. Creo recordar que no me funcionaban tal cual las plantillas, así que os dejo las que tengo en funcionamiento. En el archivo encontrarás dos scripts python y dos plantillas. Los scripts debes copiarlos a la carpeta “scripts” de tu instalación Cacti. Los “templates” debes importarlos desde “Import templates” de la inferfaz web.
Con esto ya sólo tendremos que añadir las gráficas correspondientes a la máquina que vamos a monitorizar, DSS Current Bandwidth y DSS – Current Connection Count. Nos solicitará rellenar algunos datos:
- Servidor: ip de la máquina con el Darwin.
- Puerto: si no has cambiado nada, el 554.
- Usuario: usuario de administración del servidor Darwin que hayas configurado al instalarlo.
- Clave: la contraseña del usuario anterior.
Tendremos dos gráficas, número de conexiones y ancho de banda consumido.
No me hago responsable del gasto en tráfico de datos con tu operadora que te suponga probar lo expuesto en este artículo 😛 . Otro día veremos como generar vídeos 3gpp bajo demanda a partir de casi cualquier otro formato.
Para Windows existe mycast.orb.com/ .
Puedes hasta ver todos los vídeos, mp3 y hasta la tele en tu móvil procedentes de tu ordenador.
» autor: PeterDeb
Porque algo que se puede hacer en linux alguien querria hacerlo en windows?
» autor: porretiunique
Muchas gracias por el articulo. Una pregunta, como hago para que que en lugar de poner videos, pueda poner a transmitir en vivo la informacion capturada por una camara ip, ejemplo en una almacen y asi, se pueda ver en tiempo real en el movil ??
Necesitas codificar la señal en vivo y enviarla al DSS para que la transmita, yo lo hago con VLC.
El VLC toma la entrada en vivo y la transcodifica, luego haces un stream al host donde tienes el DSS y guardas el archivo sdp en la carpeta movies.
Finalmente desde el movil accedes (con un link en una pagina o algo asi) a rtsp://host_del_dss/archivo.sdp
Espero te sirva al menos para empezar a investigar un poco mas 😉
Saludos
Bueno yo soy principiante en eso del video streaming, lo que lei me pareció superinteresante pero antes de hacerlo a un movil deseo que se vea en tv puedo usar el mismo servidor darwin segun se, pero no se que ventajas y desventajas tenga manejar java tv api o freedom for media in java por favor asesorenme se los agradeceria muchisisismo
Saludos
Claudio, podrias poner un ejemplo de la linea que usas con VLC para mandar el Streaming al Darwin y asi capturarlo por el Celular?
Muchas gracias por tu ayuda
Alejandro
http://www.linuxiso.com.ar
me gusto mucho el articulo. quisiera saber si al utilizar cacti para monitorizar dos servidores de streaming(darwin y helix) de las graficas observadas saber cual es el mejor y elegir solo uno.
me gustaria saber con que graficas uno sabe eso.
los clientes en mi caso poueden ser portatiles o celulares
Hola Luz,
No acabo de entender exactamente la información que necesitas.
La elección entre darwin o helix no te la van a dar las gráficas, éstas sólo muestran información estadísticas de usuarios que acceden y ancho de banda que consume el servidor.
Tu elección debe basarse más en cual se adapta más a tus necesidades.
Buenas Osus
Necesito hacer streaming de videos mp4 para poder ser vistos desde dispositivos móbiles, por lo que ya instale en mi servidor el darwin, pero al tratar de reproducir los videos en Real Player para probar solo me reproduce el audio del video. Los videos que necesito reproducir son videos mp4 ya grabados, por el momento estoy utilizando los ejemplos que vienen en el darwing.
Alguna idea?
De antemano muchas gracias por cualquier ayuda que pueda darme.
Hola Alexander,
No sabría decirte qué ocurre.
Si descargas los vídeos a tu teléfono. ¿se ven bien? es decir, sin streaming, teniéndolos en la memoria del teléfono.
tengo una dauda…..para utilizar el cacti debe ser instalado en el mismo pc del servidor darwin o cualquier otro pc? perdon la ignorancia pero soy nueva todo este tema
Lo primero que debemos hacer será habilitar el acceso remoto desde la IP de nuestro monitor Cacti a la consola de administración del servidor, el “remote admin”.
respecto a lo alnterior que dijo……abri mi el archivo /etc/streaming/streamingserver.xml de mi servidor darwin y esta en blanco :S……………help me
AYUDA!!!!!!!!!!!! no entiendo la parte de habilitar el acceso remoto :s… el archivo /etc/streaming/streamingserver.xml ESTA VACIO??? debo agregar el codigo que muestra ahi o como puedo hacer esto
Hola Luz o Yessica.
El mio no lo está, no puedo decirte mucho más.
¿Tienes el servidor instalado en esa ruta?
¿El archivo no existe o está vacío? No es lo mismo.
el archivo si existe en la ruta que mencionanste pero al abrirlo se encuentra vacio.
Hola osus… el archivo si se encuentra en la ruta que mencionas pero se encuentra vacio… bueno debo decir que lo abro con un editor de texto supongo que si es?? pero igual esta vacio esto a que se debe???
Hola yessika,
No se porqué estás vacío, no te puedo ayudar.
¿Has probado a buscar archivos con ese nombre, por si estuviese en otro sitio? No se me ocurre otra cosa.
video streaming is great but it would require lots of bandwidth to do some HD video streaming`;`
Por que se copian los artículos?
http://www.planetacodigo.com/planeta/8272/haciendo-streaming-de-videos-a-moviles/
@Guillermo,
Fíjate en la fuente origen del artículo de Planeta Codigo.
PC es una agregador de contenidos de otros.