Bagikan melalui


Penanganan Peristiwa di AVStream

Filter dan pin AVStream menjelaskan properti, peristiwa, dan metode yang didukungnya dengan menyediakan struktur KSAUTOMATION_TABLE di anggota AutomationTable dari struktur KSFILTER_DESCRIPTOR atau struktur KSPIN_DESCRIPTOR_EX . Untuk informasi selengkapnya, lihat Deskriptor AVStream.

Untuk mendukung peristiwa, minidriver AVStream menyediakan array struktur KSEVENT_SET dalam tabel otomatisasi. Setiap struktur KSEVENT_SET berisi array struktur KSEVENT_ITEM . Setiap struktur KSEVENT_ITEM menjelaskan bagaimana minidriver mendukung peristiwa tertentu.

Minidriver dapat menyesuaikan perilaku peristiwa dengan menyediakan handler AVStrMiniAddEvent dan AVStrMiniRemoveEvent dalam struktur KSEVENT_ITEM.

Ketika AVStream menerima permintaan pengaktifan peristiwa, AVStream menghasilkan struktur KSEVENT_ENTRY. Jika minidriver telah menyediakan handler AVStrAddEvent , AVStream meneruskan penunjuk ke struktur KSEVENT_ENTRY dalam panggilan ke AVStrAddEvent.

Jika Anda tidak menyediakan handler AVStrAddEvent , maka secara default AVStream menambahkan peristiwa ke daftar objek. Minidriver Anda tidak menerima penunjuk KSEVENT_ENTRY . Minidriver Anda dapat memicu peristiwa dengan memanggil KsFilterGenerateEvents atau KsPinGenerateEvents.