KSPROPERTY_CAMERACONTROL_EXTENDED_FRAMERATE_THROTTLE
KSPROPERTY_CAMERACONTROL_EXTENDED_FRAMERATE_THROTTLE 원래 프레임 속도의 배율 인수로 비디오의 프레임 속도를 줄이는 동적 컨트롤입니다.
사용량 요약 테이블
Get | 설정 | 대상 | 속성 설명자 형식 | 속성 값 형식 |
---|---|---|---|---|
예 | 네 | 필터 | KSPROPERTY | KSCAMERA_EXTENDEDPROP_HEADER |
속성 값(작업 데이터)에는 KSCAMERA_EXTENDEDPROP_HEADER 구조체와 KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING 구조체가 포함됩니다.
총 속성 데이터 크기는 sizeof(KSCAMERA_EXTENDEDPROP_HEADER) + sizeof(KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING)입니다. KSCAMERA_EXTENDEDPROP_HEADER Size 멤버는 이 총 속성 데이터 크기로 설정됩니다.
KSCAMERA_EXTENDEDPROP_HEADER Capability 멤버에는 다음 값 중 하나가 포함됩니다.
프레임 속도 제한 컨트롤 | 설명 |
---|---|
KSCAMERA_EXTENDEDPROP_FRAMERATE_THROTTLE_OFF | 프레임 속도 제한을 사용할 수 없습니다. |
KSCAMERA_EXTENDEDPROP_FRAMERATE_THROTTLE_ON | 프레임 속도 제한이 활성화됩니다. |
KSCAMERA_EXTENDEDPROP_HEADER Flags 멤버에는 현재 카메라에 설정된 플래그가 포함되어 있습니다. KSCAMERA_EXTENDEDPROP_FRAMERATE_THROTTLE_OFF 기본값이어야 합니다.
이 속성 컨트롤은 동기적이며 취소할 수 없습니다.
이 컨트롤은 카메라가 적극적으로 스트리밍하는 동안에만 적용됩니다. 적극적으로 스트리밍하려면 미리 보기 또는 레코드 핀이 KSSTATE_RUN 프레임을 제공할 준비가 되어 있어야 합니다. 스트림이 활성화되지 않은 경우 집합에서 이 컨트롤은 STATUS_INVALID_DEVICE_STATE 반환해야 합니다. 필터 범위 컨트롤인 경우에도 사진 핀 또는 IR/깊이와 같은 RGB가 아닌 스트림에는 영향을 주지 않습니다.
설명
속성 가져오기
KSPROPERTY_TYPE_GET 요청에 응답할 때 드라이버는 KSCAMERA_EXTENDEDPROP_HEADER 멤버를 다음으로 설정합니다.
멤버 | 값 |
---|---|
버전 | 1 |
PinId | KSCAMERA_EXTENDEDPROP_FILTERSCOPE(0xFFFFFFFF) |
크기 | sizeof(KSCAMERA_EXTENDEDPROP_HEADER) + sizeof(KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING)여야 합니다. |
결과 | 0이어야 합니다. 이 필드는 마지막 SET 작업의 결과를 반환하는 데 사용됩니다. |
기능 | KSCAMERA_EXTENDEDPROP_FRAMERATE_THROTTLE_ON 또는 0x1 |
플래그 | KSCAMERA_EXTENDEDPROP_FRAMERATE_THROTTLE_ON 또는 KSCAMERA_EXTENDEDPROP_FRAMERATE_THROTTLE_OFF 수 있습니다. |
이전에 설정한 프레임 속도 제한 플래그가 없으면 드라이버는 플래그를 KSCAMERA_EXTENDEDPROP_FRAMERATE_THROTTLE_OFF 설정합니다. KSCAMERA_EXTENDEDPROP_HEADER 따르는 KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING 구조체의 멤버는 프레임 속도 제한 모드의 요구 사항에 따라 설정됩니다.
속성 설정
속성이 설정되면 KSPROPERTY_TYPE_SET 요청인 KSCAMERA_EXTENDEDPROP_HEADER Flags 멤버에 설정할 프레임 속도 제한 모드가 포함됩니다. 플래그에 KSCAMERA_EXTENDEDPROP_FRAMERATE_THROTTLE_OFF 플래그가 포함된 경우 KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING VideoProc.Value 멤버를 무시해야 합니다.
페이로드 구조
다음 표에는 Framerate Throttle DDI에 대한 KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING 구조 필드에 대한 설명 및 요구 사항이 포함되어 있습니다. 이 구조체는 ksmedia.h로 정의됩니다.
멤버 | 설명 |
---|---|
Mode | 사용되지 않으며 0이어야 합니다. |
최소/최대/단계 | 최대값은 프레임 속도가 변경되지 않음을 나타내는 100이어야 합니다. 단계는 최대 % 단계 == 0과 같은 100의 요소여야 합니다. 최소는 하나 이상의 단계 크기 또는 단계 크기의 배수와 같아야 합니다. 최소는 0일 수 없습니다. |
VideoProc | VideoProc.Value.ul은 이 컨트롤의 배율 비율을 지정해야 합니다. 이 값은 최소 및 최대 범위 내에 있어야 하며 단계 값의 배수로 설정해야 합니다. 이 값을 적절하게 설정하면 애플리케이션은 새 프레임 속도가 원래 값을 초과하거나 0으로 이동하지 않도록 할 수 있습니다. 예를 들어 값을 80으로 설정하면 원래 프레임 속도의 80%의 프레임 속도가 생성됩니다. |
예약됨 | 사용되지 않습니다. 드라이버에서 무시해야 합니다. |
요구 사항
지원되는 최소 클라이언트: Windows 11, 버전 24H2
헤더: ksmedia.h(Ksmedia.h 포함)