Bagikan melalui


Metode IMemAllocator::SetProperties (strmif.h)

[Fitur yang terkait dengan halaman ini, DirectShow, adalah fitur warisan. Ini telah digantikan oleh MediaPlayer, IMFMediaEngine, dan Tangkapan 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 Audio/Video Capture 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.]

Metode ini SetProperties menentukan jumlah buffer yang akan dialokasikan dan ukuran setiap buffer.

Sintaks

HRESULT SetProperties(
  ALLOCATOR_PROPERTIES *pRequest,
  ALLOCATOR_PROPERTIES *pActual
);

Parameter

pRequest

Arahkan ke struktur ALLOCATOR_PROPERTIES yang berisi persyaratan buffer.

pActual

Penunjuk ke struktur ALLOCATOR_PROPERTIES yang menerima properti buffer aktual.

Mengembalikan nilai

Mengembalikan nilai HRESULT . Nilai yang mungkin termasuk yang diperlihatkan dalam tabel berikut ini.

Menampilkan kode Deskripsi
S_OK
Berhasil.
E_POINTER
Argumen penunjuk NULL.
VFW_E_ALREADY_COMMITTED
Tidak dapat mengubah memori yang dialokasikan saat filter aktif.
VFW_E_BADALIGN
Perataan yang tidak valid ditentukan.
VFW_E_BUFFERS_OUTSTANDING
Satu atau beberapa buffer masih aktif.

Keterangan

Metode ini menentukan persyaratan buffer, tetapi tidak mengalokasikan buffer apa pun. Panggil metode IMemAllocator::Commit untuk mengalokasikan buffer.

Penelepon mengalokasikan dua struktur ALLOCATOR_PROPERTIES. Parameter pRequest berisi persyaratan buffer pemanggil, termasuk jumlah buffer dan ukuran setiap buffer. Ketika metode kembali, parameter pActual berisi properti buffer aktual, seperti yang ditetapkan oleh alokator.

Ketika metode ini dipanggil, alokator tidak boleh diterapkan atau memiliki buffer yang luar biasa.

Persyaratan

   
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header strmif.h (termasuk Dshow.h)
Pustaka Strmiids.lib

Lihat juga

Kode Kesalahan dan Keberhasilan

Antarmuka IMemAllocator