Monta tu reproductor multimedia con Raspberry Pi y XBMC

Siempre he sido un gran aficionado al cine, por eso desde bien tempano siempre tuve un reproductor de vídeo en mi habitación. Primero el vhs de toda la vida, luego un dvd y en cuanto me pase al terreno digital un ordenador que con el tiempo sustituí por una vieja xbox a la ha le hice el exploit y le instale el XBMC. El tiempo pasa y el XBMX empezó a dejar de dar soporte a la Xbox original y para instalar una nueva versión del XBMC había que hacer maravillas. Ademas los 64mb de la Xbox empezaban a quedarse pequeños , cada vez que reproducías una película empezaban a fallar la carga de las imágenes de la biblioteca y había que reiniciar la consola.

Entonces fue cuando conocí la Raspberry Pi, una pequeña placa que es un microodenador al que puedes instalarle sistemas operativos del tipo GNU/Linux. Además los desarrolladores de XBMC se apresuraron a sacar una versión compatible con la Raspberry Pi, asi que tenemos el pack completo para poder tener un reproductor de alta definición por 50€ y en un espacio mínimo.

Lo primero que necesitamos es la propia Raspberry Pi que podemos comprar aquí por unos 39€ el modelo de 512Mb. También necesitamos un cargador de tipo microusb (como el de los móviles) que nos de como mínimo unos 1200mah y una tarjeta de memoria. El espacio de la tarjeta de memoria es al gusto, depende de si vas a reproducir películas desde la propia tarjeta o las vas a reproducir desde un almacenamiento de red como es mi caso. Lo que si es importante es la Clase de la tarjeta, como mínimo una Clase 10.
La clase es un numero que determina la velocidad de lectura/escritura que tiene esa tarjeta de memoria. Para saber la clase de una tarjeta de memoria la podremos ver en la etiqueta de la tarjeta en un numero rodeado por un circulo, cuanto mayor sea el numero mas rápida es la tarjeta. Aparte de la placa, el cargador y la tarjeta necesitaremos un cable de red y un cable hdmi.

Una vez tenemos completada la lista de la compra ya nos podemos poner a montar nuestro reproductor multimedia.

Para instalar el XBMC en la Raspberry tenemos dos opciones, la primera es instalar un sistema operativo como Raspbian (un derivado de Debian) y luego instalar los paquetes del XBMC. Esta es la mejor opción si utilizas la Raspberry para mas usos, como para tener un blog con WordPress como mostré en este post. Si vamos a tener la Raspberry en exclusiva como reproductor multimedia lo mejor es usar una distribucion especifica con el XBMC como OpenElec, Raspbmc o Xbian.
Estas distribuciones vienen con modificaciones para mejorar la reproducción de contenido multimedia, como por ejemplo Xbian que en vez de usar el sistema de ficheros EXT4 como la mayoría de distribuciones para Raspberry usa BTRFS que mejora la velocidad de lectura/escritura y el manejo de grandes archivos.
Yo personalmente me decante por la ultima opción ya que tengo una Raspberry en exclusiva para multimedia y la distribución que escogí fue Xbian.

Para empezar a instalar Xbian necesitamos la imagen de la distribución que nos descargamos de su pagina oficial. Para Windows trae un programa instalador del tipo Siguiente->Siguiente->Aceptar que te instala automáticamente Xbian en la tarjeta de memoria. Para los que usamos Mac o Linux tendremos que usar el comando “dd”. Lo primero es meter la tarjeta de memoria y hacer un “df -h” para que nos muestre el que nombre de dispositivo tiene y nos saldrá algo así:

S.ficheros     Tamaño Usados  Disp Uso% Montado en
/dev/sda1         16G   5,3G  9,6G  36% /
/dev/sda5         92G    74G   13G  86% /data
/dev/sda2        7,8G   5,3G  2,1G  73% /home
/dev/sdb1        16G   0G   16G  0% /media/sd

Vemos que tenemos la tarjeta montada en el /dev/sdb1 y a continuación tenemos que desmontar el sistema de ficheros de la tarjeta y copiar la imagen de Xbian con los siguientes comandos:

sudo umount /dev/sdb1
sudo dd bs=4M if=~/Xbian.img of=/dev/sdd

El segundo comando puede tardar unos minutos en función de la velocidad de la tarjeta. Una vez finalice ya tendremos instalada Xbian en la tarjeta. Ahora conectamos los cables a la Raspberry y la televisión, metemos la tarjeta y conectamos el cargador. Como curiosidad la Raspberry Pi no tiene botón de encendido, se enciende directamente cuando conectas el cable de alimentación. Si vemos el logo de Xbian en la televisión es que esta bien instalado y en un par de minutos veremos que aparece el XBMC en la pantalla. Con estas sencillas operaciones ya tenemos un reproductor multimedia funcionando, pero vamos a tunear un poco nuestra instalacion.

Lo primero es ponerle una ip fija a nuestro dispositivo, en el XBMC nos vamos a Sistemas->Info y vemos que ip tiene actualmente. Nos conectamos por ssh con el usuario Xbian y el password Raspberry que vienen por defecto

ssh xbian@192.168.1.13

Una vez conectados nos aparece directamente el ayudante de instalacion xbian-config, yo no suelo usarlo y voy directamente a configurar el Linux que trae debajo. Lo primero para cambiar la ip de la Raspberry es editar el fichero /etc/network/interfaces y asignarle una ip estatica editando el fichero de la siguiente forma

