Hallo Liebe Gemeinde.
Erstmal zum "Warum?".
Die Aufnahmen, die ich auf DVD archiviere, werden komplett aus dem Aufnahmeverzeichnis gelöscht. Damit ich einen Überblick über meine DVDs behalten kann, hatte ich ein PHP-Skript gebastelt, welches über die reccmds.conf aufgerufen alle möglichen Infos zu der Aufnahme in eine MySQL Datenbank schreibt.
Inzwischen habe ich einen kleinen File/Web/UPnP/MySQL-Server aufgesetzt und den VDR abgespeckt. Sprich die Datenbank läuft jetzt auf dem Server. Damit die Startzeit nicht noch länger wird, möchte ich eigentlich keinen Webserver (zum Ausführen des PHP-Skripts) mehr installieren. Nach Möglichkeit sollte das Skript komplett über die Shell abgewickelt werden, oder aber in Perl. Mit der Shell komme ich ganz gut zurecht, jedoch habe ich noch keine Ahnung von regulären Ausdrücken und die brauche ich wohl...
Welche Infos sollen nun in der Datenbank landen:
- Aufnahmedatum und -uhrzeit
- Titel
- Untertitel (wenn vorhanden)
- Beschreibung
- Länge der Aufnahme
- Ein Screenshot der Aufnahme
Bis auf die Länge und den Screenshot sind alle Daten in der info.vdr drin. Ich habe mal ein wenig rumexperimentiert und bin zu folgendem Ansatz gekommen:
Inhalt der info.vdr
C S19.2E-1-1089-12040
E 37892 1148819400 5700 50 3
T Wallace & Gromit - Das muss kneten
D Wallace & Gromit - zwei Namen, zwei komische Helden. Wallace ist der besessene Erfinder mit stinkender Leidenschaft: Käse. Gromit sein treuer Hund mit klugem Kopf und starken Nerven. Gemeinsam erleben die Knetfiguren die unglaublichsten Abenteuer. ...
X 2 03 deu
Kommandozeile mit Ergebnis:
Titel der Aufnahme:
root@satpc:~# cat /video/%Wallace_\&_Gromit_-_Das_muss_kneten/2006-05-28.14.20.99.99.rec/info.vdr | grep "^T" | cut -b 3-
Wallace & Gromit - Das muss kneten
Beschreibung der Aufnahme:
root@satpc:~# cat /video/%Wallace_\&_Gromit_-_Das_muss_kneten/2006-05-28.14.20.99.99.rec/info.vdr | grep "^D" | cut -b 3-
Wallace & Gromit - zwei Namen, zwei komische Helden. Wallace ist der besessene Erfinder mit stinkender Leidenschaft: Käse. Gromit sein treuer Hund mit klugem Kopf und starken Nerven. Gemeinsam erleben die Knetfiguren die unglaublichsten Abenteuer. ...
So weit - so gut. Jetzt wird es haarig. Die Beschreibung kann Pipes enthalten ("|") die wieder durch Zeilenumbrüche ersetzt werden müssen. Brauche ich hierfür sed?
Die Länge der Aufnahme kann man wunderbar über die Größe der index.vdr bestimmen. Einfach die Dateigröße ermitteln und durch 8 teilen ergibt die Anzahl der Frames. Also nochmal durch 25 und man hat die Länge in Sekunden. Wie kann man mir der Bash rechnen??
Dann das nächste Problem: Das Bild muß noch irgendwie (BASE64??) umgewandelt werden, damit es mit an MySql übergeben werden kann.
Vielleicht kann mir der Eine oder Andere bei einem Problem helfen? Ich bin auch gerne bereit mir reguläre Ausdrücke näher anzusehen. Früher oder später muß ich da sowiso ran.
Schon mal Danke an Alle, die sich ein paar Gedanken machen!