IAsyncReader::BeginFlush method (strmif.h)
[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 memulai BeginFlush
operasi flush.
Sintaks
HRESULT BeginFlush();
Mengembalikan nilai
Mengembalikan S_OK jika berhasil, atau S_FALSE sebaliknya.
Keterangan
Metode ini mengganggu semua permintaan baca yang tertunda. Saat pin sedang dibersihkan, metode IAsyncReader::Request gagal dan metode IAsyncReader::WaitForNext segera kembali, mungkin dengan kode pengembalian VFW_E_TIMEOUT.
Pin input hilir harus memanggil metode ini setiap kali filter hilir menghapus grafik filter. Setelah memanggil metode ini, panggil metode WaitForNext hingga mengembalikan NULL dalam parameter ppSample , untuk menghapus antrean sampel yang tertunda. Abaikan kode kesalahan, dan rilis setiap sampel. Kemudian panggil metode IAsyncReader::EndFlush untuk mengakhiri operasi flush.
Untuk informasi selengkapnya, lihat Pembersihan.
Contoh
Contoh berikut menunjukkan bagaimana pin input hilir harus memanggil metode ini:
C++ |
---|
m_pReader->BeginFlush(); while (1) { IMediaSample *pSample; DWORD_PTR dwUnused; m_pReader->WaitForNext(0, &pSample, &dwUnused); if(pSample) { pSample->Release(); } else { // No more samples. break; } } m_pReader->EndFlush(); |
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 |