다음을 통해 공유


IAMExtDevice::GetCapability 메서드(strmif.h)

[DirectShow이 페이지와 연결된 기능은 레거시 기능입니다. MediaPlayer, IMFMediaEngine, Media Foundation오디오/비디오 캡처 대체되었습니다. 이러한 기능은 Windows 10 및 Windows 11에 최적화되었습니다. Microsoft는 가능하면 새로운 코드에서 MediaPlayer, IMFMediaEngineAudio/Video Capture를 DirectShow대신 Media Foundation 사용하는 것이 좋습니다. 가능한 경우 레거시 API를 사용하는 기존 코드를 다시 작성하여 새 API를 사용하도록 제안합니다.]

GetCapability 메서드는 외부 디바이스의 기능을 검색합니다.

통사론

HRESULT GetCapability(
  [in]  long   Capability,
  [out] long   *pValue,
  [out] double *pdblValue
);

매개 변수

[in] Capability

확인할 기능을 지정합니다. 자세한 내용은 비고를 참조하세요.

[out] pValue

정수를 수신하는 변수에 대한 포인터입니다. 자세한 내용은 비고를 참조하세요.

[out] pdblValue

이중받는 변수에 대한 포인터입니다. 자세한 내용은 비고를 참조하세요.

반환 값

이 메서드가 성공하면 S_OK 반환합니다. 그렇지 않으면 HRESULT 오류 코드를 반환합니다.

발언

Capability 매개 변수는 확인할 기능을 지정하는 플래그입니다. 이 메서드는 기능 플래그에 따라 pValue 매개 변수 또는 pdblValue 매개 변수에서 결과를 반환합니다.

다음 플래그의 경우 메서드는 pValue 매개 변수에서 OATRUE 또는 OAFALSE 값을 반환합니다. 값 OATRUE는 기능이 있음을 나타내고 OAFALSE 값은 기능이 없음을 나타냅니다.

기능 플래그 묘사
ED_DEVCAP_AUDIO_INPUTS 디바이스는 오디오 입력을 허용합니다.
ED_DEVCAP_CAN_MONITOR_SOURCES 디바이스는 현재 선택된 입력에 관계없이 모든 입력을 모니터링된 출력으로 보낼 수 있습니다.
ED_DEVCAP_CAN_PREVIEW 디바이스는 미리 볼 수 있습니다.
ED_DEVCAP_CAN_RECORD 디바이스는 기록할 수 있습니다.
ED_DEVCAP_CAN_RECORD_STROBE 디바이스는 레코드를 스트로브할 수 있습니다. 이 기능은 선택한 트랙에 기록할 수 있는 멀티트랙 디바이스에 적용됩니다.
ED_DEVCAP_CAN_SAVE 디바이스는 데이터를 저장할 수 있습니다.
ED_DEVCAP_CTLTRK_READ 디바이스는 제어 트랙을 읽을 수 있습니다.
ED_DEVCAP_HAS_AUDIO 디바이스에 오디오가 있습니다.
ED_DEVCAP_HAS_VIDEO 디바이스에 비디오가 있습니다.
ED_DEVCAP_INDEX_READ 디바이스는 인덱스 표시를 읽을 수 있습니다.
ED_DEVCAP_NEEDS_CALIBRATING 디바이스에는 보정이 필요합니다. IAMExtDevice::Calibrate참조하세요.
ED_DEVCAP_TIMECODE_READ 디바이스는 SMPTE 시간 코드를 읽을 수 있습니다.
ED_DEVCAP_TIMECODE_WRITE 디바이스는 SMPTE 시간 코드를 설정할 수 있습니다.
ED_DEVCAP_USES_FILES 디바이스에는 기본 제공 파일 시스템이 있습니다.
ED_DEVCAP_VIDEO_INPUTS 디바이스는 비디오 입력을 허용합니다.
 

다음 플래그의 경우 메서드는 pValue 매개 변수에 정의된 상수를 반환합니다.

ED_DEVCAP_DEVICE_TYPE: 디바이스 유형을 반환합니다.

