Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
[Das dieser Seite zugeordnete Feature DirectShow-ist ein Legacyfeature. Es wurde von MediaPlayer, IMFMediaEngineund Audio/Video Capture in Media Foundationersetzt. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code MediaPlayer-, IMFMediaEngine und Audio-/Videoaufnahme in Media Foundation anstelle von DirectShow-verwendet, wenn möglich. Microsoft schlägt vor, dass vorhandener Code, der die Legacy-APIs verwendet, um die neuen APIs zu verwenden, falls möglich umgeschrieben werden.]
Wenn das Hilfsprogramm GraphEdit ein DirectShow-Filterdiagramm speichert, erstellt es eine Speicherdatei mit der Erweiterung GRF. Die Speicherdatei enthält einen einzelnen Stream namens ActiveMovieGraph. Dieser Datenstrom enthält Informationen zu allen Filtern, Filternamen, Dateinamen, Verbindungen usw.
Die folgende Grammatik beschreibt die Syntax des Diagramms innerhalb des Datenstroms mithilfe einer geänderten BNF (Backus-Naur Form)-Syntax:
<graph> ::=
0003\r\n<filters><connections><clock>
END |
0002\r\n<filters><connections>
END
<filters> ::=
FILTERS<b>
[<filter list><b>
]
<filter list> ::= <filter><b>
[<filter list>
]
<filter> ::= <filter id><b><name><b><class id><b>
[<file>
]<length><b1><filter data>
<class id> ::= <guid>
<file> ::=
SOURCE <name><b> |
SINK <name><b>
<connections> ::=
CONNECTIONS<b>
{<connection><b>
}
<connection> ::= <filter id><b><pin id><b><filter id><b><pin id><b><media type>
<filter id> ::= <id>
<pin id> ::= <name>
<media type> ::= <sample size><major type><b><subtype><b><flags><format>
<major type> ::= <guid>
<subtype> ::= <guid>
<flags> ::= <fixed sample size><b><temporal compression><b>
<fixed sample size> ::= 1
| 0
<temporal compression> ::= 1
| 0
<format> ::= <length><b1><format type><b><length><b1><format data>
<format type> ::= <guid>
<format data> ::=
{ binary_data
}
<clock> ::=
CLOCK <b><required><b><clockid>
\r\n
<required> ::= 1
| 0
<clockid> ::= <filter id>
| <class id>
<name> ::= quote_symbol
{ any_non_quote_character
} quote_symbol
<length> ::= unsigned decimal number (as a string), indicating the number
of bytes of data in the following token.
<guid> ::= GUID in string format. for example: {CF49D4E0-1115-11CE-B03A-0020AF0BA770}
<b> ::=
{ space_character
}
{ \t
}
{ \r
}
{ \n
} { <b>
}
<b1> ::= space_character
<id> ::= integer (as a string), such as 0001
Bei der Ausgabe gibt es eine neue Zeile ("\r\n") pro Filter, eine pro Verbindung und eine für jedes der Schlüsselwörter FILTER und CONNECTIONS. Bei jedem fall von handelt es sich um ein einzelnes Leerzeichen. Die Schlüsselwörter FILTERS, CONNECTIONS und END sind nicht lokalisierbar. Beachten Sie auch, dass die Filterdaten und die Formatdaten binär sind, sodass sie möglicherweise falsche Zeilenumbrüche, Nullwerte usw. enthalten. Der Datenstrom verwendet breite Zeichen.
Im Folgenden finden Sie ein typisches Diagramm. (Die Verbindungslinien wurden aus Gründen der Übersichtlichkeit unterbrochen, und die binärdaten werden weggelassen.)
003
FILTERS
0001 "C:\SomeFile.avi" {E436EBB5-524F-11CE-9F53-0020AF0BA770} SOURCE "C:\SomeFile.avi" 0000000000
0002 "AVI Splitter" {1B544C20-FD0B-11CE-8C63-00AA0044B51E} 0000000000
0003 "AVI Decompressor" {CF49D4E0-1115-11CE-B03A-0020AF0BA770} 0000000000
0004 "Video Renderer" {70E102B0-5556-11CE-97C0-00AA0055595A} 0000000000
CONNECTIONS
0001 "Output" 0002 "input pin" 0000000288
{E436EB83-524F-11CE-9F53-0020AF0BA770}
{E436EB88-524F-11CE-9F53-0020AF0BA770} 1 0 0000000001
{00000000-0000-0000-0000-000000000000} 0000000000
0002 "Stream 00" 0003 "In" 0000000376
{73646976-0000-0010-8000-00AA00389B71}
{64697663-0000-0010-8000-00AA00389B71} 0 0 0000000001
{05589F80-C356-11CE-BF01-00AA0055595A} 0000000088 <binary data>
0003 "Out" 0004 "In" 0000000376
{73646976-0000-0010-8000-00AA00389B71}
{E436EB7D-524F-11CE-9F53-0020AF0BA770} 1 0 0000129600
{05589F80-C356-11CE-BF01-00AA0055595A} 0000000088 <binary data>
CLOCK 1 0000
END
Verwandte Themen