ÜBERSICHT
dvgrab [Optionen] [Basis] [-]
BESCHREIBUNG
dvgrab ist ein Programm, mit dem DV oder HDV (MPEG2-TS) Video- und Audiodaten von einem digitalen Camcorder via IEEE1394-Verbindung importiert werden können. Die Daten werden in einer oder mehreren Dateien gespeichert und können später mit einem Videobearbeitungsprogramm weiter verarbeitet werden. dvgrab kann den Camcorder fernsteuern, aber zeigt das Videomaterial nicht auf dem Bildschirm an.dvgrab unterstützt auch UVC-kompatible (USB Video Class) DV-Geräte durch das Linux-Kernelmodul »uvcvideo«, einen V4L2-Treiber. Dabei gibt es aber keine Steuerung über AV/C, deshalb ist der interaktive Modus ziemlich nutzlos.
Aus dem Argument Basis wird der Dateiname der Videodatei zusammengesetzt: Basis-Zahl.Erw. Zahl ist eine bei 001 beginnende fortlaufende Nummer und Erw eine Dateinamenserweiterung, die vom benutzten Dateiformat abhängt, z. B. avi. Die Namensgebung weicht davon ab, wenn die Option -timestamp, -timecode oder -timesys verwendet wird (siehe unten). Wenn Basis ein vollständiger Dateiname einschließlich einer Namenserweiterung ist, dann versucht dvgrab das Ausgabeformat von dieser Erweiterung abzuleiten, aber es fügt trotzdem Zahl ein. Die voreingestellte Basis ist dvgrab-, wenn keine andere angegeben wurde.
Wenn als Basis das Zeichen '-' verwendet wird, gibt dvgrab die unveränderten DV- oder HDV-Daten auf die Standardausgabe aus. Wenn das Video in eine Datei importiert wird, werden die Daten auch auf die Standardausgabe geschrieben, wenn die Standardausgabe an eine Pipe angeschlossen oder umgeleitet ist.
Sie können dvgrab's leistungsfähige Datei-Schreibfunktionen auch für andere Programme nutzen, die unveränderte DV- oder HDV-Daten erzeugen. Benutzen Sie dafür die Option -stdin und dvgrab versucht die DV- oder HDV-Daten von der Standardeingabe zu lesen, wenn es erkennt, dass es am Ausgang einer Pipe hängt und nicht interaktiv betrieben wird.
OPTIONEN
Optionen, die länger als ein Buchstabe sind, können durch einen oder zwei führende Bindestriche angegeben werden. Optionsname und Argumentwert können durch Leerzeichen oder Gleichheitszeichen getrennt werden.
- -a [Zahl], -autosplit [Zahl]
-
Es wird versucht den Anfang jeder neuen Aufnahme zu erkennen und
in einzelnen Dateien zu speichern. Das kann mit den Optionen
-frames und -size kombiniert werden und mit einer neuen
Datei wird begonnen, wenn eins der angegebenen Ereignisse eintritt.
Automatisches Teilen ist normalerweise ausgeschaltet.
Die Angabe von Zahl ist optional. Ohne diese Angabe findet dvgrab anhand einer Signalisierung im Datenstrom oder einer Unterbrechung in den Zeitstempeln selbst heraus, wann eine neue Datei beginnen soll. Dabei muss der Zeitsprung rückwärts sein oder vorwärts mehr als 1 Sekunde betragen. Durch die Angabe von Zahl kann die Dauer des Zeitsprungs eingestellt werden und die Signalisierung einer neuen Aufnahme im Datenstrom wird nicht mehr beachtet. Dadurch kann man die Aufnahme an größeren Zeitsprüngen, wie Minuten oder Stunden, teilen lassen.
Beispiel: -autosplit=3600 teilt die Aufnahme in mehrere Dateien, wenn sie Zeitsprünge von 1 Stunde oder länger enthält.
- -buffers Zahl
-
Die Anzahl der wegen I/O-Verzögerungen zwischengespeicherten Frames.
Voreingestellt ist 100.
- -card Zahl
-
dvgrab empfängt die Daten von der FireWire-Karte mit der Nummer
Zahl. Standardmäßig wird die erste Karte mit der ersten gefundenen
Kamera verwendet.
In Verbindung mit der Option -noavc wird der Bus nicht abgesucht.
In Verbindung mit der Option -guid Hex-Zahl wird nur der angegebene
Bus nach einem Gerät mit der GUID Hex-Zahl abgesucht.
- -channel Zahl
-
Isochroner Kanal, von dem die Daten empfangen werden. Voreingestellt ist 63, das
ist so üblich bei DV-Camcordern heutzutage. Wenn Sie etwas anderes
angeben, wird dem Gerät zur Zeit nicht mitgeteilt, welchen Kanal es nutzen
soll. Sie müssen dem Gerät selbst übermitteln, welcher Kanal genutzt wird.
- -cmincutsize Zahl
-
Diese Option bewirkt, dass eine Teilung und der Beginn einer neuen
Zusammenstellung Zahl Megabyte (eigentlich Mebibyte) vor dem Ende der aktuellen
Zusammenstellung erfolgt. Diese Option kann verhindern, dass kleine
Dateien entstehen, wenn die Option -csize benutzt wird. Wenn
eine neue Zusammenstellung auf diese Weise begonnen wird, merkt sich das
Programm den frei gebliebenen Speicherplatz. Sollte die neue Zusammenstellung
dort hinein passen, wird der neue Startpunkt zurück gesetzt.
- -csize Zahl
-
Diese Option veranlasst dvgrab Dateien zu teilen, wenn eine
Zusammenstellung von Dateien Zahl Megabyte überschreitet.
Damit können Dateien aneinander gereiht werden und sie passen genau in
Zahl Megabyte (eigentlich Mebibyte) (z. B. zum Archivieren auf DVD).
Wenn die Grenze erreicht wird, beginnt eine neue Zusammenstellung.
(Siehe auch Option -cmincutsize)
- -debug Typ
-
Zeigt HDV-Debug-Informationen an, Typ ist einer oder mehrere von:
all,pat,pmt,pids,pid=N,pes,packet,video,sonya1
- -d, -duration Zeit
-
Setzt die maximale Dauer des Imports inklusive aller Teildateien für
einen einzelnen Import-Vorgang (mehrfache Vorgänge sind im interaktiven
Modus möglich).
Der Wert Zeit wird im »SMIL2 MediaClipping«-Zeitformat angegeben.
Siehe http://w3.org/AudioVideo/ für die Spezifikation. - Kurz beschrieben ist das Format:
- XXX[.Y]h, XXX[.Y]min, XXX[.Y][s], XXXms,
-
[[HH:]MM:]SS[.ms] oder smpte=[[[HH:]MM:]SS:]FF.
- -every n
-
Diese Option veranlasst dvgrab nur jedes n-te Frame
abzuspeichern (standardmäßig alle Frames). - -f, -format dv1 | dv2 | avi | raw | dif | qt | mov | jpeg | jpg | mpeg2 | hdv
-
Gibt das Format der Ausgabedatei(en) an. Das Dateiformat kann auch ermittelt
werden, wenn Sie eine Erweiterung zum Namen Basis angeben. Die
folgenden Erweiterungen werden erkannt: avi, dv, dif, mov, jpg, jpeg und m2t (HDV).
-
dv1 und
dv2 sind beides AVI-Dateien mit etwas unterschiedlichen Formaten.
dv2 speichert eine Tonspur zusätzlich zur DV-Videospur, was kompatibler
mit anderen Anwendungen ist.
dv1 speichert eine einzige DV-Spur, weil das DV-Format grundsätzlich
Ton und Video mischt. Obwohl dv1 kleinere Ausgabedateien erzeugt, verstehen
es manche Anwendungen nicht und verlangen dv2. dvgrab kann sehr
große AVI-Dateien anlegen, z. B. über 2 oder 4 GB, aber die Kompatibilität mit
anderen Anwendungen nimmt über einer Größe von 1 GB ab.
-
raw speichert die Daten unverändert mit der Dateiendung .dv. Diese
Dateien können von einigen GNU/Linux-Werkzeugen gelesen werden, genauso wie
von »Apple Quicktime«.
-
dif eine Abwandlung des raw-Formats; die Dateien erhalten die Endung .dif.
Damit können sie sofort mit Programm »MainConcept MainActor5« geladen werden.
-
qt ist Quicktime-Format, aber erfordert, dass dvgrab mit
»libquicktime« kompiliert wurde.
-
jpg oder jpeg ist für eine Folge von JPEG-Bildern, wenn dvgrab mit
den Bibliotheken libdv und jpeglib kompiliert wurde. Diese Option kann nur bei
DV-Geräten benutzt werden, nicht bei HDV (MPEG2-TS).
-
mpeg2 oder hdv ist für MPEG-2-Transportströme, wenn z. B. ein
HDV-Camcorder oder eine digitale TV-Settop-Box benutzt wird.
-
Voreingestellt ist raw.
- -F, -frames Zahl
-
Diese Option veranlasst dvgrab höchstens Zahl Frames pro Datei
abzuspeichern, bevor eine neue Datei angefangen wird, dabei bedeutet
Zahl = 0 unbegrenzt.
Die Spieldauer der Datei hängt vom verwendeten Videosystem ab.
PAL zeigt 25, NTSC ungefähr 30 Frames pro Sekunde.
- -guid Hex-Zahl
-
Wenn Sie mehr als ein DV-Gerät haben, wählen Sie eins aus, indem Sie die GUID
Hex-Zahl (hexadezimales Format) dieses Geräts angeben. Das Format ist in /proc/bus/ieee1394/devices oder bei Kernel 2.6 im Dateisystem /sys zu sehen. Wenn Sie eine GUID angeben, baut dvgrab eine Punkt-zu-Punkt-Verbindung auf, anstatt auf die Meldung des Geräts zu warten. Wenn Sie als Hex-Zahl den Wert 1 eingeben, versucht dvgrab das Gerät zu finden und baut eine Punkt-zu-Punkt-Verbindung auf. Das ist besonders bei MPEG2-TS Settop-Boxen nützlich, die häufig eine Verbindungsverwaltung erfordern, um mit der Übertragung zu beginnen. - -h, -help
-
Zeigt eine Zusammenfassung der Optionen.
- -I, -input Datei
-
Liest von der Datei anstelle von FireWire. Sie können '-' für
die Standardeingabe anstelle von -stdin verwenden.
- -i, -interactive
-
Versetzt dvgrab in den interaktiven Modus, sodass jeder Tastendruck
die Kamera steuert oder den Import (capture) startet oder stoppt. Andernfalls
läuft dvgrab im Session-Modus, wobei es sofort anfängt einzulesen
und nach Festlegung oder Unterbrechung (durch STRG-c) aufhört.
- -jpeg-deinterlace
-
Zusammen mit -format jpeg entflechtet (deinterlace) es die Ausgabe durch
Verdoppelung der Zeilen im oberen Feld. Dies ist eine einfache Form des
Deinterlace, wobei 50% der Auflösung verloren geht.
- -jpeg-height Zahl
-
Zusammen mit -format jpeg wird die Ausgabe auf eine Höhe von Zahl
(1 - 2048) skaliert.
- -jpeg-overwrite
-
Zusammen mit -format jpeg wird die selbe Datei immer wieder überschrieben,
anstatt eine Folge von Dateien anzulegen.
- -jpeg-quality Zahl
-
Zusammen mit -format jpeg setzt es die JPEG-Qualitätsstufe von 0
(schlechteste) bis 100 (beste).
- -jpeg-temp Datei
-
Beim Erstellen des JPEGs wird eine temporäre Datei benutzt, die in die Zieldatei
umbenannt wird, wenn sie komplett ist. Das ist nützlich, wenn dvgrab mit
der Option -jpeg-overwrite zur Erstellung eines Webcam-Bildes genutzt wird.
- -jpeg-width Zahl
-
Zusammen mit -format jpeg wird die Ausgabe auf eine Breite von Zahl
(1 - 2048) skaliert.
-
Die skalierte Breite und Höhe des JPEGs müssen beide entweder
kleiner oder größer als die normale Frame-Größe sein.
Zum Beispiel, auch wenn eine skalierte Breite von 700 und Höhe von
525 Bildpunkten ein Verhältnis von 4:3 ergibt, ist dieses Bild für
NTSC unzulässig, weil 700 kleiner als die normale Breite von 720 ist,
aber die Höhe ist größer als 480.
-
Weil DV nicht-quadratische Bildpunkte verwendet, ist es gut, das Bild
auf ein Seitenverhältnis von 4:3 mit quadratischen Bildpunkten
skalieren zu können. Für NTSC sind Beispielgrößen:
800x600, 640x480 und 320x240. Für PAL beispielsweise 384x270 und 768x540.
- -jvc-p25
-
Entfernt die Signalisierung »remove_first_field« und setzt den Wert für
Bilder pro Sekunde auf 25, um einen Datenstrom zu korrigieren, der in JVCs Modus »HDV P25« aufgenommen wurde. - -lockstep
-
Richtet den Import an einem Vielfachen von -frames aus, basierend
auf dem Zeitstempel. Das dient der Redundanz, wenn mehr als ein Rechner von dem selben FireWire-Gerät importiert und Sie sicher stellen wollen, dass jede Datei das gleiche Filmmaterial enthält. Damit die Dateien auf jedem Rechner den gleichen Namen haben, benutzen Sie die Option -timecode und die gleiche Basis. - -lockstep_maxdrops Anzahl
-
Wenn hintereinander die Anzahl Frames verworfen wurden, dann wird die Datei
geschlossen und der Import am nächsten »Lockstep«-Intervall wieder gestartet.
Wenn die Anzahl gleich -1 ist, dann ist diese Funtion ausgeschaltet.
Das ist voreingestellt.
- -lockstep_totaldrops Zahl
-
Wenn die absolute Anzahl Frames verworfen wurden, dann wird die Datei
geschlossen und der Import am nächsten »Lockstep«-Intervall wieder gestartet.
Wenn die Anzahl gleich -1 ist, dann ist diese Funtion ausgeschaltet.
Das ist voreingestellt.
- -noavc
-
Schaltet die Kamerasteuerung aus. Das sollte benutzt werden, wenn
Live-Videodaten von der Videokamera im Kamera-Modus importiert werden, weil dabei das AV/C-Kommando »Wiedergabe« die Aufnahme der Kamera starten würde. Möglicherweise wird das eingelegte Band überspielt. Die Option wirkt auf den interaktiven und nicht-interaktiven Modus, weil im letzteren Fall auch Start- und Stopp-Signale zur Kamera gesendet werden, wenn der Import gestartet oder gestoppt wird. - -nostop
-
Beim Beenden von dvgrab wird der AV/C-VTR-Befehl »Stopp« nicht gesendet.
- -opendml
-
Zusammen mit -format dv2 erstellt es eine OpenDML-konforme DV-AVI-Datei
vom Typ 2. Das ist für dv2-Dateien >1GB erforderlich. dv1 unterstützt schon Dateien >1GB. - -r, -recordonly
-
Wenn die Kamera im Aufnahmemodus ist, wird dvgrab nur dann Daten
einlesen, wenn die Kamera aufnimmt und nicht in »Pause« ist. Normalerweise
liest dvgrab immer Daten ein, wenn die Kamera im Aufnahmemodus ist und
überlässt die Steuerung dem Benutzer des Rechners. Mit dieser Option
verhält sich dvgrab wie ein Videorekorder, bei dem der Bediener der
Kamera bestimmt, wann eingelesen wird. Das ist zusammen mit der Option
-autosplit sehr nützlich, um für jede Szene eine eigene Datei
anzulegen. Dazu wird AV/C benötigt und es funktioniert nicht zusammen
mit der Option -noavc.
- -rewind
-
Die Kassette wird bis an den Anfang zurück gespult, bevor mit dem
Dateneinlesen begonnen wird. Dazu wird AV/C benötigt und es funktioniert nicht im interaktiven Modus. - -showstatus
-
Normalerweise werden Informationen zum Einlesen nach dem Schreiben jeder
Datei angezeigt. Mit dieser Option wird der Importstatus während des
Einlesens angezeigt und bei jedem Frame aktualisiert.
- -s, -size Zahl
-
Diese Option veranlasst dvgrab höchstens Zahl Megabyte
(eigentlich Mebibyte) pro Datei abzuspeichern, bevor eine neue Datei
angelegt wird, dabei bedeutet Zahl = 0 unbegrenzte Dateigröße.
Voreingestellt ist die Grenze auf 1024 MB.
- -srt
-
Es werden Untertiteldateien mit dem Aufnahmedatum und -uhrzeit im
»SRT«-Format erstellt. Für jede abgespeicherte Videodatei werden zwei zusätzliche Dateien mit den Endungen ».srt0« und ».srt1« angelegt. Sie enthalten das Aufnahmedatum und -uhrzeit als Untertitel im »SRT«-Format. Die Datei »*.srt0« enthält Untertitel, deren Zeitbasis sich an der laufenden Zeit, vom Beginn der aktuellen Datei an, orientiert. Diese Datei sollte beim Umwandeln in ein Format wie AVI verwendet werden. Die Datei »*.srt1« enthält Untertitel, deren Zeitbasis sich an der von der Kamera übertragenen Zeit orientiert. Das Programm »MPlayer« kann mit diesen Untertiteln umgehen. - -stdin
-
Liest den Datenstrom aus einer Pipe an der Standardeingabe anstatt vom
FireWire-Treiber. - -timecode
-
Baut den Zeitstempel des ersten Frames jeder Datei in den Dateinamen ein.
- -t, -timestamp
-
Baut Datum und Uhrzeit der Aufnahme in den Dateinamen ein.
- -timesys
-
Verwendet das Datum und -uhrzeit des Systems anstatt der Aufnahme für
den Dateinamen. Das ist nützlich, wenn Umwandler verwendet werden, die das Aufnahmedatum und -uhrzeit in den DV-Daten nicht ändern. - -V, -v4l2
-
Liest von einem USB-Video-Class-(UVC)-Gerät ein, das DV unterstützt.
Der Kernel-Treiber »uvcvideo« via V4L2 wird benutzt. Das Standard-Gerät ist /dev/video. Mit der Option -input können Sie eine andere Gerätedatei einstellen. - -v, -version
-
Zeigt die Programmversion.
- -24p
-
Setzt bei »Quicktime DV« die Framerate auf 24 fps in der Quicktime-Datei. Das
funktioniert aber nur, wenn die Aufnahme im Modus »24p« erfolgte. - -24pa
-
Setzt bei »Quicktime DV« die Framerate auf 24 fps in der Quicktime-Datei
und macht zusätzlich das »2:3:3:2 pull down«-Verfahren rückgängig, indem die »interlaced C-Frames« entfernt werden. Das funktioniert aber nur, wenn die Aufnahme im Modus »24p advanced« erfolgte. Siehe http://www.adamwilt.com/24p/.
BEISPIELE
- dvgrab foo-
-
Importiert Videodaten von der standardmäßigen FireWire-Quelle und speichert
sie in Dateien foo-001.avi, foo-002.avi, usw.
- dvgrab -frames 25 foo-
-
Eine PAL-Video-Quelle vorausgesetzt, speichert dieses Kommando eine Sekunde
Videodaten pro Datei.
- dvgrab -autosplit -frames 750 -timestamp foo-
-
Liest Videodaten von der voreingestellten FireWire-Quelle ein, teilt sie in
Stücke von 30 Sekunden (angenommen PAL) oder am Beginn einer neuen Aufnahme
und benennt die Dateien nach den Datums- und Zeitinformationen des Videostroms.
- dvgrab -autosplit -size 1998 -csize 4400 -cmincutsize 10 foo-
-
Importiert Videodaten von der standardmäßigen FireWire-Quelle, teilt sie in
Stücke, wenn eine neue Aufnahme beginnt oder die aktuelle Datei 1998 Megabyte
überschreitet oder die aktuelle Zusammenstellung von Dateien größer als
4400 Megabyte wird. Außerdem beschränkt es die kleinste Dateigröße, die durch
Teilung einer Zusammenstellung entsteht, auf 10 Megabyte.
-
Dieses Beispiel ist sehr gut geeignet, um DV-Daten auf DVDs zu sichern, weil
2 GByte ungefähr die maximale Dateigröße ist, mit der die (aktuelle)
Linux-Umsetzung des ISO9660-Dateisystems umgehen kann.
-
Achtung: Es ist möglich in ISO9660-Dateisystemen Dateien größer als 2 GByte
anzulegen, aber die aktuellen Linux-Treiber für ISO9660 können diese nicht
lesen. Neuere Kernel können evtl. mit Dateien größer 2 GByte im
ISO9660-Dateisystem umgehen.
- dvgrab -format hdv -autosplit
-
Liest von einem HDV-Camcorder ein, versucht den Anfang jeder neuen Aufnahme zu
erkennen und in einzelnen Dateien zu speichern.
- dvgrab -format mpeg2 -guid 1
-
Nimmt von einer digitalen TV-Settop-Box auf.
- dvgrab -jpeg-over -jpeg-w=320 -jpeg-h=240 -d smpte=1 webcam.jpeg
-
Liest ein einzelnes Frame ein, speichert es als JPEG mit dem Namen »webcam.jpg«
und endet.
Dieses Beispiel zeigt auch die Verwendung von Optionen. Sie müssen von einem langen
Optionsnamen nur so viel angeben, damit er eindeutig ist. Sie können Leerzeichen
oder Gleichheitzeichen benutzen, um den Optionsnamen und den Wert zu trennen.
Das Dateiformat wird von der Erweiterung des Dateinamens abgeleitet. Weil die
Option -jpeg-overwrite verwendet wird, ist der Dateiname genau »webcam.jpeg«
und enthält keine Zahlen.
- dvgrab -V
-
Importiert über USB von einem UVC-konformen DV-Gerät.
- dvgrab -v4l -input /dev/video1
-
Importiert über USB von einem UVC-konformen DV-Gerät und benutzt die
Gerätedatei /dev/video1.
- dvgrab -format=hdv -autosplit=28800 -srt foo-
-
Liest von einem HDV-Camcorder ein und speichert jede Aufnahme in einer
eigenen Datei, wenn sie einen Zeitunterschied von mehr als 8 Stunden zur
vorherigen hat. Das erzeugt eine eigene Datei für jeden Tag (gut für
Urlaubsvideos). Außerdem werden Untertiteldateien angelegt. Angenommen,
die Dateien »foo-001.m2t« und »foo-002.m2t« werden erstellt, so werden
auch die dazu gehörenden Untertiteldateien »foo-001.srt0«, »foo-001.srt1«,
»foo-002.srt0« und »foo-002.srt1« angelegt. Die Dateien können benutzt
werden, um Aufnahmedatum und -uhrzeit beim Anschauen des Videos anzuzeigen.
AUTOR
Dan Dennedy <[email protected]> und Daniel Kobras <[email protected]>. Erik Schanze <[email protected]> hat sie ins Deutsche übersetzt.
Mehr Informationen und Unterstützung finden Sie auf der Webseite http://www.kinodv.org/ .