Dvb script gui/anleitung

Aus Linupedia.org
Version vom 18. Oktober 2008, 21:50 Uhr von Escho (Diskussion | Beiträge) (Links verschönert)
Wechseln zu: Navigation, Suche
Höhe=24px
Achtung dieser Artikel ist noch in Arbeit und dient vorläufig nur als Vorlage. Dieser Beitrag zu Linux oder der Abschnitt ist in Bearbeitung. Weitere Informationen findest du hier. Der Ersteller arbeitet an dem Beitrag oder Abschnitt und entsorgt den Wartungsbaustein spätestens 3 Tage nach der letzten Bearbeitung. Änderungen außer Rechtschreibkorrekturen ohne Absprache mit dem Urspungsautor sind möglichst zu vermeiden, solange dieser Baustein noch innerhalb der genannten Frist aktiviert ist.


Vom DVB zur DVD, die GUI: Anleitungen - Installation - GUI-Kommanderscript - Arbeitsscript - Dokumentation



Was macht dieses Programm

Hauptzweck des Programmes ist es, aufgenommene DVB-Filme so zu bearbearbeiten, daß sie ohne störende Werbung auf DVD gebrannt werden können. Diese Video-DVD ist dann auch in einem Stand-alone Player abspielbar.

Weitere Features

  • Aufnahmen brennen bzw. sichern als Daten-DVD (Die ist dann nicht in einem Stand-alone-Player abspielbar).
  • Auswahl, welche Tonspuren verarbeitet werden sollen (mp2 und/oder AC3)
  • Aufnahmen als Videoclips speichern und eine Playlist für mplayer anlegen
  • Mpeg1-Aufnahmen (SVCD) als Videoclips speichern und in die Playlist aufnehmen
  • Normalisieren der mp2-Tonspur
  • Requantisierung, wenn der Film zu lang für eine einzige DVD wird
  • Screenshots aus dem Film erstellen
  • Direktdruck auf DVD (Das Vorhandensein von Druckschablonen wird dabei vorausgesetzt)
  • Schneiden der Aufnahme (nicht bei mpeg1)

Der tiefere Sinn des Ganzen

An Hand dieses Programmes soll gezeigt werden, wie mit einem Bash-Script die Verarbeitung einer DVB-Aufnahme zu einer Video-DVD automatisiert werden kann. Und um alles noch ein bißchen interessanter zu machen, ist eine Bedienoberfläche (GUI) hinzugekommen, mit der sich das Script mühelos bedienen läßt. Der dornenreiche Weg zu dieser GUI, die mit Kommander erstellt wurde, wird in einem seperaten Artikel behandelt (Ist noch am entstehen).

Gliederung des Programmes

Das Programm setzt sich aus drei Teilen zusammen, die erst zusammen funktionsfähig sind:

  • Installations-Script: Dieses Bashscript dient, wie der Name schon sagt, der Installation des Ganzen.
  • Kommander-Script: Programmcode der GUI.
  • Arbeits-Script: Hiermit wird die eigentliche Arbeit verrichtet.

Kurzanleitung

Hilfsprogramme

Es müssen folgende Programme installiert sein:

  • mplex
  • tcrequant
  • dvdauthor
  • ProjectX.jar
  • normalize
  • ffmpeg
  • growisofs
  • vlc
  • mplayer

Hier steht, wo diese Programme zu finden sind: Die Helferprogramme

Zusätzlich sind notwendig:

  • kdialog (kde4-kdialog)
  • kommander

Beide Programme gehören zur Standardausstattung von OpenSuse 11.0 (mit KDE) und können mit Yast installiert werden.

Installation

  • Leere Textdatei erzeugen, irgendwo im Heimatverzeichnis
  • An den Namen der Textdatei ein .sh anhängen (im Worten: Punkt sh ohne Leerzeichen dazwischen)
  • Die Textdatei ausführbar machen (Damit ist aus der Textdatei eine ausführbare Scriptdatei geworden, bei der nur noch der Inhalt fehlt)
  • Den Installationcode aus dem Wiki in diese Datei kopieren.
  • Die Datei in einem Terminal starten (oder Rechtsklick auf die Datei, Öffnen mit Sonstige, sh, Im Terminal ausführen)
  • Wenn danach gefragt wird, einen Pfad für das Hauptverzeichnis festlegen.
  • Wenn danach gefragt wird, Pfade zu Hilfsprogrammen auswählen.
  • Das Ende der Installation mit OK bestätigen.

Kopieren der Programm-Codes

Kommander-Code

  • Den guicode aus dem Wiki in folgende Textdatei kopieren: ~/DVB_Script/GUI/guicode.kmdr
  • Die Textdatei ausführbar machen.

Bashscript-Code

  • Den scriptcode aus dem Wiki in folgende Textdatei kopieren: ~/DVB_Script/Script/scriptcode.sh
  • Die Textdatei ausführbar machen.

(~/DVB_Script abändern, wenn während der Installation ein anderes Hauptverzeichnis gewählt wurde)

Start

Das Programm kann auf mehrere Arten gestartet werden. Hier eine Auswahl:

  • Recommanded: Linksklick auf die Desktop-Datei im Verzeichnis ~/Desktop
  • Terminal: kmdr-executor ~/DVB_Script/GUI/guicode.kmdr (~/DVB_Script abändern, wenn während der Installation ein anderes Hauptverzeichnis gewählt wurde)
  • Linksklick auf die gerade erwähnte kmdr-Datei. Es öffnet sich das Editor-Fenster von Kommander. Hier auf Exec drücken.

