다음을 통해 공유


KS 속성, 이벤트 및 메서드

커널 스트리밍 아키텍처는 속성, 이벤트메서드를 통해 미니드라이버와 사용자 모드 클라이언트 간의 상호 작용을 지원합니다. KS 개체의 클라이언트는 이러한 구문을 사용하여 개체 상태를 가져와서 설정하고, 이벤트에 대한 알림 콜백을 등록하고, 개체 메서드를 실행할 수 있습니다.

클라이언트는 세 가지 작업 클래스를 모두 표준화된 방식으로 요청합니다. 클라이언트는 DeviceIoControl(Microsoft Windows SDK 설명서에 설명됨) 또는 KsSynchronousDeviceControl에 대한 호출에서 KSIDENTIFIER의 별칭 구조를 제공합니다.

별칭 구조는 KSPROPERTY, KSEVENTKSMETHOD입니다. 세 가지 모두 다음 매개 변수를 포함합니다.

  • 설정

    기능적으로 유사한 작업은 집합에서 함께 그룹화됩니다. 각 속성, 이벤트 또는 메서드 집합은 GUID로 식별됩니다. Microsoft는 표준 기술 관련 작업에 대한 GUID를 정의합니다. 미니드라이버에서는 사용자 지정 작업에 대한 자체 GUID를 정의할 수 있습니다.

  • 식별자

    각 작업은 집합 내의 ID 번호로 지정됩니다.

  • 작업별 식별 데이터

    특정 속성 요청에는 추가 데이터가 필요합니다. 예를 들어 오디오 디바이스의 핀은 KSPROPSETID_Audio 속성 집합을 지원합니다. 오디오 핀은 여러 다른 오디오 채널을 지원할 수 있습니다. 특정 KSPROPSETID_Audio 속성을 가져오거나 설정하는 클라이언트는 요청이 적용되는 오디오 채널을 지정해야 합니다. 이벤트 및 메서드 요청에는 추가 데이터가 필요하지 않습니다.

범용 작업에 대한 Microsoft 정의 집합 GUID 및 식별자는 헤더 ks.h에 있습니다. 멀티미디어 기술의 특정 클래스에 대한 표준 GUID 및 식별자는 ksmedia.h에서 찾을 수 있습니다.

AVStream 미니드라이버에서는 관련 KSFILTER_DESCRIPTOR 또는KSPIN_DESCRIPTOR_EX KSAUTOMATION_TABLE 구조에 대한 포인터를 제공하여 속성, 이벤트 및 메서드를 지원합니다. KSAUTOMATION_TABLE KSPROPERTY_SET 개체의 배열에 대한 포인터를 포함합니다. 자세한 내용은 Automation 테이블 정의를 참조하세요.

이 섹션에는 미니드라이버가 세 가지 작업 클래스를 지원하는 방법에 대한 정보가 포함되어 있습니다.

KS 속성

KS 이벤트

KS 메서드