Bagikan melalui


Metode IAMBufferNegotiation::SuggestAllocatorProperties (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 SuggestAllocatorProperties menginformasikan pin properti alokator pilihan aplikasi. Panggil metode ini sebelum pin tersambung.

Sintaks

HRESULT SuggestAllocatorProperties(
  [in] const ALLOCATOR_PROPERTIES *pprop
);

Parameter

[in] pprop

Penunjuk ke struktur ALLOCATOR_PROPERTIES yang berisi properti yang diminta. Nilai negatif untuk setiap anggota menunjukkan bahwa pin harus menggunakan pengaturan default untuk properti tersebut.

Mengembalikan nilai

Mengembalikan nilai HRESULT . Nilai yang mungkin termasuk yang berikut ini.

Menampilkan kode Deskripsi
S_OK
Berhasil.
E_FAIL
Kegagalan.
E_POINTER
Argumen penunjuk NULL.
VFW_E_ALREADY_CONNECTED
Pin sudah tersambung.

Keterangan

Jika kedua pin dalam koneksi mengekspos antarmuka IAMBufferNegotiation , panggil metode ini pada setiap pin, untuk memastikan bahwa satu pin tidak menimpa yang lain.

Untuk meminta sejumlah buffer tertentu, atur anggota cBuffers dari struktur ALLOCATOR_PROPERTIES . Untuk meminta ukuran buffer tertentu, atur anggota cbBuffer . Aplikasi biasanya tidak boleh menentukan perataan atau awalan. Jika jumlah buffer atau ukuran setiap buffer terlalu kecil, grafik filter mungkin menghilangkan sampel.

Contoh

C++
ALLOCATOR_PROPERTIES AllocProp;
AllocProp.cbAlign = -1;  // -1 means no preference.
AllocProp.cbBuffer = dwBytesPerSec *  dwLatencyInMilliseconds / 1000;
AllocProp.cbPrefix = -1;
AllocProp.cBuffers = -1;
pIAMBufferNegotiation->SuggestAllocatorProperties(&AllocProp);

Persyaratan

Persyaratan Nilai
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 IAMBufferNegotiation