Antarmuka IKsControl (ks.h)
Antarmuka IKsControl adalah antarmuka gaya COM yang diimplementasikan pada filter dan pin AVStream. Ini memungkinkan klien dalam mode kernel untuk mengakses objek otomatisasi AVStream (properti, metode, dan peristiwa).
Lihat antarmuka COM proksi kernel-streaming IKsControl (ksproxy.h) untuk informasi tentang mode kernel yang setara dengan antarmuka ini.
Warisan
Antarmuka IKsControl mewarisi dari antarmuka IUnknown .
Metode
Antarmuka IKsControl memiliki metode ini.
IKsControl::KsEvent Metode IKsControl::KsEvent memungkinkan atau menonaktifkan peristiwa, bersama dengan operasi dukungan lain yang ditentukan yang tersedia pada set peristiwa. |
IKsControl::KsMethod Metode IKsControl::KsMethod mengirimkan metode ke objek KS, bersama dengan operasi dukungan lain yang ditentukan yang tersedia pada set metode. |
IKsControl::KsProperty Metode IKsControl::KsProperty mengatur properti atau mengambil informasi properti, bersama dengan operasi dukungan lain yang ditentukan yang tersedia pada kumpulan properti. |
Keterangan
CATATAN: Antarmuka IKsControl tidak boleh digunakan dengan properti KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY di bawah set properti KSPROPERTYSETID_ExtendedCameraControl , silakan gunakan IMFExtendedCameraController.
Minidriver biasanya memperoleh antarmuka IKsControl melalui panggilan ke KsPinGetConnectedFilterInterface atau KsPinGetConnectedPinInterface. Karena ini adalah antarmuka gaya COM, panggilan fungsi untuk mendapatkan antarmuka ini memanggil metode QueryInterface , yang pada gilirannya memanggil metode AddRef . Oleh karena itu, minidriver tidak harus melakukan langkah-langkah ini.
Namun, segera setelah klien selesai dengan antarmuka IKsControl , klien harus merilis IKsControl dengan panggilan ke metode Rilis .
Minidriver yang ditulis dalam C memanipulasi antarmuka IKsControl sebagai struktur yang berisi penunjuk ke tabel fungsi alih-alih kelas dasar abstrak C++.
Klien yang ditulis dalam C++ melakukan hal berikut:
IKsControl *Control;
if (NT_SUCCESS (
KsPinGetConnectedPinInterface (
Pin,
IID_IKsControl,
(PVOID *)&Control) )
) {
Control -> KsProperty (...);
Control -> Release ();
}
Namun, klien yang ditulis dalam C menggunakan kode ini sebagai gantinya:
IKsControl *Control;
If (NT_SUCCESS (
KsPinGetConnectedPinInterface (
Pin,
IID_IKsControl,
(PVOID *)&Control) )
) {
Control -> lpVtbl -> KsProperty (...);
Control -> lpVtbl -> Release ();
}
Untuk informasi selengkapnya, lihat Gambaran Umum AVStream.
Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Windows |
Header | ks.h (termasuk Ks.h) |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk