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, IMFMediaEngine und Audio/Video Capture in Media Foundation abgelöst. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code mediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet, wenn möglich. Microsoft schlägt vor, dass vorhandener Code, der die Legacy-APIs verwendet, so umgeschrieben wird, dass nach Möglichkeit die neuen APIs verwendet werden.]
Die DeleteMediaType-Funktion löscht eine zugeordnete AM_MEDIA_TYPE-Struktur , einschließlich des Formatblocks.
Syntax
void WINAPI DeleteMediaType(
AM_MEDIA_TYPE *pmt
);
Parameter
-
Pmt
-
Ein Zeiger auf eine AM_MEDIA_TYPE-Struktur .
Rückgabewert
Diese Funktion gibt keinen Wert zurück.
Bemerkungen
Verwenden Sie diese Funktion, um jede Medientypstruktur freizugeben, die entweder mit CoTaskMemAlloc oder CreateMediaType zugeordnet wurde.
Diese Funktion ist in der DirectShow-Basisklassenbibliothek definiert. Wenn Sie keine Verknüpfung mit der Basisklassenbibliothek herstellen möchten, können Sie den folgenden Code verwenden:
// Release the format block for a media type.
void _FreeMediaType(AM_MEDIA_TYPE& mt)
{
if (mt.cbFormat != 0)
{
CoTaskMemFree((PVOID)mt.pbFormat);
mt.cbFormat = 0;
mt.pbFormat = NULL;
}
if (mt.pUnk != NULL)
{
// pUnk should not be used.
mt.pUnk->Release();
mt.pUnk = NULL;
}
}
// Delete a media type structure that was allocated on the heap.
void _DeleteMediaType(AM_MEDIA_TYPE *pmt)
{
if (pmt != NULL)
{
_FreeMediaType(*pmt);
CoTaskMemFree(pmt);
}
}
Anforderungen
| Anforderung | Wert |
|---|---|
| Header |
|
| Bibliothek |
|