KodiNAS

Centralizar la base de datos de Kodi en un NAS Synology – Parte 2

Base de datos de Kodi en un NAS. Parte 2

Seguimos con el tutorial para trasladar la base de datos de Kodi a nuestro NAS Synology. La configuración del NAS la puedes ver en la primera parte de este tutorial.

Kodi cuenta con multitud de opciones de configuración en sus menús, pero hay una serie de parámetros que solo se pueden modificar si añadimos un archivo llamado advancedsettings.xml. En este archivo podemos incluir instrucciones que de otra manera no podriamos añadir, entre ellas el nuevo destino de la base de datos.

Así que lo primero será crear ese archivo en el ordenador. Puedes usar el Bloc de notas de Windows o el Textedit de Mac (no te valdrá Word o cualquier otro editor de texto complejo que enriquezca el texto) para crear un archivo de texto simple con el nombre “advancedsettings” y luego cambiar la extensión a xml. Pero te aconsejo que uses un editor de código como el Notepad++ en Windows o el Atom (tanto para Windows como para Mac). Son gratuitos y muy fáciles de usar sin necesidad de tener ninguna idea de programación.

Esto es lo que tiene que incluir tu archivo:

<advancedsettings>
<videodatabase>
<type>mysql</type>
<host>X1</host>
<port>3306</port>
<user>X2</user>
<pass>X3</pass>
<name>X4</name>
</videodatabase>
<musicdatabase>
<type>mysql</type>
<host>X1</host>
<port>3306</port>
<user>X2</user>
<pass>X3</pass>
<name>X5</name>
</musicdatabase>
</advancedsettings>

Los lenguajes de programación se componen generalmente de entiquetas de apertura y de cierre, en este caso entre los símbolos “<” y “>” para las de apertura, y “</” y “>” para las de cierre.

Si te fijas un poco verás que hay una etiqueta “advancedsettings” que engloba todo el código que hemos puesto (<advancedsettings> la de inicio y </advancedsettings> la de cierre). Luego encontrarás una parte de código que se refiere a la base de datos de la sección de video y otra a la de música (“videodatabase” y “audiodatabase”, respectivamente). No es mi intención explicar nada de programación pero sí es necesario que te asegures de que cualquier etiqueta de apertura que pongas tiene que tener su equivalente de cierre. Si lo prefieres copia el código de arriba y símplemente sustituye las X por los datos de tu instalación:

  • X1: se refiere a la IP de tu NAS. Ni que decir tiene que tu NAS tiene que tener una dirección IP fija que no cambie constantemente. Pon aquí esa IP. Suponemos como ejemplo que es la 192.168.1.150
  • X2: aquí tienes que poner el nombre de usuario que creamos en el NAS con phpMyAdmin anteriormente (mira la 1ª parte de este tutorial). Si has seguido mi ejemplo al pie de la letra, será “kodi” (sin comillas).
  • X3: el password que le dimos al usuario anterior. En el ejemplo también “kodi”.
  • X4: este campo es voluntario y se refiere al nombre de la base de datos que va a crear Kodi. Si no lo indicas (y eliminas esa línea entera incluyendo las etiquetas <name> y </name>), Kodi la llamará “MyVideos_?”. La interrogación corresponderá a un número asociado a la versión de Kodi que estés usando (Jarvis, Krypton, Leia…). Te aconsejo que lo indiques porque no te cuesta nada y te puede servir si en un futuro creas varios perfiles en kodi con diferentes bases de datos. Por ejemplo podrías poner algo como “kodivideo” (kodi igualmente añadirá el número de la versión a ese nombre que has puesto).

Y lo mismo tendrás que hacer con la base de datos de tu música. Kodi es un reproductor multimedia que permite gestionar video, audio e incluso fotos, y para cada tipo de contenido crea su propia base de datos. Yo tan solo lo uso para video pero incluyo también las instrucciones necesarias para la base de datos del audio por si en un futuro lo necesitase. El único dato diferente con respecto a la sección de video será el nombre (X5). Llámala por ejemplo “kodiaudio”.

El archivo quedaría así:

<advancedsettings>
<videodatabase>
<type>mysql</type>
<host>192.168.1.150</host>
<port>3306</port>
<user>kodi</user>
<pass>kodi</pass>
<name>kodivideo</name>
</videodatabase>
<musicdatabase>
<type>mysql</type>
<host>192.168.1.150</host>
<port>3306</port>
<user>kodi</user>
<pass>kodi</pass>
<name>kodiaudio</name>
</musicdatabase>
</advancedsettings>

 

Ya lo tienes. Tan solo necesitas grabar ese archivo en cada uno de tus dispositivos donde tengas instalado Kodi. El directorio en el que hay que grabarlo es “Userdata” (junto a los archivos guisettings.xml, sources.xml…). Si no sabes conectarte a Kodi desde el ordenador, puedes echar un vistazo al tutorial sobre el uso del Gestor de archivos de Kodi, y verás donde encontrar esa carpeta (su acceso directo es el “Directorio del perfil”) y como grabar el archivo en ella usando un pendrive, por ejemplo.

En la captura siguiente puedes ver el archivo advancedsettings.xml ya dentro de la carpeta Userdata de una Raspberry Pi.

Interior de la carpeta Userdata de kodi

Nota: si además del perfil por defecto que trae Kodi (Master User, se llama) has creado alguno nuevo, el archivo advancedsettings tendrás que meterlo en la carpeta de ese perfil, que encontrarás dentro del directorio “profiles” y que corresponderá a la carpeta profiles/nombredelperfil/

