Metode CBaseRenderer.SendEndOfStream
[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.]
Jika akhir aliran tercapai, metode menjadwalkan SendEndOfStream
peristiwa EC_COMPLETE untuk manajer grafik filter.
Sintaks
virtual HRESULT SendEndOfStream();
Parameter
Metode ini tidak memiliki parameter.
Nilai kembali
Mengembalikan nilai HRESULT . Nilai yang mungkin termasuk yang ada dalam tabel berikut.
Menampilkan kode | Deskripsi |
---|---|
|
Manajer grafik filter tidak menerima pemberitahuan peristiwa. |
|
Berhasil. |
Keterangan
Filter mungkin menerima pemberitahuan akhir aliran sebelum waktu berhenti sampel saat ini. Jika demikian, filter harus menunggu sebelum memposting pemberitahuan EC_COMPLETE ke manajer grafik filter.
Karena itu:
- Jika filter telah menerima pemberitahuan end-of-stream (EOS) awal, metode ini menjadwalkan peristiwa timer. Saat peristiwa timer diaktifkan, filter memposting peristiwa EC_COMPLETE.
- Jika filter telah menerima pemberitahuan EOS yang tidak lebih awal, metode ini segera memposting peristiwa EC_COMPLETE.
- Jika filter tidak memiliki pemberitahuan EOS yang tertunda, metode akan kembali tanpa melakukan apa pun.
Metode panggilan balik timer adalah CBaseRenderer::TimerCallback. Untuk mengirimkan peristiwa EC_COMPLETE, filter memanggil metode CBaseRenderer::NotifyEndOfStream .
Persyaratan
Persyaratan | Nilai |
---|---|
Header |
|
Pustaka |
|