mpeg-Howto
Diese Seite gibt eine Anleitung, wie man aus einer Sequenz von Bildern
einen mpeg-Film herstellt. Folgende Software wird benötigt:
- mpeg_encode (http://bmrc.berkeley.edu/frame/research/mpeg/mpeg_encode.html)
- anytopnm
- mpegEncParam.sh (~weiss/sequences/bin/)
Die Sequenz sollte wie folgt aufbereitet sein:
- Es besteht ein Verzeichnis mit den Bildern der Sequenz. Außer
diesen Bildern befindet sich dort nichts anderes.
- Alle Bilder haben die gleiche Größe (Breite*Höhe)
- Die Bilder liegen in einem Format vor, daß mit anytopnm
konvertiert werden kann.
- Die Bilder brauchen nicht in einem einheitlichen Format vorliegen,
z.B. können es Tiffs und Pngs sein.
- Die Reihenfolge der Bilder im Film entspricht der alphanummerischen
Ordnung der Namen der Bilder. (ls zeigt diese Reihenfolge.)
Parameter-Datei für mpeg_encode herstellen
mpeg_encode benötigt als Eingabe eine Text-Datei, die alle wichtigen
Parameter zur Erzeugung des Films enthält. Der genaue Aufbau dieser
Datei wird hier
erklärt. Wer sich mit den technischen Details von mpeg nicht gut auskennt,
kann die Parameter-Datei mit mpegEncParam.sh automatisiert herstellen.
mpegEncParam.sh hat die folgenden Parameter:
- Der Name und Pfad der zu schreibenden mpeg-Datei. Bsp.: /home/weiss/myNewMovie.mpg
- Das Verzeichnis mit den Bildern. Bsp.: /home/weiss/BilderSequenz1/
- Die Qualität des mpeg-Films von 1 (höchste) bis 10
(niedrigste).
- Optional: Die Berechnungsgeschwindigkeit von 1 (langsamste) bis
10 (schnellste). Default ist die eingestellte Qualität.
- Optional: Die Skalierung der Bilder (ein Wert >0.0). Default
ist 1.0.
Das Programm mpegEncParam.sh befüllt entsprechend der Kombination
von Qualität und Geschwindigkeit die Parameter-Datei. Dabei sollte
man beachten, daß
- eine bessere Qualität automatisch die Dateigröße
des mpegs anhebt.
- die Geschwindigkeit die Berechnungstiefe steuert, d.h. zu einem
gewissen Maße auch die Qualität und Größe des mpegs.
- sehr kleine Werte extreme Größe bzw. Rechendauer zur
Folge haben können.
- eine Verkleinerung (Skalierung <1.0) die Qualität
und Größe entsprechend verändert.
- eine Vergrößerung der Bilder (Skalierung >1.0)
wenig sinnvoll ist, da man mpeg üblicherweise einfach bei der Ausgabe
skalieren kann.
- das Ergebnis auf stdout ausgegeben wird, welches man entsprechend
in eine Datei umleiten sollte.
Berechnen des mpeg-Films
Dieser Schritt ist nach der Erzeugung der Parameter-Datei sehr einfach,
kann u.U. aber sehr lange brauchen *! Sei die Parameter-Datei unter pm-file
zu finden, dann erzeugt
> mpeg_encode pm-file
den Film. Fertig!
(* Die Rechenzeit kann erheblich verbessert werden,
wenn man mehrere Computer parallel rechnen läßt. Dies wird von
mpeg_encode direkt unterstützt. Siehe dazu bitte die oben erwähnte
Beschreibung der Parameter-Datei.)
(Thomas Weiss, letzte Änderung: 18.6.2003)