Die Details: Das Installations-Script

Hauptprogramm

Hier werden die einzelnen Funktionen des Scriptes nacheinander aufgerufen und ausgeführt. Erst wenn eine Funktion abgearbeitet ist, wird die nächste aufgerufen. Das Hauptprogramm befindet sich am Ende des Scriptes. Das ist notwendet, da beim Scriptstart erst alle Funktionen geladen werden müssen, um aufgerufen werden zu können.

Hier die einzelnen Funktionen in der Reihenfolge, in der sie vom Hauptprogramm abgerufen werden.

  • defaultwerte_laden
  • verzeichnisstruktur_inifiles
  • hauptverzeichnis_festlegen
  • verzeichnisstruktur_hauptfiles
  • ini_file_pjx
  • hilfsprogramme_abfragen
  • desktop_datei_anlegen
  • hinweis

Funktionen

Schauen wir nun, was in den Funktionen geschieht:

defaultwerte_laden ()

Viele User werden ihre Aufnahmen, Videoclips und OpenOffice-Dateien an Orten abspeichern, die ihnen sinnvoll erscheinen. In dieser Funktion kann der Nutzer diese Pfade eingegen. Ändert er nichts, werden Default-Einstellungen verwendet:

  • aufnahmeordner: Hier werden die dvb-Aufnahmen vom Aufnahmeprogramm (z.B. kaffeine) gespeichert
  • schablonenordner: Hier befinden sich die Druckschablonen für den DVD-Direktdruck. Wie solche Schablonen selber gebaut werden können, steht hier: DVD Direktdruck
  • clipordner: Hier werden die fertigen Videoclips gepeichert

verzeichnisstruktur_inifiles ()

Zur komplikationslosen Kommunikation zwischen Hauptscript und GUI müssen einige Dateien an fest definierten Orten stehen. Hierzu wird das Verzeichnis ~/.dvb_script_gui.ini erstellt, das einige Unterverzeichnisse besitzt:

  • fortschrittfenster: Diese Datei enthält den im Script festgelegten Text, der dann in der GUI angezeigt werden kann
  • debugfenster: In diese Datei wird die Standard-Fehlerausgabe der verwendeten Scriptbefehle umgeleitet. Sie kann in der GUI angezeigt werden.
  • pfad_hauptverzeichnis: Hier steht der Pfad zum Hauptverzeichnis drin, der im nächsten Schritt festgelegt wird
  • X.ini.film: Das ist die Initialisierungdatei für ProjectX
  • aufnahme-, schlablonen, clipordner: Hier stehen die vorhin festgelegten Default-Pfade
  • hilfsprogramme: Hier sind die Pfade zu den Hilfsprogrammen enthalten, die nachher noch abgefragt werden

hauptverzeichnis_festlegen ()

In dieser Funktion wird der Pfad zum und der Name des Hauptverzeichnisses abgefragt und angelegt. Die prinzipielle Wirkungsweise dieser Funktion kann hier nachgelesen werden: hauptverzeichnis_festlegen

verzeichnisstruktur_hauptfiles ()

Die vom Programm benötigte Verzeichnisstruktur wird nun erzeugt. Hier die Erläuterung zu einigen der Verzeichnisse:

  • ${hauptverzeichnis}/gui/guicode.kmdr: In diese Datei wird vom User der Programmcode der Bedienoberfläche kopiert (siehe Kurzanleitung)
  • ${hauptverzeichnis}/script/scriptcode.sh: In diese Datei wird vom User der Programmcode des Hauptscriptes kopiert (siehe Kurzanleitung)
  • ${hauptverzeichnis}/save: Enthält die fertig bearbeitenten Files (DVD-Struktur und/oder TS-Files), die noch gebrannt werden müssen
  • ${hauptverzeichnis}/screenshot: Hier sind die selbst geschossenen Screenshots drin, die für den DVD-Direktdruck verwendet werden können
  • ${hauptverzeichnis}/temp/*: Temporäre Ordner, die beim Programmstart geleert werden

So noch nicht vorhanden, werden noch die Verzeichnisse für Aufnahhme, Videoclips und Druckschablonen angelegt

ini_file_pjx ()

Ist hier erklärt: X.ini

hilfsprogramme_abfragen ()

Die prinzipielle Wirkungsweise dieser Funktion kann hier nachgeschlagen werden: Programmerkennung

desktop_datei_anlegen ()

Eine Desktop-Datei ist eine Startdatei für ein Programm. Sie kann in KDE einfach erstellt werden, in dem man mit der rechten Maustaste auf die Arbeitsfläche klickt und im Kontextmenue dann auswählt: < Neu erstellen - Verknüpfen mit Programm > Dann einfach alles notwendige ausfüllen.

Der Code einer solchen Startdatei kann mit kate angesehen werden. Hier die Erklärung der wichtigsten Einstellungen für unseren speziellen Fall, nämlich den Start des DVB-Script-Programmes:

  • Exec=kmdr-executor ${hauptverzeichnis}/gui/guicode.kmdr: Mit diesem Eintrag startet das Programm
  • Icon=kcmperformance: Eine kleine Rakete wurde als Icon für die Startdatei ausgewählt
  • Terminal=false: Das Programm nicht in einem Terminal ausführen

Das Startprogramm wird hier angelegt: ~/Desktop/DVB-Script

Nach erfolgreicher Installation kann das Programm durch Linksklick auf diese Datei gestartet werden.


will be continued