30 | 04 | 2025

Die Technik

DreamDVD - Einen Film schneiden

Nehmen wir an, wir hätten einen Film aufgenommen und wollten dieses jetzt schneiden. Die Vorgehensweise ist wie folgt:

  1. Öffnen des Films
  2. Auswählen der Schnittstellen
  3. Auslösen des Demultiplexvorganges (für die Weiterverarbeitung mit einem externen Tool wie dvdmaestro unter Windows) oder Auslösen des Multiplexvorganges zur Weiterverarbeitung mit dvdauthor.

1. Öffnen des Films

Zu beachten ist hier, dass es zwei "Öffnen"-Ordner gibt. DreamDVD unterscheidet zwischen dem Öffnen eines Projektes und dem Öffnen eines Films. Wählen Sie bitte den zweiten"Öffnen"-Ordner aus, wie in der Abbildung dargestellt.

Öffnen eines Videos

2. Auswählen der Schnittstellen

Nach dem Öffnen eines Films, wird dieser in der Regel erst geparst. Der Prozess des Parsens ist hier notwendig, um die möglichen Schnittstellen zu ermitteln. Da DreamDVD nur an I-Frames schneiden kann, werden alle I-Frames in dem betreffenden Videostream gesucht. Nach dem Vorgang kann dann mit dem Schnitt des Videos begonnen werden. Des Weiteren kann man sich über die Details des Films informieren. In dem hier aufgeführten Beispiel kann man erkennen, dass die Auflösung 480x576 Bildpunkte entspricht. Darüberhinaus erfährt man mehr über die entsprechenden PIDs.

Schneiden eines Videos

Wenn man seine Schnittstellen markiert (auf grünes Plus bei Cuts drücken) dann färbt sich der unter Balken entsprechend der Anzahl Schnittstellen Rot, bzw. Grün. Alles was rot dargestellt wird, wird später verworfen. Nur der grüne Anteil wird in das fertige Video eingearbeitet werden.

3. Multiplexen oder Demultimplexen?

Nun diese Frage hängt jetzt davon ab, wie Sie den Film weiterverarbeiten möchten. Schneiden Sie beispielsweise unter Windows und möchten das Tool dvdmaestro benutzen, dann müssen Sie den Stream demultiplexen, so dass jeweils eine Video- und eine Audiodatei erzeugt wird. Wenn Sie jedoch mit meinem DVDAuthoring-Plugin, oder mit dvdauthor direkt arbeiten möchten, dann müssen Sie den Film neu multiplexen. Neu multiplexen meint hier, dass sozusagen aus der Transport-Stream-Datei eine reine für dvdauthor geeignete MPEG-Datei erzeugt wird. Je nachdem wie Sie sich entscheiden müssen Sie wie in der folgenden Abbildung dargstellt, den entsprechenden Knopf für Multiplex oder Demultiplex drücken.

Schalter für Multiplex und Demultiplex

Drückt man eines dieser Knöpfe, entstehen die entsprechenden Dateien. Beim Multiplex entsteht eine neue MPG-Datei, bei Demultiplex entstehen eine M2V-Datei (Video) und MP*-Dateien für Audio. Eventuell, bei vorhandenem AC3-Stream noch eine .ac3-Datei. 

 

DreamDVD - Eine Einführung in das Programm

Der Aufbau der Programmoberfläche ist in der folgenden Darstellung zu finden.

Das Hauptprogramm

Startet man DreamDVD sieht man obiges Bild. 

Mein Programm ist Modular aufgebaut. Es gibt für jede Aufgabe ein Plugin. Nur das Schnittprogramm ist fest integriert. DVD Authoring ist demnach neben mediaDB ein Plugin.

DVDAuthoring arbeitet eng mit dvdauthor an der Erstellung einer DVD und ist angelehnt an die Funktionsweise des Tools DVDStyler.

mediaDB soll ein Plugin werden, mit dem Filme und Medien überhaupt katalogisiert und archiviert werden können. Dieses Plugin ist aber momentan noch nicht verfügbar. 

DreamDVD - Ein Schnittprogramm für Transport Streams

Sie haben Recht! Es gibt mittlerweile eine unüberschaubare Menge an solchen Tools. Ich finde trotzdem hat jedes Tool seine Stärken und Schwächen. Insbesondere unter Linux findet man viele Programme die noch nicht so ausgereift sind. Eines vorweg! Mein Programm ist nicht perfekt und wird wahrscheinlich auch nie perfekt sein. Es soll nur einen Beitrag leisten, die Multimediaentwicklung unter Linux voranzutreiben.

Nun zu meinem Tool. Es entstand während meiner Examensarbeit im Jahre 2004. Ich wünschte mir ein Programm unter Linux, welches in der Lage ist, die Streams meiner Dreambox zu schneiden, zu muxxen und anschließend eine Datei zu erzeugen, die mit dvdauthor weiterverarbeitet werden konnte. Ursprünglich wollte ich auch so viel wie möglich vorhandene Tools kombinieren. Nur stellte sich meine Wissbegier dagegen. Ich wollte herausfinden, wie diese Videotechnik, insbesondere diese Streams aufgebaut sind. So ergab es sich, dass ich lediglich zum Anzeigen der Einzelbilder, also für die Dekodierung des MPEG2-Datenstroms das Framework libmpeg2, bzw. später die ffmpeg benutzte. Das Schneiden, das Demultiplexen und Multiplexen habe ich selbst mit Hilfe der RFC's, der vielen Foren und verschiedener Beispiele implementiert.

Auf den hiesigen Seiten möchte ich nun zunächst mein Ergebnis, sowie einige interessante technische Aspekte die ich zu knacken hatte erklären. Der vollstständige Quellcode wird bei sourceforge.net gehostet und kann von dort auch heruntergeladen werden.

Viel Spass beim Forschen wünscht

 

Ihr Sven Alisch

PS:

Wenn Sie fragen haben, so zögern sie nicht diese in mein Forum auf sourceforge.net zu posten.