8. Viendo los canales codificados en MythTV
Como decía en el punto anterior, la decodificación de los canales de Digital+ bajo MythTV no es moco de pavo, y para ello será necesario compilar y configurar un componente muy especial.
Se trata del desarrollo sasc-ng, que permite hacer por software lo que los descos normales hacen por hardware. En esencia, esto es lo mismo que hace Kaffeine con el paquete kaffeine-sc-plugin_0.2.3-ubuntu1_i38.deb del que ya hablé en el post que hice sobre Digital+ y Ubuntumediante Kaffeine.
Hay material sobre el tema, pero yo en realidad no estoy más que ‘traduciendo’ el ejemplo que aparece en la documentación del proyecto, ya que hay un apartado dedicado a Ubuntu y MythTV. En realidad ya tenemos parte del trecho recorrido, así que la parte sobre mythtv y la modificación de los parches nos la podemos ahorrar… afortunadamente.
La guía además da unas cuantas indicaciones para otras tarjetas, pero la parte para Twinhan (la Pinnacle PCTV Sat CI con la que hago las pruebas es en realidad una Twinhan) indica lo que ya había comentado al principio de la guía con Kaffeine: la carga de los módulos adecuados en el fichero /etc/modules.
De modo que pasamos directamente al tema de sasc-ng. En primer lugar tendremos que descargar la última versión mediante el comando svn, que no hace más que acceder a un repositorio y bajar los fuentes más actualizados en cada momento. Así pues, en una ventana de terminal escribimos:
sudo svn co http://opensvn.csie.org/sascng sasc-ng
cd sasc-ng
Con eso ya estaremos en el directorio desde el cual compilar e instalar los componentes necesarios. Pero antes será necesario editar el fichero Makefile, o de lo contrario no podremos completar la compilación del paquete. Por supuesto, cuento con que tenéis instalados los componentes necesarios para compilar (el paquete build-essentials de los repositorios solventa este apartado). Así pues editamos el fichero:
gedit Makefile
y añadimos la línea
INCLUDES += -I/usr/src/linux/include
Al principio del fichero, por ejemplo debajo de alguno de los ortos dos includes.
Con esto ya podemos proceder a instalar:
sudo make
sudo make module
sudo insmod dvbloopback.ko
Con esa última instrucción lo que hacemos es cargar en memoria el módulo encargado de la decodificación. Por cierto, deberéis lanzar ese comando cada vez que reiniciéis Linux para este propósito. Seguro que hay un método mejor (¿quizás meterlo en /etc/modules?, pero siendo un módulo .ko, no estoy seguro de ello). No me meteré en temas técnicos, pero ya por el nombre se puede apreciar que lo que hace es crear un loopback, un ‘canal de retorno’ que enlaza nuestra capturadora real (llamémosla “1″) con una virtual (“0″) que es la que en realidad decodifica la señal.
Ahora tendremos que generar una serie de ficheros en el directorio sc_files, así que
cd sc_files
sudo touch ca.cache
sudo wget http://www.geocities.com/vlivecd/vdr-live/SoftCam.Key
sudo wget http://www.geocities.com/vlivecd/vdr-live/au-bins2.tar.zip
sudo unzip au-bins2.tar.zip
sudo tar jxvf au-bins2.tar.bz2
sudo mv au-bins2 nagra
Todos los ficheros estarán correctos salvo, claro está, el SoftCam.Key, que contiene las claves actualizadas de D+. Si decidís romper la barrera y conseguir las claves, tendréis que editar ese archivo para incluir las dos claves convencionales (00 y 01), además de incluir otras tres más: la ’02′, y la ‘M1′ repetida, que son fijas y se pueden buscar también en los rincones oscuros de Internet. No me pidáis que os las facilite, porque eso es ilegal, y este es un artículo educativo. En cualquier caso, en el fichero SoftCam.Key habrá un apartado del tipo
;D+
N 4101 00 XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
N 4101 01 XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
N 4101 02 XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
N 4101 M1 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX…XX
N 4101 M1 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX…XX
Atención al orden de los campos: primero la N, luego el ID del proveedor (4101), luego el código de clave (00,01,02,M1,M1 de nuevo) y por último las claves, que varían en longitud según el tipo de clave. Esto es vital para que sasc-ng interprete bien las claves: lo digo por si queréis ‘traducir’ el SoftCam.Key de kaffeine. Se puede hacer, pero teniendo muy encuenta el orden de esos campos, que es ligeramente distinto en sasc-ng. De nuevo, esa es información suficiente: no facilitaré más datos sobre esto, así que por favor, no me pidáis más.
Ahora iniciamos el componente que decodifica, con lo cual tendremos tres componentes activos que habrá que ejecutar en orden. De hecho, si mythbackend estaba ejecutándose es mejor matar ese proceso y seguir este orden:
1º Decodificador (módulo sasc-ng)
2º Servidor (mythbackend)
3º Cliente (mythfrontend)
Por lo tanto,
cd ..
sudo ./sasc-ng -j 0:1
Para seguir adelante, no obstante, será necesario reconfigurar el apartado de capturadoras que ya habíamos configurado con el comando ya de todos conocido, así que de nuevo habrá que hacer
mythtv-setup
Y en el apartado ’2. Capturadoras’ tendremos que seleccionar lo que antes era [DVB: 0] para editar sus propiedades: únicamente habrá que cambiar el campo ‘Número de tarjeta DVB:’, que estará a 0 y hay que cambiar a 1. Esto es muy importante para que el ‘loopback’ que crea
ese módulo insertado funcione correctamente.
Con eso ya está todo preparado, de modo que volvemos a lanzar el servidor y el cliente en dos consolas distintas:
sudo mythbackend
mythfrontend
Ahora ya sólo queda elegir un canal codificado en MythTV y… voilà! Si todo ha ido bien podréis contemplar D+, en cualquier canal, sin
problemas.
Finitto