|
Bei hoher Bildqualität kann man mit vielen Programmen nur fünf, zehn oder fünfzehn Minuten in einer Datei abspeichern, weil dann offensichtlich eine magische Größe (von 1, 2 oder 4 GB) erreicht bzw. überschritten wird. Auf der Suche nach einer Antwort auf diese Frage "wie groß eine AVI-Datei sein darf", stößt der leidgeprüfte PC-User recht schnell auf eine Website von Microsoft. Microsoft schreibt in seinem „Knowledge Base – Artikel D33811 wörtlich (gelesen: März 2001): „Die Größenbegrenzung von AVI-Dateien ist abhängig vom verwendeten Betriebssystem (max. Partitionsgröße). Diese beträgt für
Man hat beim Lesen des Artikels den Eindruck, als wenn die Größe des Files selbst nur von der Partitionsgröße abhängig ist. Microsoft geht (obwohl das Dokument im April 1999 modifiziert wurde) nicht darauf ein, welche Auswirkungen eine große Partition von > 4 GB auf die Größe von AVIs hat. Liest man in dem o.a. Artikel weiter, so findet man noch folgenden Hinweis: „Die maximale Dateigröße von AVI-Dateien, die beispielsweise von VIDEO für WINDOWS abgespielt werden können, liegt bei 1 GB. Wenn Sie also mit VIDEO für WINDOWS Gerätetreibern AVI-Dateien aufnehmen und wiedergeben möchten, liegt die Größenbegrenzung bei 1 GB. (...) Zusammenfassung: Mit VIDEO für WINDOWS können AVI-Dateien von maximal 1 GB abgespielt werden.“ Recht mysteriös – oder? Haben Sie das verstanden - ich nicht, zumindest nicht auf Anhieb! Doch gehen wir mal der Reihe nach vor: Sie haben also eine Festplatte und auf dieser soll das AVI gespeichert werden. Die Festplatte haben Sie (oder Ihr PC-Lieferant) unter einem bestimmten Betriebssystem formatiert. Ich unterstelle dabei nur als Beispiel mal Windows als Betriebsystem. Beim MAC von Apple oder unter Linux sieht es etwas anders aus. Also, Sie haben vermutlich vor dem Formatieren der Festplatte eine sogenannte Partition (mit FDISK) eingerichtet. Diese Partition benötigt zur Verwaltung der Daten u.a. eine FAT. FAT steht übrigens für „File Allocation Table“. Nähere Einzelheiten finden Sie z.B. unter
Unter DOS fing es -ich glaube 1981- mit einem FAT-Dateisystem an, das eine Diskette mit 160 KB Kapazität verwalten konnte. Bei dem heute noch oft gebrauchten Standard FAT16 konnte man bis DOS 3.3 Festplatten bis 32 MB verwalten. 1988 wurde dann mit DOS 4.0 die Grenze auf 2048 MB - also rund 2 GB erweitert. Wenn Sie also ein Betriebsystem haben, bei dem die Festplatten-Verwaltung auf einer FAT16-Tabelle aufgebaut ist, ist Ihre größte Festplatte 2 GB groß. Entsprechend kann Ihr größtes File also auch nur 2 GB groß sein. Damit haben wir also schon mal eine Grenze für die Filegröße gefunden, die einfach aus dem Betriebssystem heraus kommt. Die Zwei-Gigabyte-Grenze von FAT16 erwies sich schon bei Erscheinen von Windows 95 als Manko, so dass Microsoft Windows 95b mit einer verbesserten, 32-Bit-Version der FAT (FAT32) vorstellte. Allerdings ist ein FAT-Eintrag tatsächlich nicht 32, sondern nur 28 Bit breit, weil vier Bit für zukünftige Zwecke reserviert sind. FAT32 kann damit ca. 268 Millionen Zuordnungseinheiten verwalten. Bei einer maximalen Cluster-Größe von 32 Kilobyte ergibt sich, dass Festplatten bis zu einer Größe von etwa zwei Terabyte möglich sind. ;-) (Sofern sie verfügbar wären). Ich will hier nicht über Boot-Partitionen schreiben und den Vorteil bzw. Nachteil von 2 GB-, 4GB- und 8 GB - Festplatten, dazu finden Sie genug Literatur. Mir geht es nur darum aufzuzeigen, wo die Grenzen für eine AVI-Datei liegt. Einen weiteren Schritt hat Windows NT bzw. Windows 2000 mit seinem NTFS (New Technology File System) zur Verwaltung der Festplattenkapazität gemacht. Microsoft schreibt, dass die max. Festplattenkapazität 16 EB (Exabytes) beträgt. Ein Exabyte ist 2^64 bytes, oder 1.024 terabytes oder 18.446.744.073.709.551.616 bytes groß. Also, die Festplatte als Speichermedium bildet nur noch unter FAT16 eine Grenze von 2 GB unter FAT32 bzw. NTFS sind die Grenzen für die Festplatte (fast) aufgehoben.
Ja, wenn im Leben alles so einfach wäre... Eine andere Grenze bildet neben der Festplattengröße noch das eigentliche Anwenderprogramm (bzw. indirekt das Betriebsystem) selbst. Windows ist ein 32-Bit-Betriebsystem (zumindest mehr oder weniger). Dass jeder PC ein Betriebssystem benötigt (z.B. DOS, Windows oder Linux) wissen wir ja schon. Dieses Betriebsystem sagt dem Computer also nun, wie er mit den Daten umgehen soll. Computer rechnen dabei im Binärsystem, das heißt ein Bit kann nur die Zustände 1 oder 0 annehmen. 32 Bit bedeutet in diesem Zusammenhang, dass das Betriebssystem eine 32-stellige Binärzahl als Speicheradresse benutzt. Der Adress- bzw. Zahlenraum reicht also bis 2 hoch 32 bzw. 4.294.967.296. In einem File und damit auch in einem AVI-File können damit 4.294.967.296 Bytes, also rund 4 GB sein. Größer wird Ihr einzelnes AVI erst mal nicht. Je nach Anwenderprogramm und je nach Programmierart können in einem Programm aber unterschiedliche Variablen genutzt werden. Vergleiche
Und damit können Sie entweder Zahlen von z.B. -2.147.483.648 bis 2.147.483.647 oder direkt 4.294.967.296 (Stichwort: INT oder DWORD) darstellen. Im ersten Fall haben Sie von den 32 Bits nur 31 genutzt. Ein Bit ging für das Vorzeichen drauf. Und im zweiten Fall haben Sie den ganzen Umfang zur Verfügung. Also, in Abhängigkeit von der Programmierart wird Ihr File auch unterschiedlich groß sein. Und so bekommen Sie z.B. mit dem Schnittprogramm IntroDV 1.1 von Digital Origin einfach keine Files größer 2 GB hin, da können Sie machen was Sie wollen. Da kann die im Bundel dabeiliegende Firewire-Karte noch so gut sein. In der Praxis unterscheiden wir hinsichtlich der Anwenderprogramme zur Erstellung von AVIs:
AVI, also Audio Video Interleave, ist ein von Microsoft kreiertes Format. Es ist eine Spezialversion des RIFF (Resource Interchange File Format) und von Microsoft und IBM entwickelt. Um dieses spezielle Format anwenden zu können, waren spezielle Softwaretreiber - die MCI-Treiber - notwendig. MCI-Treiber (Media Control Interface) sind Softwaregebilde, die meist eine Reihe von Systemressourcen exklusiv nutzen. Sie finden diese Treiber z.B. in der system.ini im Windows-Verzeichnis:
Durch ihre Struktur behindern sie oft einen entsprechenden Hardwarekanal. Ein Capture-Treiber für eine Video-Capure-Karte kann z.B. eine Soundkarte komplett blockieren. Spielt man zum Beispiel eine Applikation eine AVI-Datei ab, so kann man nicht gleichzeitig über dieselbe Soundkarte einen Soundeffekt in Form einer WAV-Datei abspielen. Das RIFF-Dateiformat und damit die Anwendungen, die auf den MCI-Treibern basierten, konnten per Definition keine Dateien größer 1 GB verwalten. Siehe auch o.a. MS-Spezifikation. Die allererste "Video for Windows - Applikation" basierte genau auf diesen MCI-Treibern und war auch auf 1 GB beschränkt. Sie lesen deshalb in älteren Dokumenten, dass VfW auf 1 GB beschränkt sei. Sehen Sie dazu auch das oben aufgeführte MS-Dokument. Im nächsten Entwicklungsschritt übersprang Video for Windows diese Hürde und ermöglichte Dateien von 2 GB. Die MCI-Technologie blieb dabei mehr oder weniger auf der Strecke.
Statt alle Funktionen in überdimensionale Treiber zu packen, werden unabhängige "Filter" für jede Teilfunktion bereitgestellt. Man spricht hier auch von einem "Filter Graph Model". Als Dateiextension für die einzelnen DirectShow-Filter wird anstelle "DLL" oder "DRV" meist "AX" verwendet.
Der Kern von DirectShow steckt allerdings in der Datei QUARTZ.DLL. DirectShow ersetzt zwischenzeitlich recht oft die MCI-Struktur fast vollständig. Kommen wir jedoch zu der Dateigröße zurück: Microsoft hat per Definition für ActiveMovie eine Dateigröße von 2 GB und für den neueren Standard DirectShow 6 eine Größe von theoretisch 8 GB festgelegt. (vergleiche
Doch was hilft die Theorie, wenn Windows mit seinen 32-Bit-Zeigern nur 4 GB zulässt. Da ich diesen scheinbaren Widerspruch mit den 4 oder 8 GB nicht auflösen konnte, habe ich zur Sicherheit noch einen Spezialisten gefragt: Markus Zingg - den Vater der ersten "Multifilecapture Lösung". Markus Zingg hat mir nochmals ausdrücklich bestätigt, dass bei DirectShow und 4 GB das Ende der Fahnenstange erreicht ist. Für den Windows-User, der FAT32 einsetzt, ist die Frage ob DirectShow nun doch irgendwie 8 GB kann oder nicht sowieso ohne Bedeutung. Die max. Filegröße eines Einzelfiles ist 4 GB - da können Sie sich drehen und wenden wie Sie wollen und Ihre Partition kann so groß sein wie sie will. Um die 4 GB-Hürde nun zu überspringen, haben sich findige Programmierer mehrere Lösungsansätze ausgedacht.
Das Prinzip ist immer ähnlich: Das Anwenderprogramm erstellt im einfachsten Fall beim Capturen einzelne selbstständige AVI-Files, die von Haus aus keine Referenz zueinander haben. AVI002 weiß also nicht, dass es einen Vorgänger AVI001 gibt. Während "FAST Capture" den Anwender damit alleine lässt, hat sich MainActor bei seinem "DV-Capture" (leider nicht bei der analogen Version "VideoCapture" [Stand 2.04.2001]) ein eigenes Dateiformat (*.dzl) ausgedacht. Im Grund ist es kein eigenes Dateiformat, sondern nur eine Tabelle, in der die einzelnen Files mit ihrem Namen und ihrer Länge aufgeführt sind.
Die Tabelle kennt also den Vordermann und den Nachfolger eines jeden Files. Markus Zingg hingegen hat in
In der Praxis wurde das Format jedoch von einem AVI 2 - Format verdrängt, das sich auch OpenDML AVI nennt. Dahinter steckt eine am 28. Februar 1996 vom "OpenDML AVI M-JPEG File Format Subcommittee" veröffentlichte Spezifikation, die auch als "OpenDML AVI File Format Extensions, version 1.02" bekannt wurde. In diesem Komitee wirken Firmen mit so klangvollem Namen wie Adobe, Macromedia, Matrox, Microsoft, Pinnacle Systems, Ulead und andere. Nach meinem Wissen sind damit AVI-Files bis zu einer Größe von 12 Terabyte möglich. Für ein
Die Federführung in diesem Forum hatte Matrox und so finden Sie auch hier entsprechende Einzelheiten:
Die einzelnen Segmente sind sequentiell hintereinander in einer großen Datei angeordnet. Ein Superindex legt fest, in welcher Reihenfolge die Standardindizes gelesen werden. Ein Standardindex kann auf beliebige Daten (des selben Streams) innerhalb eines Blocks zeigen. Vorteil - die Datei kann ungemein groß werden. Nachteil dieser Lösung, sie ist nicht abwärtskompatibel. Programme, die nicht den OpenDML-Standard unterstützen, lesen nur das erste Segment und sind nicht in der Lage, von dem Rest (hinter dem 1 GB-Segment) irgendwas zu erfassen.
Nach Informationen von Alexander Noé Unter Verwendung von z.B. Windows NT (mit NTFS) und dem AVI 2 - Format nach dem OpenDML-Standard gibt es aber keine Beschränkungen mehr für Ihr AVI-Files. Sofern Sie mir zustimmen, dass 12 TB keine Beschränkung ist. ;-) Aber keiner von uns kann in die Zukunft schauen. Vermutlich sind 12 TB in 5 Jahren viel zu wenig....
Wie man nun einzelne AVI-Files wieder zusammenbaut, zeige ich voraussichtlich
in einem der nächsten
*) Nicht mehr im Web vorhanden
| |||||||||||