Muggle-plugin
Inhaltsverzeichnis |
Beschreibung
Autoren: Andi Kellner, Lars von Wedel, Ralf Klueber, Wolfgang Rohdewald
Das Plugin bietet eine Datenbankverbindung für den VDR, so dass die Medienauswahl flexibler wird. Es stehen verschiedene Datenbanken zur Verfügung.
Status
Bilder
Softwareanforderungen
Welche Datenbank verwendet wird, muss man beim Kompilieren festlegen. Es gibt Backends für MySql Server, MySql Embedded, Postgresql und sqlite3. Details siehe README.mysql, README.postgresql, README.sqlite.
- mySQL oder sqlite oder postgresql
- libid3tag
- libmad
- taglib
- libvorbis >= libogg (optional)
- flac >= libogg >= nasm (optional)
Installation
Optionen beim Kompilieren
HAVE_VORBISFILE=1 | verwende libvorbis und libvorbisfile für die Wiedergabe von OGG Vorbis Dateien |
HAVE_FLAC=1 | verwende libFLAC++ für die Wiedergabe von FLAC Dateien |
HAVE_SNDFILE=1 | verwende libsndfile für die Wiedergabe von .wav Dateien |
HAVE_ONLY_SERVER=1 | Macht nur für MySql Sinn: Keine Unterstützung für MySql Embedded. |
HAVE_SQLITE=1 | Als Datenbank wird SQLite 3 verwendet. |
HAVE_MYSQL=1 | Als Datenbank wird MySql verwendet. |
HAVE_PG=1 | Als Datenbank wird PostGresql verwendet. |
MUSICDIR=/mnt/music | Dies ist die Vorgabe für Option -t - dies gilt also, wenn man -t nicht übergibt. |
Source
Nach der erfolgten Installation von mysql folgen noch ein paar weitere für muggle wichtige Installationsschritte.
cd /usr/local/lib ln -s mysql/libmysqlclient.so* . groupadd mysql useradd -g mysql mysql cd .. chown -R mysql var ldconfig mysql_install_db --user=mysql &
Die Installation des Plugins erfolgt an der allbekannten Stelle $SOURCEDIR/VDR/PLUGINS/src vor:
cd $SOURCEDIR/VDR/PLUGINS/src tar xvzf vdr-muggle-<VERSION>.tgz ln -s muggle-<VERSION> muggle
Kopieren von mugglei in den PATH.
cp $SOURCEDIR/VDR/PLUGINS/src/muggle/mugglei /usr/local/bin
mysql-Datenbank befüllen
Als erstes starten wir den mysql-Server mit.
mysqld_safe --user=mysql &
Nun können wir die Datenbank füttern. Dazu starten wir den vdr, gehen in den Setup vom muggle - Plugin und wählen den Befehl "Datenbank synchronisieren".
Normalerweise ist das aber nicht nötig - wenn muggle die Datenbank nicht findet, fragt er, ob er sie anlegen und automatisch füttern soll.
Übergabe für VDR.
vdr -P'muggle -t /mp3'
Für das automatische Starten des Mysql Daemons...
Unterhalb von ../support-files im Sourceverzeichnis, befinden sich Templates.
Ein Eintrag in der /etc/init.d/boot.local (falls vorhanden) sollte auch langen.
# starting mysqld daemon /usr/local/bin/mysqld_safe --user=mysql &
Konfiguration
Parameter
Plugin
Parameter (kurz) | Parameter (lang) | Beschreibung |
---|---|---|
-h HHHH | --host=HHHH | specify database host (default is localhost) |
-s SSSS | --socket=PATH | specify database socket (default is TCP connection) |
-n NNNN | --name=NNNN | specify database name (overridden by -g) |
-p PPPP | --port=PPPP | specify port of database server (default is ) |
-u UUUU | --user=UUUU | specify database user (default is ) |
-w WWWW | --password=WWWW | specify database password (default is empty) |
-t TTTT | --toplevel=TTTT | specify toplevel directory for music (default is /mnt/music) |
-d DIRN | --datadir=DIRN | specify directory for embedded sql data (default is $HOME/.muggle) |
-v | --verbose | specify debug level. The higher the more (default is 1) |
Mugglei
Je nach dem, welche Datenbank verwendet wird, stehen manche Optionen nicht zur Verfügung.
Parameter | Lange Form | Beschreibung |
---|---|---|
-h <hostname> | --name=<hostname> | Rechnername vom Datanbankserver (Vorgabe 'localhost') |
-p <port> | --port=<port> | Port vom Datenbankserver (Vorgabe datanbankspezifisch) |
-s <socket> | --socket=<socket> | Socket zur Datenbank (Vorgabe datenbankspezifisch, bei MySql ist es TCP) |
-n <database> | --name=<database> | Name der Datenbank (Vorgabe 'GiantDisc') |
-u <username> | --user=<username> | Benutzername für Datenbank (Vorgabe: leer) |
-w <password> | --password=<password> | Passwort für Datenbank (Vorgabe: leer) |
-t <topleveldir> | --toplevel=<topleveldir> | Name des Musikverzeichnisses (Vorgabe ist /mnt/music respektive der beim Kompilieren angegebene Wert) |
-z | --delete | lösche alle Einträge in der Datenbank, deren Musikdateien fehlen |
-c | --create | lösche die ganze Datenbank und generiere sie neu |
-v | --verbose | Gesprächigkeit, je höher, desto mehr. Default ist 1. |
-d <dirname> | --datadir=<dirname> | Hier wird die Datenbank angelegt, wenn eine "embedded" Datenbank verwendet wird (sqlite3 oder je nach Konfiguration MySql) (Vorgabe: "$HOME/.muggle") |
Entwicklerversion
git clone git://projects.vdr-developer.org/vdr-plugin-muggle.git