Ya está todo hecho. Ahora tendrás que reiniciar Kodi en alguno de los aparatos para que lea el archivo advancedsetting.xml que acabas de incluir (Kodi sólo lee ese archivo al arrancar).

Verás que tardará un poco más en arrancar porque tiene que conectarse al NAS por primera vez, crear una base de datos nueva y trasladar los datos que tenía en la base de datos local.

Recuerda también reiniciar el resto de aparatos, aunque en esta ocasión el arranque será mucho más rápido porque la base de datos ya estará creada.

De ahora en adelante, cada vez que cambies una imagen en cualquiera de tus dispositivos, se reflejará también en el resto. Podrás empezar a reproducir una película en cualquiera de ellos y continuar desde el punto donde la dejaste en otro.

11 comentarios en “Centralizar la base de datos de Kodi en un NAS Synology – Parte 2

  1. Hola, vaya por delante que mis conocimientos informáticos a este nivel son nulos, gracias por tu tiempo y ayuda para explicarlo todo tan bien. Tengo kodi instalado en un Mi box TV(android TV) con toda la colección, tengo las fuentes (peliculas y series) en un NAS ds215j, bien direccionadas y funcionando. Me interesa compartir esa colección con otros dispositivos (tablet, portatil,PC…). Sigo el tutorial al pie de la letra y cuando vuelvo a abrir kodi para que cargue el advancedsetings.xml la colección ha desaparecido.Qué estoy haciendo mal? Realmente lo que hacemos con ésto (si me funcionase) es copiar mi colección al NAS y al poner el advancedsettings en todos dispositivos “llamaría” a la colección que está en el NAS? Entonces se podría borrar la colección del Mi box TV porque la colección ya estaría en al NAS? me está ocupando mas de 2 GB y el Mi box no tiene mucha capacidad. Hay que volver a redireccionar las fuentes en todos los dispositivos?
    Lo siento, estoy un poco perdido
    Gracias de antemano

    1. Hola Zervera,
      Efectivamente lo que haces con el advancedsettings es decirle a Kodi: a partir de ahora, la base de datos la vas a guardar en el NAS, no en Mi Box TV.
      Pero tienes que tener claro que la base de datos es una cosa y otra muy distinta el caché de Kodi. Las imágenes de tu colección (lo que realmente ocupa espacio) se guardan en el dispositivo (si sabes entrar (hay otro tutorial para ello) mira lo que ocupa la carpeta thumbnails.
      Dicho esto, para saber si la base de datos efectivamente se está guardando en el NAS, deberías volver a abrir phpmyadmin y ver si se han creado las dos bases de datos (la de video y la de música). Sie es así, pincha sobre la de video y abre alguna de sus tablas para ver si está vacía.
      Si te digo la verdad, no tengo claro de si al hacerlo con una base de datos ya creada (como es tu caso) te la traslada al NAS o empieza de cero. Si así fuera, tendrías que actualizarla otra vez (escrapear toda tu colección). No sé si eso sería mucho problema o no. Piensa que solo es una vez porque después todos tus dispositivo usarian esa colección. De nuevo, si ese es el caso, yo antes de hacerlo borraría todo el contenido de la carpeta “thumbnails” para liberar espacio. Al actualizar la colección se volverá a llenar pero eliminas todo el caché inútil (portadas de pelis que hayas borrado, etc.).
      No sé si me he explicado bien. Pregunta todo lo que quieras.

      1. Muchas gracias. Es una faena lo de que no la traslade y lo del caché, hay que hacerla de nuevo, pero merece la pena, como dices es solo una vez y tienes todos los dispositivos con la misma colección. Una vez que pierdes un rato en comprobar la colección todo funcionando. Gracias otra vez

    1. Dime con más detalle cual es el problema que tienes. Si después de hacerlo todo has abierto Kodi, la base de datos ya tendría que estar creada. Entrando de nuevo en phpmyadmin debería aparecerte con el nombre que le hayas puesto en el archivo advancedsettings.
      Pero como digo, tendrías que explicar con más detalle el problema que tienes.

  2. He seguido todos los pasos, de synology y luego he creado el adavancedsettings en kodi, he abierto kodi y escaneado una de las fuentes. Pero en php my admin no veo que se haya creado nada. Y en ptro equipo con ltro kodi y el advanced settimgs tambien cambiado… no aoarece nada en la coleccion

    1. Me va a ser difícil ayudarte así, pero empieza por verificar todo esto:
      1 – Has reiniciado los equipos Kodi (el archivo advancedsettings sólo se lee al arrancar el perfil). De no haberlo hecho, la base de datos seguiría estando en el propio dispositivo. Cuando escaneas una carpeta, acceden tus dispositivos al exterior (ves la iformación de las nuevas películas)?
      2 – Has creado correctamente el usuario y contraseña en phpmyadmin y son los mismos que has puesto en advancedsettings
      3 – Abre phpmyadmin y verifica que no hay ninguna base de datos creada por kodi (la columna izquierda de la pantalla). Si este fuera el caso, el problema estaría en el punto anterior.
      Si en cambio sí hay alguna base de datos creada, el punto 2 podriamos descartarlo. Habría que verificar si la base de datos puede haberse corrompido. Yo la borraría y volvería a encender algundo de los aparatos con Kodi para que volviese a generarla.

  3. Si, he reiniciado los equipos, y si acceden añ contenido al escanear la fuente. Genere bien el usuario con las mismas claves ( kodi/kodi ) y em el advancedsettings que pusiste solo modifique la ip a la de mi nas, que es fija.

    En phpmy admin si voy a bases de datos me aparecen estas 3

    -information schema
    -mysql
    -performance schema

Deja un comentario