Dvb script gui/anleitung: Unterschied zwischen den Versionen

Aus Linupedia.org
Wechseln zu: Navigation, Suche
(Inhalt gelöscht für Neuaufbau)
(Anleitungen für die Scripversion 0.1.0)
Zeile 1: Zeile 1:
{{UnderConstruction}}
 
 
{{Box Test||
 
{{Box Test||
 
OpenSuse 11.0 (32Bit) mit KDE 3.9.x <br>
 
OpenSuse 11.0 (32Bit) mit KDE 3.9.x <br>
Zeile 7: Zeile 6:
 
{{dvb_script_gui_navibox}}
 
{{dvb_script_gui_navibox}}
  
wird noch ergänzt
+
==<font color="maroon"> Bedienungsanleitung </font>==
 +
 
 +
===Die GUI===
 +
 
 +
Die Bedienung des Programms gestaltet sich sehr einfach:
 +
 
 +
* Programm starten
 +
* Gewünschte Aufgabe auswählen
 +
* Auf den Go-Button drücken
 +
 
 +
Im linken Fenster wird der aktuelle Bearbeitungsfortschritt angezeigt. Die Meldungen, die hier erscheinen, wurden vom Progrmmierer (also von mir) explizit so festgelegt.
 +
 
 +
Das rechte Fenster zeigt Meldungen der beteiligten Programme, die über ''stderr'' ausgegeben wurden. Diese Meldungen können sehr gut beim Programmieren zur Fehlersuche verwendet werden, deshalb auch der Name ''Debug-Fenster''.
 +
 
 +
Im ''Debug-Fenster'' fallen noch die zwei Knöpfe ''Ein'' und ''Aus'' auf. Mit ihnen hat es folgende Bewandnis:
 +
 
 +
*'''Vor Drücken auf Go''': Das Debug-Fenster kann ein- oder ausgeschaltet werden
 +
*'''Nach Programmende''': Der Scrollmodus des Fensters kann ein- oder ausgeschaltet werden
 +
 
 +
Zum Scroll-Modus ist noch folgendes zu sagen:
 +
 
 +
Da von den Programmen sehr viele Meldungen kommen, wird der Fokus auf die letzen Meldungen gesetzt, damit die Anzeige immer aktuell ist. Nach Programmende läßt sich diese Fokussierung ausschalten, damit man im ''Debug-Log'' nach oben Scrollen kann.
 +
 
 +
===Die Aufgaben===
 +
 
 +
Die Aufgaben sind in drei Gruppen eingeteilt:
 +
 
 +
====<font color="gray"> Video-DVD </font>====
 +
 
 +
Ziel ist es, den aufgenommenen Film zu schneiden und daraus eine Video-DVD zu machen. Folgende Möglichkeiten werden hier angeboten:
 +
 
 +
* Den Film schneiden und daraus eine Video-DVD brennen
 +
* Das Bearbeitungsergebnis im Sicherungsordner zwischenspeichern
 +
* Die gesicherte DVD-Struktur als Video-DVD brennen
 +
* Die DVD bedrucken
 +
 
 +
Der grundsätzliche Weg zu einer Video-DVD ist in einem [[Dvb wiki script/Weg|Artikel]] im DVB_Wiki_Buch beschrieben.
 +
 
 +
====<font color="gray"> Daten-DVD </font>====
 +
 
 +
Hier kann der Film als TS-File auf DVD gebrannt werden. Diese Möglichkeit verwende ich dazu, einen geschnittenen Film sozusagen im "Rohformat" zu sichern. Auch hier gibt es verschiedene Auswahlmöglichkeiten:
 +
 
 +
* Den Film schneiden und daraus eine Daten-DVD brennen
 +
* Das Bearbeitungsergebnis im Sicherungsordner zwischenspeichern
 +
* Das gesicherte File als Daten-DVD brennen
 +
* Die DVD bedrucken
 +
 
 +
Eine solche Daten-DVD ist in einem normalen DVD-Spieler nicht abspielbar!
 +
 
 +
====<font color="gray"> Videoclip </font>====
 +
 
 +
Diese Gruppe habe ich eingeführt, um Musik-Videoclips schneiden und in einer Playlist organisieren zu können. Dazu wird der Eingangsstream nach dem Schneiden in eine mpeg-Datei umgewandelt und auf Festplatte gespeichert. Zusätzlich kann der Ton [http://wiki.linux-club.de/opensuse/Dvb_wiki_script/Programmieranleitung#normalisieren_.28.29 normalisiert] werden. Die angebotenen Auswahlmöglichkeiten unterscheiden sich nach der Art des Eingangssignals und danach, welche Tonspuren verwendet werden sollen:
 +
 
 +
'''Mpeg2-Stream schneiden und im Videoclip-Ordner speichern. Dabei folgende Tonspuren verwenden''':
 +
* Alle ac3 und mp2
 +
* Nur ac3
 +
* Nur mp2
 +
* Nur mp2 normalisiert
 +
 
 +
'''Mpeg1-Stream schneiden und im Videoclip-Ordner speichern. Dabei folgende Tonspuren verwenden''':
 +
* Nur mp2
 +
* Nur mp2 normalisiert
 +
 
 +
==<font color="maroon"> Playlist für mplayer </font>==
 +
 
 +
=== Playlist erzeugen ===
 +
 
 +
Die Musikclips befinden sich alle im Videoclipordner. Jedesmal, wenn auf den ''Go-Button'' gedrückt wird, werden die Namen und Pfade der dort gespeicherten Dateien in eine Textdatei geschrieben, die ''mplayer'' als Playlist verwendet.
 +
find $videoclips/* > ~/.mplayer/playlist
 +
 
 +
=== Playlist abspielen ===
 +
 
 +
Diese Wiedergabeliste kann mit folgendem Befehl abgespielt werden:
 +
mplayer -xy 1280 -playlist ~/.mplayer/playlist -shuffle -vf pp=lb -fixed-vo
 +
 
 +
*''mplayer:'' Aufruf von mplayer.
 +
*''-xy 1280:'' Grösse des Ausgabefensters. Es genügt die Angabe der horizontalen Pixelzahl, die vertikale Anzahl der Bildpunkte wird dann automatisch eingestellt.
 +
*''~/.mplayer/playlist:'' Hier ist die Wiedergabeliste gespeichert.
 +
 
 +
Alle Angaben, die nach der Playlist kommen, beziehen sich auf die komplette Wiedergabeliste, nicht auf ein einzelnes Lied aus der Liste.
 +
 
 +
*''-shuffle:'' Die Auswahl der Videoclips erfolgt nach dem Zufallsprinzip.
 +
*''-vf pp=lb:'' Einschalten eines linearen Deinterlace-Filters.
 +
*''-fixed-vo:'' Alle Clips werden in einem einzigen Fenster abgespielt.
 +
 
 +
Diesen Befehl habe ich in eine Desktop-Datei eingegeben, mit der ich die Wiedergabe starte.
 +
 
 +
==<font color="maroon"> Das Bedrucken von DVDs </font>==
 +
 
 +
Ich verwende DVDs, die mit einem Tintenstrahler bedruckt werden können. Dazu verwende ich selbst erstellte [[DVD Direktdruck|Druckschablonen]] für oodraw. Den Aufruf dieser Schablonen habe ich unter den Menuepunkten ''DVD bedrucken'' in der GUI realisiert.
 +
 
 +
==<font color="maroon"> Der Programmcode des Arbeits-Scriptes </font>==
 +
 
 +
Der Aufbau des Bash-Scriptes wurde in einem [[Dvb wiki script/Programmieranleitung|Artikel]] im DVB_Wiki_Buch beschrieben. Dort ist genau erklärt, was welcher Befehl wie bewirkt. Da es jedoch einige nicht unerhebliche Anderungen gibt, wird die Funktionsweise des Scriptes noch einmal kurz umrissen.
 +
 
 +
===Vorbereitungen (Installationsroutine)===
 +
 
 +
*'''Übernahme von Kommander''': Die von der GUI übergebene Kennzahl wird übernommen. An Hand dieser Kennzahl werden die Aufgaben gestartet
 +
*'''Voreinstellungen''': Einstellungen, die von Benutzer angepasst werden müssen (Ist in der Installationsanleitung beschrieben)
 +
*'''Hauptverzeichnis festlegen''': Der User legt das Hauptverzeichnis fest. Der Pfad des Verzeichnisses wird nach ''~/.dvb_script_kommander/hauptverzeichnis'' geschrieben
 +
*'''Verzeichnisstruktur erstellen''': Im Hauptverzeichnis werden die Arbeitsverzeichnisse erstellt
 +
*'''Anzeigefenster leeren und einstellen''': Erzeugen der Textdateien für die Logs, die von der GUI periodisch abgefragt und zur Anzeige gebracht werden. Umleiten von stderr in das Debug-Log
 +
*'''Hilfsprogramme festlegen''': Suchen, ob die Helferprogramme vorhanden sind. Den Pfad der Programme nach ''~/.dvb_script_kommander/$var'' speichern
 +
*'''Hilfsprogramme laden''': Laden der Pfade zu den Helferprogrammen aus den Sicherungsfiles und zuweisen zu Variablen, die dann im weiteren Scriptverlauf benutzt werden
 +
*'''X.ini erzeugen''': Die Initialisierungsdatei für ProjectX erzeugen. Sie sorgt unter anderem dafür, daß pjx (aktuelle CVS-Version vorausgesetzt) mit einem maximierten Vorschaufenster startet
 +
*'''Playlist für mplayer''' Das erzeugen eine Playlist wurde oben schon erklärt
 +
*'''Löschen''': Löschen des Inhalts der Arbeitsverzeichnisse für einen sauberen Start der Bearbeitung
 +
 
 +
===Funktionen (die eigentlichen Bearbeitungsschritte)===
 +
 
 +
*'''benutzerabbruch ()''': Programmabbruch durch den Benutzer
 +
*'''funktionsabbruch ()''': Programmabbruch, erzwungen durch das Programm
 +
*'''programmende ()''': wird von den beiden obigen Funktionen aufgerufen
 +
 
 +
*'''filmauswahl ()''': Der zu bearbeitende Film wird geladen. Zudem wird in Abhängigkeit von der Kennzahl das Quellverzeichnis für das Brennen festgelegt.
 +
*'''verzeichnisauswahl ()''': Auswahl der Sicherungen. Weiterverarbeitung in Abhängigkeit vom Dateityp. Festlegen des Quellverzeichnisses für das Brennen.
 +
 
 +
*'''pjx_demux_gui ()''': Starten von projectX zum Schneiden und Demultiplexen. Überprüfung, ob das Schnittergebnis auf eine einzelne DVD passt.
 +
*'''pjx_ts_gui ()''': Starten von projectX zum Schneiden. Wandeln nach TS für eine Daten-DVD
 +
*'''mpeg1_input ()''': Demultiplexen eines mpeg1-Files. Decodieren der Audio-Spur
 +
 
 +
*'''normalisieren ()''': Die Tonspur wird normalisiert. Dazu wird sie mit ffmpeg decodiert, mit normalize auf eine definierte Lautstärke gebracht und anschließend mit ffmpeg wieder codiert.
 +
*'''ac3_behalten ()''': nur die ac3-Tonspuren werden behalten und weiterverarbeitet
 +
*'''mp2_behalten ()''': nur die mp3-Tonspuren werden behalten und weiterverarbeitet
 +
 
 +
*'''multiplexen ()''': Bild und Ton werden multiplext. Dabei wird das Ergebnis schon für das Authorn vorbereitet.
 +
 
 +
*'''authoring_ohne_menue ()''': Die DVD-Struktur wird erzeugt (ohne DVD-Menue)
 +
 
 +
*'''brennen_video_dvd ()''': Die DVD-Struktur wird als Video-DVD gebrannt
 +
*'''video_dvd_bereit ()''': Überprüfen, ob die DVD in der Schublade ist und ob sie bespielt werden kann
 +
 
 +
*'''brennen_ts ()''': Das ts-file wird als Daten-DVD gebrannt
 +
*'''loop_brennen_ts ()''': Reicht eine DVD nicht aus, wird die nächste angefordert
 +
*'''daten_dvd_bereit ()''': Überprüfen, ob die DVD in der Schublade ist und ob sie bespielt werden kann
 +
 
 +
*'''sichern_dvd_struktur ()''': Die DVD-Struktur wird gesichert. Der Name des Sicherungsordners ist das aktuelle Datum und die aktuelle Uhrzeit
 +
*'''sichern_ts ()''': Das ts-file wird gesichert. Der Name des Sicherungsordners ist das aktuelle Datum und die aktuelle Uhrzeit
 +
*'''sichern_clip ()''': Der Videoclip wird im Clipordner gespeichert. Dabei wird überprüft, ob ein Clip gleichen Namens dort schon existiert
 +
 
 +
===Hauptprogramm (Aufruf der Funktionen)===
 +
 
 +
In Abhängigkeit von der Aufgabe und der damit von der GUI übernommenen Kennzahl werden die Funktionen in der richtigen Reihenfolge abgearbeitet. Im Falle des Direktdrucks wird openoffice-draw über die jeweilige Druckschablone gestartet
  
 
{{dvb_script_gui_navibox}}
 
{{dvb_script_gui_navibox}}
 
[[Multimedia|Zurück zur Multimedia-Übersicht]]
 
[[Multimedia|Zurück zur Multimedia-Übersicht]]
 
[[Category:DVB-Weiterverarbeitung]]
 
[[Category:DVB-Weiterverarbeitung]]

Version vom 4. Januar 2009, 21:05 Uhr

Diese Beschreibung wurde mit folgenden Distributionen getestet:

OpenSuse 11.0 (32Bit) mit KDE 3.9.x
OpenSuse 11.0 (32Bit) mit KDE 4.1


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



Bedienungsanleitung

Die GUI

Die Bedienung des Programms gestaltet sich sehr einfach:

  • Programm starten
  • Gewünschte Aufgabe auswählen
  • Auf den Go-Button drücken

Im linken Fenster wird der aktuelle Bearbeitungsfortschritt angezeigt. Die Meldungen, die hier erscheinen, wurden vom Progrmmierer (also von mir) explizit so festgelegt.

Das rechte Fenster zeigt Meldungen der beteiligten Programme, die über stderr ausgegeben wurden. Diese Meldungen können sehr gut beim Programmieren zur Fehlersuche verwendet werden, deshalb auch der Name Debug-Fenster.

Im Debug-Fenster fallen noch die zwei Knöpfe Ein und Aus auf. Mit ihnen hat es folgende Bewandnis:

  • Vor Drücken auf Go: Das Debug-Fenster kann ein- oder ausgeschaltet werden
  • Nach Programmende: Der Scrollmodus des Fensters kann ein- oder ausgeschaltet werden

Zum Scroll-Modus ist noch folgendes zu sagen:

Da von den Programmen sehr viele Meldungen kommen, wird der Fokus auf die letzen Meldungen gesetzt, damit die Anzeige immer aktuell ist. Nach Programmende läßt sich diese Fokussierung ausschalten, damit man im Debug-Log nach oben Scrollen kann.

Die Aufgaben

Die Aufgaben sind in drei Gruppen eingeteilt:

Video-DVD

Ziel ist es, den aufgenommenen Film zu schneiden und daraus eine Video-DVD zu machen. Folgende Möglichkeiten werden hier angeboten:

  • Den Film schneiden und daraus eine Video-DVD brennen
  • Das Bearbeitungsergebnis im Sicherungsordner zwischenspeichern
  • Die gesicherte DVD-Struktur als Video-DVD brennen
  • Die DVD bedrucken

Der grundsätzliche Weg zu einer Video-DVD ist in einem Artikel im DVB_Wiki_Buch beschrieben.

Daten-DVD

Hier kann der Film als TS-File auf DVD gebrannt werden. Diese Möglichkeit verwende ich dazu, einen geschnittenen Film sozusagen im "Rohformat" zu sichern. Auch hier gibt es verschiedene Auswahlmöglichkeiten:

  • Den Film schneiden und daraus eine Daten-DVD brennen
  • Das Bearbeitungsergebnis im Sicherungsordner zwischenspeichern
  • Das gesicherte File als Daten-DVD brennen
  • Die DVD bedrucken

Eine solche Daten-DVD ist in einem normalen DVD-Spieler nicht abspielbar!

Videoclip

Diese Gruppe habe ich eingeführt, um Musik-Videoclips schneiden und in einer Playlist organisieren zu können. Dazu wird der Eingangsstream nach dem Schneiden in eine mpeg-Datei umgewandelt und auf Festplatte gespeichert. Zusätzlich kann der Ton normalisiert werden. Die angebotenen Auswahlmöglichkeiten unterscheiden sich nach der Art des Eingangssignals und danach, welche Tonspuren verwendet werden sollen:

Mpeg2-Stream schneiden und im Videoclip-Ordner speichern. Dabei folgende Tonspuren verwenden:

  • Alle ac3 und mp2
  • Nur ac3
  • Nur mp2
  • Nur mp2 normalisiert

Mpeg1-Stream schneiden und im Videoclip-Ordner speichern. Dabei folgende Tonspuren verwenden:

  • Nur mp2
  • Nur mp2 normalisiert

Playlist für mplayer

Playlist erzeugen

Die Musikclips befinden sich alle im Videoclipordner. Jedesmal, wenn auf den Go-Button gedrückt wird, werden die Namen und Pfade der dort gespeicherten Dateien in eine Textdatei geschrieben, die mplayer als Playlist verwendet.

find $videoclips/* > ~/.mplayer/playlist

Playlist abspielen

Diese Wiedergabeliste kann mit folgendem Befehl abgespielt werden:

mplayer -xy 1280 -playlist ~/.mplayer/playlist -shuffle -vf pp=lb -fixed-vo
  • mplayer: Aufruf von mplayer.
  • -xy 1280: Grösse des Ausgabefensters. Es genügt die Angabe der horizontalen Pixelzahl, die vertikale Anzahl der Bildpunkte wird dann automatisch eingestellt.
  • ~/.mplayer/playlist: Hier ist die Wiedergabeliste gespeichert.

Alle Angaben, die nach der Playlist kommen, beziehen sich auf die komplette Wiedergabeliste, nicht auf ein einzelnes Lied aus der Liste.

  • -shuffle: Die Auswahl der Videoclips erfolgt nach dem Zufallsprinzip.
  • -vf pp=lb: Einschalten eines linearen Deinterlace-Filters.
  • -fixed-vo: Alle Clips werden in einem einzigen Fenster abgespielt.

Diesen Befehl habe ich in eine Desktop-Datei eingegeben, mit der ich die Wiedergabe starte.

Das Bedrucken von DVDs

Ich verwende DVDs, die mit einem Tintenstrahler bedruckt werden können. Dazu verwende ich selbst erstellte Druckschablonen für oodraw. Den Aufruf dieser Schablonen habe ich unter den Menuepunkten DVD bedrucken in der GUI realisiert.

Der Programmcode des Arbeits-Scriptes

Der Aufbau des Bash-Scriptes wurde in einem Artikel im DVB_Wiki_Buch beschrieben. Dort ist genau erklärt, was welcher Befehl wie bewirkt. Da es jedoch einige nicht unerhebliche Anderungen gibt, wird die Funktionsweise des Scriptes noch einmal kurz umrissen.

Vorbereitungen (Installationsroutine)

  • Übernahme von Kommander: Die von der GUI übergebene Kennzahl wird übernommen. An Hand dieser Kennzahl werden die Aufgaben gestartet
  • Voreinstellungen: Einstellungen, die von Benutzer angepasst werden müssen (Ist in der Installationsanleitung beschrieben)
  • Hauptverzeichnis festlegen: Der User legt das Hauptverzeichnis fest. Der Pfad des Verzeichnisses wird nach ~/.dvb_script_kommander/hauptverzeichnis geschrieben
  • Verzeichnisstruktur erstellen: Im Hauptverzeichnis werden die Arbeitsverzeichnisse erstellt
  • Anzeigefenster leeren und einstellen: Erzeugen der Textdateien für die Logs, die von der GUI periodisch abgefragt und zur Anzeige gebracht werden. Umleiten von stderr in das Debug-Log
  • Hilfsprogramme festlegen: Suchen, ob die Helferprogramme vorhanden sind. Den Pfad der Programme nach ~/.dvb_script_kommander/$var speichern
  • Hilfsprogramme laden: Laden der Pfade zu den Helferprogrammen aus den Sicherungsfiles und zuweisen zu Variablen, die dann im weiteren Scriptverlauf benutzt werden
  • X.ini erzeugen: Die Initialisierungsdatei für ProjectX erzeugen. Sie sorgt unter anderem dafür, daß pjx (aktuelle CVS-Version vorausgesetzt) mit einem maximierten Vorschaufenster startet
  • Playlist für mplayer Das erzeugen eine Playlist wurde oben schon erklärt
  • Löschen: Löschen des Inhalts der Arbeitsverzeichnisse für einen sauberen Start der Bearbeitung

Funktionen (die eigentlichen Bearbeitungsschritte)

  • benutzerabbruch (): Programmabbruch durch den Benutzer
  • funktionsabbruch (): Programmabbruch, erzwungen durch das Programm
  • programmende (): wird von den beiden obigen Funktionen aufgerufen
  • filmauswahl (): Der zu bearbeitende Film wird geladen. Zudem wird in Abhängigkeit von der Kennzahl das Quellverzeichnis für das Brennen festgelegt.
  • verzeichnisauswahl (): Auswahl der Sicherungen. Weiterverarbeitung in Abhängigkeit vom Dateityp. Festlegen des Quellverzeichnisses für das Brennen.
  • pjx_demux_gui (): Starten von projectX zum Schneiden und Demultiplexen. Überprüfung, ob das Schnittergebnis auf eine einzelne DVD passt.
  • pjx_ts_gui (): Starten von projectX zum Schneiden. Wandeln nach TS für eine Daten-DVD
  • mpeg1_input (): Demultiplexen eines mpeg1-Files. Decodieren der Audio-Spur
  • normalisieren (): Die Tonspur wird normalisiert. Dazu wird sie mit ffmpeg decodiert, mit normalize auf eine definierte Lautstärke gebracht und anschließend mit ffmpeg wieder codiert.
  • ac3_behalten (): nur die ac3-Tonspuren werden behalten und weiterverarbeitet
  • mp2_behalten (): nur die mp3-Tonspuren werden behalten und weiterverarbeitet
  • multiplexen (): Bild und Ton werden multiplext. Dabei wird das Ergebnis schon für das Authorn vorbereitet.
  • authoring_ohne_menue (): Die DVD-Struktur wird erzeugt (ohne DVD-Menue)
  • brennen_video_dvd (): Die DVD-Struktur wird als Video-DVD gebrannt
  • video_dvd_bereit (): Überprüfen, ob die DVD in der Schublade ist und ob sie bespielt werden kann
  • brennen_ts (): Das ts-file wird als Daten-DVD gebrannt
  • loop_brennen_ts (): Reicht eine DVD nicht aus, wird die nächste angefordert
  • daten_dvd_bereit (): Überprüfen, ob die DVD in der Schublade ist und ob sie bespielt werden kann
  • sichern_dvd_struktur (): Die DVD-Struktur wird gesichert. Der Name des Sicherungsordners ist das aktuelle Datum und die aktuelle Uhrzeit
  • sichern_ts (): Das ts-file wird gesichert. Der Name des Sicherungsordners ist das aktuelle Datum und die aktuelle Uhrzeit
  • sichern_clip (): Der Videoclip wird im Clipordner gespeichert. Dabei wird überprüft, ob ein Clip gleichen Namens dort schon existiert

Hauptprogramm (Aufruf der Funktionen)

In Abhängigkeit von der Aufgabe und der damit von der GUI übernommenen Kennzahl werden die Funktionen in der richtigen Reihenfolge abgearbeitet. Im Falle des Direktdrucks wird openoffice-draw über die jeweilige Druckschablone gestartet


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


Zurück zur Multimedia-Übersicht