Metode CBaseInputPin.ReceiveMultiple

Metode ReceiveMultiple ini menerima array sampel. Metode ini mengimplementasikan metode IMemInputPin::ReceiveMultiple .

Sintaks

HRESULT ReceiveMultiple(
   IMediaSample **pSamples,
   long         nSamples,
   long         *nSamplesProcessed
);

Parameter

pSamples

Alamat array pointer IMediaSample , dari ukuran nSamples.

nSamples

Jumlah sampel yang akan diproses.

nSamplesProcessed

Penunjuk ke variabel yang menerima jumlah sampel yang diproses.

Mengembalikan nilai

Mengembalikan nilai HRESULT . Nilai yang mungkin termasuk yang tercantum dalam tabel berikut.

Mengembalikan kode Deskripsi
S_OK
Berhasil.
S_FALSE
Pin saat ini sedang memerah; sampel ditolak.
E_POINTER
Argumen pointer NULL.
VFW_E_INVALIDMEDIATYPE
Tipe media tidak valid.
VFW_E_RUNTIME_ERROR
Terjadi kesalahan run-time.
VFW_E_WRONG_STATE
Pin dihentikan.

Keterangan

Metode ini berperilaku seperti metode CBaseInputPin::Receive , tetapi menerima array sampel. Di kelas dasar, metode mengulang melalui array dan panggilan Terima dengan setiap sampel. Ambil alih fungsi ini jika filter Anda dapat memproses batch sampel secara lebih efisien daripada memprosesnya satu per satu.

Persyaratan

Persyaratan Nilai
Header
Amfilter.h (termasuk Aliran.h)
Pustaka
Strmbase.lib (build ritel);
Strmbasd.lib (build debug)

Lihat juga

Kelas CBaseInputPin