반환된 상수 묘사
ED_DEVTYPE_ATR 오디오 테이프 레코더
ED_DEVTYPE_CG 문자 생성기
ED_DEVTYPE_DDR 디지털 디스크 레코더
ED_DEVTYPE_DVE 디지털 비디오 효과 단위
ED_DEVTYPE_GPI 범용 인터페이스 트리거
ED_DEVTYPE_KEYER 비디오 키어
ED_DEVTYPE_LASERDISK Laserdisc
ED_DEVTYPE_MIXER_AUDIO 오디오 믹서
ED_DEVTYPE_MIXER_VIDEO 비디오 믹서
ED_DEVTYPE_ROUTER 비디오 라우터
ED_DEVTYPE_TBC 시간 기준 수정기
ED_DEVTYPE_TCG 시간 코드 생성기/판독기
ED_DEVTYPE_VCR VCR 또는 전체 VCR 기능이 있는 캠코더
ED_DEVTYPE_WIPEGEN 비디오 초기화 생성기
ED_DEVTYPE_JOYSTICK 조이스틱
ED_DEVTYPE_KEYBOARD 키보드
 

ED_DEVCAP_SYNC_ACCURACY: 디바이스의 동기화 정확도 표시를 반환합니다.

반환된 상수 묘사
ED_SYNCACC_PRECISE 디바이스의 정확도가 정확합니다.
ED_SYNCACC_FRAME 디바이스가 프레임 정확합니다.
ED_SYNCACC_ROUGH 디바이스가 프레임 정확도보다 작습니다.
 

ED_DEVCAP_NORMAL_RATE: 디바이스의 일반 프레임 속도를 반환합니다.

반환된 상수 묘사
ED_RATE_24 초당 24프레임(fps)
ED_RATE_25 25fps
ED_RATE_2997 29.97fps
ED_RATE_30 30fps
 

ED_DEVCAP_SEEK_TYPE: 디바이스의 검색 정확도 표시를 반환합니다.

반환된 상수 묘사
ED_SEEK_PERFECT 디바이스는 신호 중단 없이 하나의 비디오 프레임 내에서 검색할 수 있습니다.
ED_SEEK_FAST 디바이스는 신호의 짧은 중단으로 신속하게 검색할 수 있습니다.
ED_SEEK_SLOW 디바이스는 천천히 검색합니다. 테이프 전송과 같은
 

다음 플래그의 경우 메서드는 pValue 매개 변수의 숫자 값을 반환합니다.

기능 플래그 반환된 값
ED_DEVCAP_EXTERNAL_DEVICE_ID 제조업체별 식별자입니다.
ED_DEVCAP_PREROLL 디바이스 사전 등록 시간입니다.
ED_DEVCAP_POSTROLL 디바이스 등록 시간.
 

Windows XP 서비스 팩 2 이상에서는 ED_DEVCAP_DEVICE_TYPE 다음과 같은 추가 플래그가 지원됩니다.

반환된 상수 묘사
ED_DEVTYPE_CAMERA_STORAGE 스틸 이미지 또는 짧은 비디오 파일에 대한 스토리지입니다.
ED_DEVTYPE_DTV 직렬 버스 인터페이스가 있는 디지털 텔레비전.
ED_DEVTYPE_PC_VIRTUAL 컴퓨터의 가상 또는 에뮬레이트된 디바이스입니다.
 

이러한 상수는 Xprtdefs.h 헤더 파일을 포함합니다.

DV 구현

MSDV 및 UVC 드라이버는 다음 동작을 지원합니다.

ED_DEVCAP_NORMAL_RATE 플래그는 프레임 속도를 반환합니다.

반환된 상수 묘사
ED_RATE_25 25fps(기본 PAL 프레임 속도)
ED_RATE_2997 29.997fps(기본 NTSC 프레임 속도)
 

MSDV의 경우에만 ED_DEVCAP_DEVICE_TYPE 플래그는 디바이스 유형을 반환합니다. 가능한 값은 다음 표에 나와 있습니다. UVC 디바이스의 경우 IKsTopologyInfo 인터페이스를 대신 사용합니다.

반환된 상수 묘사
ED_DEVTYPE_CAMERA 기록하거나 일시 중지할 수 있지만 전체 VCR 기능이 없는 간단한 카메라입니다.
ED_DEVTYPE_DVHS 디바이스는 D-VHS 형식을 지원합니다.
ED_DEVTYPE_UNKNOWN 알 수 없는 디바이스 유형입니다.
ED_DEVTYPE_VCR 디바이스에는 전체 VCR 기능이 있습니다.

요구 사항

요구
지원되는 최소 클라이언트 Windows 2000 Professional [데스크톱 앱만 해당]
지원되는 최소 서버 Windows 2000 Server [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 strmif.h(Dshow.h 포함)
라이브러리 Strmiids.lib

참고 항목

오류 및 성공 코드

IAMExtDevice 인터페이스