jueves, 24 de abril de 2014

Imagenio en cualquier dispositivo (II) - Tráfico multicast a unicast

Ei, siguiendo el tema de Imagenio...
Ahora toca manipular los paquetes multicast que viajan por nuestra red para que sean visibles a través de una dirección http, es decir un protocolo unicast.

Se necesitará una máquina con alguna distribución de linux, yo he optado por una Rasperry con Raspbian, ¿Qué porqué? , a mi me interesa que esta conexión esté operativa 24/7, optar por un dispositivo que apenas llega a los 40 euros es una buena estrategia; su consumo es muy reducido (basta con un cargador de smartphone), el mantenimiento nulo y su configuración sencilla (gracias a su popularidad y su extensa comunidad).

Primero adquirir privilegios, su, sudo -i o lo que os haga falta y conectar el cable de red (no sirve que el servidor proxy vaya por wifi, el cliente da igual el método de conexión).

Lo que tendremos que hacer es descargar el servidor proxy que convertirá el trafico RTP o UDP con señal IPTV a HTTP, udpxy .
(en esta prueba lo haré desde un Debian limpio)

wget http://www.udpxy.com/download/1_23/udpxy.1.0.23-9-prod.tar.gz



El segundo paso será descomprir
tar -xzvf udpxy.1.0.23-9-prod.tar.gz mir:



Ahora necesitaremos compilar e instalarlo, para eso se entra en la carpeta donde se han descomprimido todos los ficheros y compilamos con make e instalamos con make install (si no podeis instalar build-essential, apt-get install build-essential).


Ya solo queda ejecutarlo (con privilegios siempre).
udpxy -p 5555 (puedes usar el puerto que te de la gana)
Ahora el problema viene cuando se cae nuestra máquina o por lo que sea hemos de reinciar, el proxy no estará iniciado y para solucionar esto y lograr un reboot de udpxy crearemos un script en /etc/network/if-up.d/

Creo el fichero
nano /etc/network/if-up.d/rebootUDPXY



Y le añado lo siguiente: 

#!/bin/bash
udpxy -p 5555
Guardamos con Ctrl+O y salimos con Ctrl+X

Le damos permisos...
chmod 755 /etc/network/if-up.d/NombreDelScript


Y reiniciamos para hacer la prueba
reboot

Podremos ver el estado desde cualquier ordenador de la red local añadiendo en la dirección del explorador http://la_ip_del_servidor_udpxy:puerto/status 
(muy recomendable usar ip estática)


Para preparar la lista de canales de imagenio cabe decir que van actualizando así que hay que estar un poco al tanto (por google hay mucho respecto al tema) y el reproductor que uso es vlc.

Descargar la lista de canales, ahora si editamos el fichero se puede ver que tenemos algo así http://ip:puerto/rtp/239.0.1.4:8208, hemos de buscar y reemplazar en el fichero, ip reemplazarlo por la ip del servidor proxy (hacer ifconfig para saber la ip) y puerto por el puerto que asignamos arriba.
Si lo hacéis desde linux se puede usar el comando sed -i


En windows puedes usar cualquier editor de texto como el bloc de notas, sublime text, notepad++

Si ejecutamos el fichero m3u con vlc ya estaremos viendo Imagenio


Ahora podemos ver Imagenio en área local, es decir solamente en nuestro hogar, en la siguiente entrada incluiré el acceso por VPN y la configuración de los clientes en android y windows.

Imagenio en cualquier dispositivo (I) - Como funciona Imagenio
Imagenio en cualquier dispositivo (II) - Tráfico multicast a unicast

1 comentario:

  1. no funciona tu tutorial, dice vlc es incapaz de abrirlo, ni siquiera es capaz de abrir emisiones rtp propias realizadas con ffmpeg ni con otro vlc

    ResponderEliminar