sudo vi /etc/network/interfaces

auto lo
iface lo inet loopback
iface eth0 inet static
address 192.168.1.13
netmask 255.255.255.0
gateway 192.168.1.1

Ahora cambiamos los servidores dns para la resolucion de nombres en el fichero /etc/resolv.conf y añadiendo lineas del tipo “nameserver ip”. Yo al tener un dns interno en mi red añado la ip de dns como primario y como secundario el de Google que es 8.8.8.8

sudo vi /etc/resolv.conf

nameserver 192.168.1.21
nameserver 8.8.8.8.

Con esto ya tenemos configurada la red de la Raspberry y reiniciamos el servicio de red

sudo restart network

Ahora vamos a configurar el almacenamiento. Yo tengo mis peliculas compartidas en red mediante NFS, asi que editamos el fichero /etc/fstab y añadimos la lineas de montaje de los NFS

sudo vi /etc/fstab

192.168.1.11:/volume1/photo    /home/xbian/nas/fotos        nfs    nouser,atime,auto,ro,dev,exec,suid 0 0
192.168.1.11:/volume1/peliculas    /home/xbian/nas/peliculas    nfs    nouser,atime,auto,ro,dev,exec,suid 0 0
192.168.1.11:/volume1/series    /home/xbian/nas/series        nfs    nouser,atime,auto,ro,dev,exec,suid 0 0
192.168.1.11:/volume1/music    /home/xbian/nas/musica        nfs    nouser,atime,auto,ro,dev,exec,suid 0 0

Una de las razones por las que monto en nfs y no por samba directamente en el XBMC es porque la biblioteca de XBMC hace asociaciones por ruta de fichero y si cambiara el nombre del dispositivo tendría que volver a escanear la biblioteca entera, que volver a escanear casi 3000 objetos entre videos y musica no es moco de pavo. Así me es mas cómodo si tuviera que cambiar de dispositivo o volver a configurar la Raspberry. Una vez configurado el fstab con hacer un mount -a ya tenemos conectados los sistemas de ficheros nfs con nuestro contenido disponible.

El ultimo paso es mover la configuración de XBMC, donde se guarda la biblioteca y las configuraciones, a un pendrive conectado a la Raspberry. Esto tiene dos motivos, el primero es que por muy clase 10 o clase X que sea la tarjeta hay un retardo muy grande cuando cargamos las imágenes de los posters de las películas o las carátulas de los discos al movernos por la biblioteca. El problema es porque son miles de imágenes en jpg de un peso razonable y aun no he encontrado ninguna distribución a la que no le pase. Así que moviéndolo a un pendrive usb 2.0 se soluciona la velocidad de carga.
El segundo motivo es tener la configuración del XBMC en un dispositivo independiente de la instalación, así por muchas veces que tenga que reinstalar no tendré que escanear la biblioteca y volver a realizar la configuración. Además lo mejor es que la configuración del XBMC es independiente de la distribución, así que podría moverme de Xbian, OpenElec o a Windows sin apenas esfuerzo.

Para mover la configuración al pendrive es tan facil como copiar el contenido de /home/Xbian/.xbmc/userdata y hacer un enlace al directorio que hemos movido

cp -R /home/Xbian/.xbmc/userdata /media/pendrive
ln -s /media/pendrive/userdata /home/Xbian/.xbmc/userdata

Con estas pequeñas configuraciones ya tendremos disponible nuestro reproductor multimedia, ahora solo nos falta empezar a configurar el XBMC. Definir los directorios donde esta nuestro contenido, escoger un scraper para que catalogue nuestra colección multimedia, yo recomiendo el TheMovieDB seleccionando el idioma en Español para películas y TheSeriesDB para las Series de TV. Luego podemos seleccionar el skin que mas nos guste, descargarnos un par de plugins para ver los trailers de las películas que están por venir o el de las charlas de Ted Talks, además hay alguno de Rojadirecta para los futboleros.

El ultimo paso es acercarnos al microondas, meter una bolsa de palomitas, esperar a que dejen de explotar, metemos en un bol, sazonamos al gusto y nos sentamos en el sofá a ver una pelicula en nuestro nuevo reproductor multimedia.

Anuncios

Acerca de Marineru Vagarientu

El viejo truhán capitán de un barco que tuviera por bandera un par de tibias y una calavera.

Publicado el 29 septiembre, 2013 en Hardware, Linux, Software Libre y etiquetado en , , , , , . Guarda el enlace permanente. 3 comentarios.

  1. Excelente articulo!!
    Solo me queda una pregunta,
    Que tal es el rendimiento para reproducir peliculas de 1080p de mas de 4gb, Ya que hasta mi portatil de 2gb de ram, se queda colgado algunas veces.

    • Con mkvs a 1080 se comporta bien, se ve fluido. El unico problema en mi caso es que al reproducir desde un almacenamiento en red hasta que cachea el inicio de la pelicula tarda unos segundos. Pero vamos, sin problemas, la raspberry es un gran dispositivo.

  2. Pues se ven estupendamente, por ejemplo El señor de los anillos, cada peli unos 30 Gb y las veo por red, es decir, los archivos están en un disco duro de red conectado al router. Y ya para órdago, también se ve perfectamente por wifi (con un adaptador bueno eso sí)

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s