Vdrtranscode

Aus easyVDR-Wiki
Zur Navigation springen Zur Suche springen

vdrtranscode unter easyVDR 1.0

Hier beschreibe ich die Vorgehensweise, das Skript vdrtranscode in easyVDR 1.0 einzubinden. Das Skript selbst wandelt VDR-Aufnahmen (auch HD) um und speichert diese in die Container-Formate M4V oder MKV ab. Es basiert auf dem Transcoder Handbrake.

Ausgangspunkt ist die vdrtranscode-Seite im VDR-Wiki. Von dort wird erstmal das Installationsarchiv heruntergeladen und installiert (Verzeichnisse siehe Archiv). Jetzt passen wir gleich mal den Eigentümer des Verzeichnisses an, in dem die eigentlichen Skripte liegen:

sudo chown -R vdr:vdr /usr/share/bin

Ich zeige nur die Änderungen an den installierten Dateien. Es gelten die im VDR-Wiki genannten Abhängigkeiten. Handbrake ist schon in easyVDR 1.0 installiert, ansonsten im Terminal:

sudo apt-get install Handbrake-CLI

Auch Perl ist grundsätzlich vorinstalliert. Nur zwei Module fehlten noch und müssen noch installiert werden:

sudo apt-get install liblogfile-rotate-perl libproc-daemon-perl

Vorsichtshalber noch

sudo pgrep -f vdrtranscode_server.pl > /var/run/vdrtranscode_server.pid

um das genannte PID-Problem zu lösen.

Nun werde ich auf die einzelnen Anpassungen der installierten Dateien eingehen.

/etc/init.d/vdrtranscode_server

In diesem Init-Skript muss die Variable 'vdr_user' von 'alex' auf 'vdr' angepasst werden.

vdr_user="vdr"

Um eine Fehlermeldung zu vermeiden, ist im Start-Subprozess noch eine Zeile anzupassen von

su $vdr_user -c "$binary -d -l"

nach

$binary --daemon --log

Dieses Skript muss jetzt also mit dem System gestartet werden, damit es im Hintergrund läuft und die Kommandos aus dem Aufzeichnugsmenüs bearbeitet. Dafür schreibt man in die dafür vorgesehene Datei /etc/rc.local die Zeile:

/etc/init.d/vdrtranscode_server start

reccmds.vdrtranscode.conf

Diese Konfigurationsdatei von /etc/vdr/command-hooks nach /usr/share/vdr/command-hooks kopieren und dann darin die auskommentierten Zeilen am Dateianfang löschen. Denn alle im zuletzt genannten Verzeichnis liegenden Dateien werden beim easyVDR-Start zusammengefasst, so dass alle Befehle dann in der VDR-Menü-Struktur erscheinen.

/etc/vdrtranscode.conf

In dieser Konfigurationsdatei müssen die Eingabe- und Ausgabeverzeichnisse des vdrtranscode-Skriptes angepasst werden:

Indir = /video0
Outdir = /media/easyvdr01/convert/vdrtranscode

Der Benutzer ist wieder anzupassen:

vdr_user = vdr

Als Ausgabeverzeichnis habe ich das genannte Verzeichnis zuvor erstellt und noch dessen Benutzer angepasst:

sudo mkdir /media/easyvdr01/convert/vdrtranscode
sudo chown vdr:vdr /media/easyvdr01/convert/vdrtranscode

Nun kann der Umwandlungsvorgang über das VDR-Menü im Aufnahmenordner gestartet werden. Mehr Details können im Artikel im VDR-Wiki nachgelesen werden. Ich hoffe, dass ich alles erfasst habe, um vdrtranscode erfolgreich in easyVDR 1.0 zu nutzen.

Tipps

Mir ist aufgefallen, dass bei einem 2-pass-Durchlauf im ersten Durchlauf eine entsprechend große Datei in das Verzeichnis /tmp geschrieben wird. Deshalb muss darauf geachtet werden, dass bei sehr großem Ausgangsmaterial auch genug Platz auf der Root-Partition vorhanden ist. Erst im zweiten Durchgang wird dann die eigentliche Containerdatei in das Output-Verzeichnis geschrieben.

Links