ASF-Dateistruktur

In diesem Thema wird die Struktur einer ASF-Datei (Advanced Systems Format) beschrieben.

Ausführliche Informationen zu ASF-Dateien finden Sie in der ASF-Spezifikation.

Die Basiseinheit der Organisation für ASF-Dateien wird als Objekt bezeichnet. Ein ASF-Dateiobjekt enthält die folgenden Daten.

Daten Size
Eine GUID, durch die das Objekt identifiziert wird 128 Bit
Die Größe des Objekts. 64 Bit
Objektdaten Die Objektdaten können andere ASF-Objekte enthalten. Verschiedene Ursachen.

Hinweis

Ein ASF-Dateiobjekt ist einfach ein Datenblock. Es handelt sich nicht um ein Objekt in der Computerprogrammierung.

Eine ASF-Datei enthält drei Typen von Dateiobjekten der obersten Ebene.

ASF-Dateiobjekt Beschreibung
Header-Objekt
Enthält Informationen zur ASF-Datei
Datenobjekt
Enthält Pakete von Mediendaten
Index-Objekt(e)
Enthält mindestens einen Index (Optional.)

Das folgende Diagramm zeigt die ASF-Dateistruktur.

Diagramm mit der ASF-Dateistruktur, einschließlich Elementen innerhalb des Headers, Daten und Index

Dieses Diagramm wird nicht skaliert; in der Regel umfasst das Datenobjekt den größten Teil der Datei.

Header-Objekt

Das Header-Objekt ist obligatorisch und wird am Anfang jeder ASF-Datei angezeigt. Es enthält globale Dateiattribute und Informationen zu den Streams in der ASF-Datei. Diese Informationen werden verwendet, um die Daten in der Datei zu interpretieren und wiederzugeben.

Das Header-Objekt enthält mehrere obligatorische Unterobjekte:

  • Das Dateieigenschaften-Objekt beschreibt globale Attribute der Datei, z. B. die Dateigröße, die Wiedergabedauer, die Anzahl der Datenpakete, die Mindest- und die maximale Paketgröße und die maximale Bitrate.
  • Das Header-Erweiterungsobjekt ermöglicht das Hinzufügen zusätzlicher Funktionen zu einer ASF-Datei, während die Abwärtskompatibilität beibehalten wird.
  • Das Streameigenschaften-Objekt beschreibt einen Stream in der Datei. Eine ASF-Datei muss mindestens einen Stream und daher mindestens ein Stream-Eigenschaftenobjekt enthalten.

Das Header-Objekt kann zusätzliche optionale Informationen enthalten, einschließlich Metadaten zur Datei (z. B. Titel und Autor), eine Liste der Codecs, die zum Codieren der Datei verwendet werden, und Inhaltsschutzinformationen.

Datenobjekt

Das ASF-Datenobjekt enthält alle Mediendaten für die ASF-Datei. Dieses Objekt ist obligatorisch und muss dem ASF-Header-Objekt folgen.

Das Datenobjekt ist in Datenpakete unterteilt. Jedes Paket enthält Daten für einen oder mehrere Streams in der Datei. Ein Datenpaket enthält einen Datenpaket-Header, der Paketanalyseinformationen bereitstellt, gefolgt von den Nutzlastdaten der tatsächlichen digitalen Mediendaten. Allen Datenpaketen ist eine Präsentationszeit zugeordnet und sie werden in der empfangenen Reihenfolge angeordnet.

Informationen über den Inhalt des Datenobjekts, z. B. die Paketgröße und die Paketanzahl, werden im Header-Objekt gespeichert.

Index-Objekt

Das Index-Objekt ist optional und das letzte Objekt in der ASF-Datei. Eine ASF-Datei kann mehr als ein Index-Objekt enthalten. Das Index-Objekt bietet zeitbasierten zufälligen Zugriff auf das ASF-Datenobjekt.

Ein einfaches Index-Objekt ist ein anderer Indextyp.

ASF-Unterstützung in Media Foundation