Fungsi DeleteMediaType
[Fitur yang terkait dengan halaman ini, DirectShow, adalah fitur warisan. Ini telah digantikan oleh MediaPlayer, IMFMediaEngine, dan Pengambilan Audio/Video di Media Foundation. Fitur-fitur tersebut telah dioptimalkan untuk Windows 10 dan Windows 11. Microsoft sangat menyarankan agar kode baru menggunakan MediaPlayer, IMFMediaEngine , dan Pengambilan Audio/Video di Media Foundation alih-alih DirectShow, jika memungkinkan. Microsoft menyarankan agar kode yang ada yang menggunakan API warisan ditulis ulang untuk menggunakan API baru jika memungkinkan.]
Fungsi DeleteMediaType menghapus struktur AM_MEDIA_TYPE yang dialokasikan, termasuk blok format.
Sintaks
void WINAPI DeleteMediaType(
AM_MEDIA_TYPE *pmt
);
Parameter
-
Pmt
-
Penunjuk ke struktur AM_MEDIA_TYPE .
Mengembalikan nilai
Fungsi ini tidak mengembalikan nilai.
Keterangan
Gunakan fungsi ini untuk merilis struktur jenis media apa pun yang dialokasikan menggunakan CoTaskMemAlloc atau CreateMediaType.
Fungsi ini didefinisikan dalam pustaka Kelas Dasar DirectShow . Jika Anda lebih suka tidak menautkan ke pustaka kelas dasar, Anda dapat menggunakan kode berikut:
// 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);
}
}
Persyaratan
Persyaratan | Nilai |
---|---|
Header |
|
Pustaka |
|