Bagikan melalui


Metode IMediaControl::StopWhenReady (control.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 menjeda StopWhenReady grafik filter, memungkinkan filter untuk mengantre data, lalu menghentikan grafik filter.

Sintaks

HRESULT StopWhenReady();

Mengembalikan nilai

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

Menampilkan kode Deskripsi
S_OK
Berhasil.
S_FALSE
Grafik masih beralih ke status dijeda saat metode dikembalikan.

Keterangan

Metode ini berguna jika Anda ingin mencari grafik filter saat grafik dihentikan. Selama grafik filter dihentikan, perubahan pada posisi saat ini tidak mengecat ulang jendela video dengan bingkai baru. Oleh karena itu, memanggil IMediaSeeking::SetPositions tidak memperbarui jendela video. Untuk memperbarui jendela setelah operasi pencarian, panggil StopWhenReady. Metode ini mentransisikan grafik ke status dijeda, menunggu operasi jeda selesai, lalu transisi grafik kembali dihentikan. Operasi jeda mengantrekan data dalam grafik, sehingga perender video menerima dan menampilkan bingkai baru.

Metode ini asinkron. Ini menunggu pada utas terpisah agar jeda selesai. Utas panggilan tidak memblokir, yang memungkinkan aplikasi merespons input pengguna. Ketika metode kembali, status logis grafik dihentikan, bahkan sebelum operasi jeda selesai. Jika Anda memanggil metode IMediaControl::GetState pada titik ini, metode tersebut mengembalikan State_Stopped.

Jika aplikasi mengeluarkan perintah perubahan status lain (seperti jeda, jalankan, atau cari) sebelum operasi jeda selesai, perintah baru membatalkan perintah berhenti yang tertunda. Operasi jeda selesai, tetapi grafik tidak berhenti.

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 control.h (termasuk Dshow.h)
Pustaka Strmiids.lib

Lihat juga

Kode Kesalahan dan Keberhasilan

Antarmuka IMediaControl