Índice
- Introducción, instalación en usb y primer arranque
- Configurando Raspberry Pi como servidor de impresión
- Configurando Raspberry Pi para ver la TV con XBMC
Configurando XBMC con TV
El objetivo ahora es instalar XMBC y conectarlo a un dispositivo usb para ver y grabar TV.

$ sudo su # apt-get update # apt-get install python-qt3 # apt-get install xbmc
Confirmo en que el usuario ‘pi’ está incluido en los grupos
audio video input dialout plugdev
$ groups pi pi : pi adm dialout cdrom sudo audio video plugdev games users netdev input lpadmin indiecity
Igualmente, confirmo
# cat /etc/udev/rules.d/99-input.rules SUBSYSTEM=="input", GROUP="input", MODE="0660"
Para que arranque el XBMC siempre
# nano /etc/default/xbmc # Set this to 1 to enable startup ENABLED=1
# useradd xbmc
Edito el servicio XBMC para que se active en el arranque
# nano /etc/init.d/xbmc ENABLED=1 # reboot
(…)
Sin embargo no arranca automáticamente, así que lo dejo como tarea. Arranco xbmc (la primera vez tarda bastante, conviene dejarlo bastante tiempo):
$ xbmc-standalone
Las primeras impresiones dentro de XBMC es que funciona bastante lento aunque relativamente bien.
Instalando el driver de mi dvb-usb
Comprubeo si se cargan los controladores (drivers) de mi tarjeta dvb-usb:
$ dmesg | grep dvb dvb-usb: found a 'Pinnacle PCTV 73e' in cold state, will try to load a firmware dvb-usb: did not find the firmware file. (dvb-usb-dib0700-1.20.fw) Please see linux/Documentation/dvb/ for more details on firmware-problems. (-2) usbcore: registered new interface driver dvb_usb_dib0700 $ sudo su # lsusb Bus 001 Device 008: ID 2304:0237 Pinnacle Systems, Inc. PCTV 73e [DiBcom DiB7000PC] # cd /lib/firmware
No está el driver para mi dvb-usb, debería ser dvb-usb-dib0700-1.20.fw
$ sudo su # cd /lib/frimware # wget http://www.linuxtv.org/downloads/firmware/dvb-usb-dib0700-1.20.fw # reboot
Al reiniciar compruebo que la luz del dvb-usb se enciende y que ‘dmesg’ lo muestra activado:
$ dmesg | grep dvb ... dvb-usb: Pinnacle PCTV 73e successfully initialized and connected. ...
Configurando la TV con tvheadend
Preparando la instalación de tvheadend:
# aptitude install git openssl libssl-dev libavcodec-extra-53 \ libavcodec-dev libavformat-extra-53 libavformat53 libavformat-dev \ libavahi-client-dev libcurl3-dev libdvbcsa1 libdvbcsa-dev # exit $ cd /tmp $ git clone https://github.com/tvheadend/tvheadend $ cd tvheadend $ ./configure --enable-dvbcsa $ make $ sudo make install
(hay conflictos de dependencias, se elimina libavcodec53)
Sigo de cerca esta entrada de Coder36:
$ sudo groupadd tvheadend $ sudo useradd -g tvheadend -G video -m tvheadend $ sudo nano /etc/init.d/tvheadend
en donde incluyo como contenido:
#!/bin/bash ### BEGIN INIT INFO # Provides: Servicio tvheadend # Required-Start: $syslog # Required-Stop: $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Para servir streamings de una DVB-T # Description: Televisión, radio. # ### END INIT INFO TVHNAME="tvheadend" TVHBIN="/usr/local/bin/tvheadend" TVHUSER="tvheadend" TVHGROUP="tvheadend" case "$1" in start) echo "Starting tvheadend" start-stop-daemon --start --user ${TVHUSER} --exec ${TVHBIN} -- \ -u ${TVHUSER} -g ${TVHGROUP} -f -C ;; stop) echo "Stopping tvheadend" start-stop-daemon --stop --quiet --name ${TVHNAME} --signal 2 ;; restart) echo "Restarting tvheadend" start-stop-daemon --stop --quiet --name ${TVHNAME} --signal 2 start-stop-daemon --start --user ${TVHUSER} --exec ${TVHBIN} -- \ -u ${TVHUSER} -g ${TVHGROUP} -f -C ;; *) echo "Usage: tvheadend {start|stop|restart}" exit 1 esac exit 0
Lo hago ejecutable:
$ sudo chmod 755 /etc/init.d/tvheadend
Activo su arranque
$ sudo update-rc.d tvheadend defaults $ sudo update-rc.d xbmc defaults
Reinicio y…
$ sudo service xbmc start $ xbmxc-standalone (demora un tiempo)
En XBMC
- Sistema > Ajustes hago ajustes generales, especialmente los de internacionalización, sistemas-video, sistemas-audio
- Sistema > Ajustes > TV en directo > General: selecciono ‘Activado’. Saldrá un popup avisando que no hay ningún PVR activado. Ok. Elijo TVHeadend HTSP Client.
- Configuración – TVHeadend HTSP Client
- IP (pongo la IP fija que le asigné en mi red, p.ej., 192.168.1.20), creo un usuario., le pongo contraseña. Ok.
- Activar TVHeadend HTSP Client (he de hacerlo un par de veces porque cuesta activarse…)
- En remoto abro un navegador con la url: http://192.168.1.20:9981
En el navegador sigo configurando la TV para XBMC con las detalladas instrucciones de este foro en raspberrypi.org (punto 14º) o gráficamente lo que se señala en el foro de Ztreambox.
Básicamente consiste en:
- Configuration > General, cambio el idioma y guardo los cambios.
- Configuration > TV Adapters, selecciono mi dvb-usb
- Asegúrate que estén activados «Autodetect muxes» y «Idle scanning»
- Introducir manualmente las frecuencias porque buscando por localizaciones no me funionó :-/
- Instalo w-scan
# aptitude install w-scan
Escaneo frecuencias con servicios
$ mkdir ~/soft/tv $ cd ~/soft/tv $ w_scan -a 0 -f t -t 2 -x -c ES
=== Nota ===
Para formato me-tv, xine… sería:
$ w_scan -a 0 -f t -t 2 -X -c ES > channels.conf
=== fin Nota ==
... dumping lists (57 services) ...
Copio su salida a un fichero externo, observo las frecuencias con servicios para pasarlas luego a la interfaz web de TVHeadend. Y sigo,
- Configuration > TV Adapters, selecciono mi dvb-usb
- Configuration > TV Adapters > pestaña Multiplexes
En Frequency (kHz): 554000
En Bandwidth: 8 Mhz
Todo lo demás va como ‘Auto’.
Añado esa frecuencia pulsando en ‘Add’.
¡Sin cerrar! repito lo mismo para todas las demás frecuencias con canales.
Importante: guarda los cambios en esta pestaña antes de abandonarla.
- Paso a la siguiente pestaña «Services» para confiramr que están allí todos los canales y emisoras de radio (servicios).
- Paso a la primera pestaña «General» y en el recuadro «Tools» añado los servicios a los canales «Map DVB Services to channels». Guardo en el recuadro central, «Save».
- En Configuration > Channels están ahora todos los canales. Se pueden ir editando tanto sus nombre como su número para ordenarlos.
- Ahora sí, en XBMC > Sistema > Ajustes > TV en directo > General: selecciono ‘Activado’.
- En esa misma parte, más abajo selecciono «Reiniciar la base de datos de PVR».
Y, ¡por fin!, en el menú principal de XBMC ya se puede ver la TV 🙂
Conclusiones
Mi rp (el hostname que he seleccionado para la Raspberry Pi) va bien como servidor de impresión e incluso para ver videos desde dispositivos conectados por usb pero para ver la TV… como que no. Se queda muy corta.
La versión rasbmc pensada para Raspberry Pi + XBMC es aún muy inestable y para ver TV aún más.
Por tanto, mi rp se queda de momento como servidor de impresión. Ya lleva más de un mes, fiable y dejándome todo bajo control.