Metode CBaseRenderer.PrepareReceive
[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.]
Metode PrepareReceive
ini menyiapkan filter untuk merender sampel.
Sintaks
virtual HRESULT PrepareReceive(
IMediaSample *pMediaSample
);
Parameter
-
pMediaSample
-
Arahkan ke antarmuka IMediaSample sampel.
Mengembalikan nilai
Mengembalikan nilai HRESULT . Nilai yang mungkin termasuk yang ada dalam tabel berikut.
Menampilkan kode | Deskripsi |
---|---|
|
Berhasil. |
|
Gagal. |
|
Kesalahan tak terduga. |
|
Filter menjatuhkan sampel ini. |
Keterangan
Filter memanggil metode ini dari dalam metode CBaseRenderer::Receive , sebelum merender sampel. Jika filter berjalan, metode ini menjadwalkan sampel untuk penyajian.
Jika filter sudah memiliki sampel yang tertunda, atau jika akhir aliran sudah tercapai, metode akan mengembalikan E_UNEXPECTED. Mungkin filter upstram tidak menserialisasikan panggilan streamingnya dengan benar.
Jika algoritma penjadwalan menentukan bahwa sampel harus dihilangkan (lihat CBaseRenderer::ScheduleSample), metode mengembalikan VFW_E_SAMPLE_REJECTED. Namun, metode IMemInputPin::Receive pin input tidak meneruskan kode kesalahan ini ke filter upstram, karena menghilangkan sampel bukanlah kesalahan.
Persyaratan
Persyaratan | Nilai |
---|---|
Header |
|
Pustaka |
|