Media Foundation-Attribute für ASF-Headerobjekte
Das ASF-Headerobjekt der obersten Ebene für eine Datei enthält mehrere ASF-Unterheaderobjekte. Das ContentInfo-Objekt speichert Informationen aus allen diesen Headerobjekten und macht bestimmte Werte einer Anwendung über Attribute verfügbar.
Dateieigenschaftenobjekt
Dieses Headerobjekt ist in allen ASF-Dateien vorhanden. In diesen Feldern werden die Attribute auf Dateiebene der gesamten Präsentation beschrieben. In der folgenden Tabelle sind die Felder im Dateieigenschaftenobjekt und die entsprechenden Darstellungsbeschreibungsattribute aufgeführt.
Dateieigenschaften Objektfeld | Präsentationsdeskriptor-Attribut | BESCHREIBUNG |
---|---|---|
Datei-ID | MF_PD_ASF_FILEPROPERTIES_FILE_ID | Eindeutiger Bezeichner für diese Datei. |
Dateigröße | MF_PD_TOTAL_FILE_SIZE | Größe der Datei in Bytes. |
Erstellungsdatum | MF_PD_ASF_FILEPROPERTIES_CREATION_TIME | Datum und Uhrzeit der Dateierstellung. |
Anzahl von Datenpaketen | MF_PD_ASF_FILEPROPERTIES_PACKETS | Anzahl der Datenpakete im ASF-Datenobjekt. |
Wiedergabedauer | MF_PD_ASF_FILEPROPERTIES_PLAY_DURATION | Die zum Wiedergeben der Datei erforderliche Zeit in Einheiten von 100 Nanosekunden. Dieser Wert schließt die Vorrollzeit ein. |
Sendedauer | MF_PD_ASF_FILEPROPERTIES_SEND_DURATION | Die zum Senden der Datei erforderliche Zeit in Einheiten von 100 Nanosekunden. |
Preroll | MF_PD_ASF_FILEPROPERTIES_PREROLL | Zeitdauer zum Puffern von Daten vor der Wiedergabe der Datei in Einheiten von 100 Nanosekunden. |
Flags | MF_PD_ASF_FILEPROPERTIES_FLAGS | Flags, die angeben, ob die Datei übertragen oder gesucht werden kann. |
Minimale Datenpaketgröße | MF_PD_ASF_FILEPROPERTIES_MIN_PACKET_SIZE | Mindestgröße der Datenpakete in der Datei in Bytes. |
Maximale Datenpaketgröße | MF_PD_ASF_FILEPROPERTIES_MAX_PACKET_SIZE | Maximale Größe der Datenpakete in der Datei in Bytes. |
Maximale Bitrate | MF_PD_ASF_FILEPROPERTIES_MAX_BITRATE | Maximale momentane Bitrate in Bits pro Sekunde. |
Stream Properties-Objekt
Dieses Headerobjekt beschreibt die Eigenschaften der Streams in der ASF-Datei. In Media Foundation wird dies vom Profilobjekt und dem Streamkonfigurationsobjekt verwaltet. Weitere Informationen finden Sie unter Erstellen und Konfigurieren von ASF-Streams.
Codec-Listenobjekt
Wenn dieses Headerobjekt vorhanden ist, stellt das attribut MF_PD_ASF_CODECLIST eine Liste der Codecs bereit, die zum Codieren der Streams in der ASF-Datei verwendet wurden. Jeder Stream sollte seine Codecinformationen in diesem Objekt enthalten.
Skriptbefehlsobjekt
Wenn dieses Headerobjekt vorhanden ist, gibt es eine Liste von Skriptbefehlen an, die in der ASF-Datei unterstützt werden. Ein Skriptbefehl besteht aus einem Befehlstyp, einem Befehlsnamen und einer Präsentationszeit. Befehlstyp und Befehlsname sind Breitzeichenzeichenfolgen. Diese Befehle können verwendet werden, um den Client zu benachrichtigen, eine Aktion an einem bestimmten Punkt in der Präsentation auszuführen. Beispielsweise kann eine Anwendung den Befehlstyp "FILENAME" verwenden, um eine fortlaufende Sequenz von ASF-Dateien wiederzugeben.
Um die Liste der Skriptbefehle abzurufen, rufen Sie das attribut MF_PD_ASF_SCRIPT aus dem Präsentationsdeskriptor ab. Eine Anwendung sollte alle Skriptbefehle abrufen, bevor sie mit der Wiedergabe beginnen.
Marker-Objekt
Ein Marker ist ein Lesezeichen in einer ASF-Datei. Eine Anwendung kann Marker verwenden, um verschiedene Punkte innerhalb des Inhalts zu suchen. Jeder Marker besteht aus einem Markernamen, der zugeordneten Präsentationszeit und dem Offset vom Anfang der Datei. Das MF_PD_ASF_MARKER-Attribut stellt eine Liste von Markern bereit, die für die Datei verfügbar sind.
Streambitrate-Eigenschaftenobjekt
Dieser Header speichert die durchschnittliche Bitrate jedes Datenstroms, der in der ASF-Datei vorhanden ist. Dieser Wert wird im Streamdeskriptor für den Stream im attribut MF_SD_ASF_STREAMBITRATES_BITRATE gespeichert.
Inhaltsverschlüsselungsobjekt
Dieses Headerobjekt ist vorhanden, wenn der Inhaltsanbieter den Inhalt mithilfe von Microsoft Digital Rights Management geschützt hat. In der folgenden Tabelle sind die Felder im Content Encryption-Objekt und die entsprechenden Präsentationsdeskriptorattribute aufgeführt:
Inhaltsverschlüsselungsobjektfeld | Präsentationsdeskriptor-Attribut | BESCHREIBUNG |
---|---|---|
Geheime Daten | MF_PD_ASF_CONTENTENCRYPTION_SECRET_DATA | Bytearray, das geheime Daten enthält. |
Schutztyp | MF_PD_ASF_CONTENTENCRYPTION_TYPE | Null-beendete Zeichenfolge mit dem Wert "DRM". |
Schlüssel-ID | MF_PD_ASF_CONTENTENCRYPTION_KEYID | Null-Zeichenfolge, die den Schlüsselbezeichner beschreibt. |
Lizenz-URL | MF_PD_ASF_CONTENTENCRYPTION_LICENSE_URL | Null-beendete Zeichenfolge, die die URL enthält, aus der die Lizenz für die Verwendung des Inhalts abgerufen werden soll. |
Erweitertes Inhaltsverschlüsselungsobjekt
Dieses Headerobjekt ist vorhanden, wenn der Inhaltsanbieter den Inhalt mithilfe des Windows Media Rights Manager 7 SDK geschützt hat. Das MF_PD_ASF_CONTENTENCRYPTION_LICENSE_URL-Attribut stellt ein Bytearray bereit, das dem Feld Data des Headerobjekts entspricht. Dieses Feld ist erforderlich, um den Inhalt zu verwenden.
Objekt mit erweiterten Streameigenschaften
Dieser Header ist Teil des Headererweiterungsobjekts. Das Objekt mit erweiterten Streameigenschaften stellt Eigenschaften des Datenstroms bereit, die nicht im Stream Properties-Objekt definiert sind. Diese Eigenschaften werden hauptsächlich verwendet, um die Parameter "Leaky Bucket" zu bestimmen, die vom Decoder verwendet werden. Diese Eigenschaften werden auch vom Encoder beim Komprimieren von Daten verwendet. Dies wird vom Profilobjekt und dem Streamkonfigurationsobjekt verwaltet. Weitere Informationen finden Sie unter Erstellen und Konfigurieren von ASF-Streams.
In der folgenden Tabelle sind die Felder "Objekt für erweiterte Streameigenschaften" und die entsprechenden Streamdeskriptorattribute aufgeführt.
Feld "Erweiterte Streameigenschaften" | Streamdeskriptor-Attribut | BESCHREIBUNG |
---|---|---|
Datenbitrate | MF_SD_ASF_EXTSTRMPROP_AVG_DATA_BITRATE | Durchschnittliche Datenrate in Bit pro Sekunde. |
Puffergröße | MF_SD_ASF_EXTSTRMPROP_AVG_BUFFERSIZE | Undichte Bucketgröße. Value ist die Anzahl von Millisekunden an Daten, die mit der durchschnittlichen Datenrate in den Puffer passen können. |
Alternative Datenbitrate | MF_SD_ASF_EXTSTRMPROP_MAX_DATA_BITRATE | Spitzendatenrate in Bits pro Sekunde. Die Spitzendatenrate wird für Datenströme mit variabler Bitrate verwendet. |
Alternative Puffergröße | MF_SD_ASF_EXTSTRMPROP_MAX_BUFFERSIZE | Maximale Größe für undichte Buckets. Der Wert ist die Anzahl von Millisekunden an Daten, die bei der Spitzendatenrate in den Puffer passen können. |
Stream-Sprach-ID | MF_SD_ASF_EXTSTRMPROP_LANGUAGE_ID_INDEX | Die Sprache, die der Stream verwendet, die als Index in der Liste der Sprachen im Language List-Objekt angegeben ist. |
Language List-Objekt
Dieses Headerobjekt ist Teil des Headererweiterungsobjekts. Falls vorhanden, stellt das attribut MF_PD_ASF_LANGLIST eine Liste von Sprachbezeichnern bereit, die in der Datei unterstützt werden. Die Bezeichner sind mit RFC 1766 zum Angeben von Sprachen kompatibel.
Mutual Exclusion-Objekt
Dieser Header gibt Gruppen von Streams und deren Eigenschaften an, von denen jeweils nur eine bereitgestellt wird. Weitere Informationen finden Sie unter Verwenden des gegenseitigen Ausschlusses für ASF-Streams.
Zugehörige Themen