portada

Servidor IPTV con Raspberry Pi

Un servidor IPTV, nos permite brindar servicio televisivo a todos los dispositivos conectados a nuestra red local, mediante el add-on PVR Tvheadend o mediante la aplicación TVHClient de android, acompañado de un buen reproductor de video, como MX Player.

Requisitos:

  • Git:

  1. sudo apt install git

  • Convertidor de lista M3U a Tvheadend:

  1. git clone https://github.com/grudolf/m3u2hts.git

  2. cd m3u2hts/

  3. leafpad lista.m3u

  4. Copiamos el contenido de una lista que hayamos descargado, le quitamos cualquier texto incoherente y nos aseguramos que al principio esté la etiqueta #EXTM3U, guardamos.

  5. Ahora ejecutamos el siguiente script python:

  • python m3u2hts.py newformat -i wlan0 -c utf-8 lista.m3u -o service

Instalar Tvheadend

Para instalarlo abrimos la Terminal y escribimos:

  • sudo apt-get install tvheadend

Nos aparecerá un asistente de instalación pidiendonos usuario y contraseña, para no líarnos, elegímos la que viene por defecto en nuestra Raspberry Pi. Estas son:

  1. Usuario: Pi

  2. Contraseña: raspberry

Tras lo cual nos informa que podremos acceder a Tvheadend via HTTP por el puerto 9981 desde Chromium:

Aceptamos y la instalación habrá terminado correctamente.

Configuramos el servidor

Ahora debemos introducír localhost:9981 o la IP:9981 para que nos pida usuario y contraseña el servidor Tvheadend.

A continuación se autoejecutará el asistente donde podremos elegir el idioma, por más que lo pasemos a español, permanecerá en íngles la ínterfaz. Presionamos Save & Next tras seleccionar los idiomas.

En la siguiente pantalla nos pide ingresar la IP de administración indicando que pueden ser varias para cada cliente/usuario, en nuestro caso indicamos 0.0.0.0/0 para loguearnos desde cualquier dispositivo de nuestra red local, además rellenamos los datos del usuario administrador y del usuario común, ambos los llenamos con pi, raspberry.

En la próxima pantalla indicamos cual es nuestro sintonizador (Tuner) si poseemos uno y el tipo de red, en el caso de este tutorial sólo indicamos “IPTV Automatic Network” y damos a Save & Next.

Llego el momento de indicar nuestra URL, descargamos una de la web, indicaremos la ruta de descarga:

Presionamos Save & Next y comenzará el escaneo de canales.

Una vez terminado el escaneo, volvemos a presionar Save & Next, dependiendo de la lista tardará un mayor tiempo. Los muxes son los canales encontrados y los servicios son los canales que logro captar el servidor, no se preocupen si no encuentra todos, luego lo configuraremos para que lea todos, incluso los que no funcionen, obviamente nosotros debemos chequear la lista, para hacer esto de una manera confiable, no es lo mismo que fallen 5 canales por enlaces caídos o por no transmitír las 24hs, a tener en nuestra lista 30 canales que no funcionan, ya que hará horrible la experíencia.

Llego la hora de mapear todos los servicios encontrados, eligiendo:

  • Map all services.

  • Create providers tags.

  • Save & Next.

Tras lo cual presionamos Finish.

Agregamos los canales que falten

La intrefaz se refrescará, vamos a ConfigurationDVB InputsNetworks.

Seleccionamos nuestra lista y veremos que los muxes no coinciden con los services,

entonces elegimos Delete. Haremos trampa, para que registre todos nuestros canales. Luego de borrado, pulsamos Add, en Type elegimos IPTV Automatic Network.

Cambiamos los siguientes valores:

  • Network name: tv o lo que se te ocurra.

  • Maximum # input stream: 300 (depende de su lista, si no saben la cantidad elijan 1000).

  • URL: file:///home/pi/m3u2hts/lista.m3u

  • Character set: AUTO.

  • Scan after creation: Lo destildamos.

  • EIT time offset: Local (server) time.

  • Idle scan muxes: Lo tildamos.

  • Service ID: 1.

Presionamos Apply y luego de dar ok presionamos Save.

Continuamos con la pestaña Muxes:

Iremos a la esquina inferior derecha y cambiaremos el valor 50 por All.

Seleccionamos el primer Mux de la lista, presionamos Shift y sin soltar con el mouse bajamos la barra lateral hasta el último mux, lo seleccionamos y se pondrán todos celestes, soltamos Shift y elegimos Edit.

Modificamos los siguientes parametros:

  • EPG Scan: Disable.

  • Scan status: PEND y lo tildamos.

  • Character set: AUTO y lo tildamos.

  • Service ID: 1 y lo tildamos.

  • Presionamos Apply, ok, Save.

Hacemos lo mismo con la pestaña Service, presionamos Edit:

  • Tildamos Enabled.

  • Automatic checking: Auto check disabled.

  • Tildamos Ignore EPG(EIT).

  • Character set: AUTO y tildamos.

  • Apply, ok, Save.

Ahora elegimos Map all services y nos mapeará el total de canales menos uno que agrega el programa.

Ahora configuramos Tvheadend en Kodi

Instalamos Kodi desde Terminal:

  • sudo apt install kodi

  • sudo apt install kodi-pvr-hts

Una vez instalado, encendemos kodi, vamos a AddonsEnter Add-ons browserMy Add-onsPVR ClientsTvheadend HTSP ClientConfigureConnection Settings:

  • Tvheadend host name or IP Address : 192.168.0.20

  • Username: pi

  • Password: raspberry

  • OKEnabledESCTV, aparecerán todos nuestros canales.

El Servidor de IPTV se ejecutará cada vez que encendamos nuestra Raspberry Pi, trás unos instantes. Si queremos eliminarlo solo debemos abrir un Terminal y teclear:

  • sudo apt purge tvheadend

Además ya podemos agregar listas que vengan desde alguna web, aplicando la pequeña trampa.

views
1626


ElectroMercado

  • raspberry_pi
1 Comentario
  1. Luciano
    Luciano 3 meses

    Para el que comentó, como explico en la publicación, la IPTV se obtiene de lista.m3u, en ningun momento menciono ni guió para el hardware, ya que nuesta norma es la japones que no la tiene nadie, asi que es dificil encontrar sintonizadoras económicas con usb para transmitir el cable real por tvheadend, como si lo hacen en otros países.
    Respecto a los 5 TV que mencionas, podes ver tranquilamente cada cual su programación, sin afectar el rendimiento del servidor, esto lo he probado hace unas semanas con una red wifi malisima. Obviamente estás tvs deben poseer algún dispositivo con kodi y el addon tvheadend, o android y la aplicación “dreamPlayer for TVHeadend” o similares. Lo cual es una gran restricción, pero el mantenimiento de la lista es Único en el servidor, osea, si agregas canales, a los clientes(tv) les aparecerán. Opino como vos, lo realmente copado es transmitir el cable o el TDA real y no una lista. Pero a modo pedagógico es un lindo proyecto.

    0

Contesta

CONTACTANOS

Esta es su red social de tecnología para compartir tus ideas y proyectos .Puedes enviarnos un correo si tienes dudas.Nos vemos

Enviando

Inicia Sesión con tu Usuario y Contraseña

o    

¿Olvidó sus datos?

Create Account