ASF-Dateistruktur

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

Ausführliche Informationen zu ASF-Dateien finden Sie unter ASF-Spezifikation. Sie können auch das Tool Windows Media ASF Viewer 9 Series verwenden, um die Struktur einer vorhandenen ASF-Datei anzuzeigen.

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

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

Hinweis

Ein ASF-Dateiobjekt ist einfach ein Datenabschnitt. Es handelt sich nicht um ein Objekt im Sinne 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.
Indexobjekte
Enthält mindestens einen Index. (Optional.)

Das folgende Diagramm zeigt die ASF-Dateistruktur.

Diagramm mit der Asf-Dateistruktur, einschließlich Elementen innerhalb des Headers, der Daten und des Indexes

Dieses Diagramm wird nicht zur Skalierung gezeichnet. 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. Sie 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 wiederzuspielen.

Das Header-Objekt enthält mehrere untergeordnete Unterobjekte:

  • Das Dateieigenschaftenobjekt beschreibt globale Attribute der Datei, z. B. Dateigröße, Wiedergabedauer, Anzahl der Datenpakete, minimale und maximale Paketgröße und maximale Bitrate.
  • Das Headererweiterungsobjekt ermöglicht das Hinzufügen zusätzlicher Funktionen zu einer ASF-Datei unter Beibehaltung der Abwärtskompatibilität.
  • Das Streameigenschaftenobjekt beschreibt einen Stream in der Datei. Eine ASF-Datei muss mindestens einen Stream und daher mindestens ein Streameigenschaftenobjekt enthalten.

Das Headerobjekt 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 Informationen zum Inhaltsschutz.

Datenobjekt

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

Das Datenobjekt ist in Datenpakete unterteilt. Jedes Paket enthält Daten für einen oder mehrere Datenströme in der Datei. Ein Datenpaket enthält einen Datenpaketheader, der Paketparsinginformationen bereitstellt, gefolgt von den Nutzlastdaten der eigentlichen digitalen Mediendaten. Allen Datenpaketen ist eine Präsentationszeit zugeordnet, die in der empfangenen Reihenfolge angeordnet ist.

Informationen zum Inhalt des Datenobjekts, z. B. Paketgröße und Paketanzahl, werden im Headerobjekt gespeichert.

Index-Objekt

Das Indexobjekt ist optional und das letzte Objekt in der ASF-Datei. Eine ASF-Datei kann mehrere Indexobjekte enthalten. Das Indexobjekt bietet zeitbasierten zufälligen Zugriff auf das ASF-Datenobjekt.

Ein einfaches Indexobjekt ist ein anderer Indextyp.

ASF-Unterstützung in Media Foundation