lunes, 18 de junio de 2012

Mediatomb en Debian

Otros post anteriores trataban de cómo hacer para que una televisión Samsung utilizase los subtítulos, pero para los que no necesiten usarlos, no hay que armar tanto jaleo.

Para instalarlo, bastará con tirar de repositorios apt-get install mediatomb lo que hará que se instalen las dependencias y dos paquetes de mediatomb: mediatomb-common y mediatomb-daemon. También podemos instalar el mysql server para que genere la bbdd de los archivos en mysql en vez de sqlite.

Si decidimos usar el mysql, tendremos que crear previamente un usuario y una base de datos. Por comodidad de evitar instalar más cosas, lo haremos desde consola, pero se puede hacer usando el phpmyadmin o cualquier otro programa. Abrimos una sesión como root del mysql:
$mysql –u root –p
> CREATE DATABASE mediatomb;
> GRANT ALL ON mediatomb.* TO mediatomb@localhost IDENTIFIED BY ‘clavequequeramos’;
Apuntamos los datos y empezamos a configurar el archivo de configuración del mediatomb. Por defecto, mediatomb se ejecuta con el usuario root en el inicio, pero podemos ejecutarlo desde cualquier usuario. Esto es importante ya que dependiendo de quien lo ejecute el archivo de configuración estará en un sitio diferente. Yo lo ejecuto mediante root, por lo que el archivo de configuración es /etc/mediatomb/config.xml. Para el resto de usuarios, estará en su home.
Lo primero a modificar del config.xml es:
<ui enabled="yes" show-tooltips="yes">
     <accounts enabled="yes" session-timeout="30">
       <account user="usuario" password="password"/>
     </accounts>
</ui>
Con esto habilitaremos una interfaz web para gestionar los archivos y lo protegeremos con usuario y contraseña. La contraseña queda en texto plano en el archivo de configuración, a tenerlo en cuenta.
Lo siguiente si hemos decidido usar el mysql, es poner los datos en la sección de mysql:
<storage caching="yes">
  <sqlite3 enabled="no">
    <database-file>mediatomb.db</database-file>
  </sqlite3>
  <mysql enabled="yes">
    <host>localhost</host>
    <username>mediatomb</username>
    <database>mediatomb</database>
    <password>password</password>
  </mysql>
</storage>
Si quisiésemos usar el sqlite, ponemos el enabled correspondiente a yes.
Si vamos a usar una televisión Samsung conviene poner estas líneas:
   <custom-http-headers>
<!--     <add header="X-User-Agent: redsonic"/>-->
     <add header="transferMode.dlna.org: Streaming"/>
     <add header="contentFeatures.dlna.org:DLNA.ORG_OP=01;DLNA.ORG_CI=0;DLNA.ORG_FLAGS=01700000000000000000000000000000"/>
   </custom-http-headers>
Con estas cambios, ya deberíamos poder usar el mediatomb sin problemas, faltaría nada más reiniciar el servicio (service mediatomb restart como root). Por defecto, mediatomb se ejecuta en el puerto 49152 (o superior). Podemos cambiarlo en el config.xml dentro de la sección <server> añadiendo <port>1234</port>, hay que asegurarse que el puerto está libre. Accederemos a la interfaz web desde http://IP:PUERTO.

Dejo un config.xml funcional en http://pastebin.com/sPgA255r para quien lo necesite, funciona a la perfección excepto por lo de los subtítulos.
Espero que esto ayude ya que poner en marcha el mediatomb puede ser un poco coñazo.
¡Un saludo!

PD: Acabé usando MiniDLNA por lo de los subtítulos, que funciona a la perfección con la Samsung. Además, el config.xml que pongo, lo he probado tanto en Debian como en Ubuntu y Mint, por lo que no debería dar problemas. Supongo que en las demás distros también funcionará.

No hay comentarios:

Publicar un comentario