IAMExtTransport::GetStatus 메서드(strmif.h)

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

메서드는 GetStatus 전송의 상태 대한 정보를 반환합니다.

구문

HRESULT GetStatus(
  [in]      long StatusItem,
  [in, out] long *pValue
);

매개 변수

[in] StatusItem

검색할 상태 정보를 지정합니다. 자세한 내용은 설명 부분을 참조하십시오.

[in, out] pValue

StatusItem 값에 따라 의미가 달라지는 정수 또는 를 지정하거나 수신하는 변수에 대한 포인터입니다. 자세한 내용은 설명 부분을 참조하십시오.

반환 값

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

설명

StatusItem 매개 변수는 검색할 상태 정보를 지정하는 플래그입니다. 메서드는 pValue 매개 변수의 정보를 반환합니다. 모든 디바이스가 모든 상태 플래그를 지원하는 것은 아닙니다. 다음 플래그가 정의됩니다.

  • ED_MODE: 일시 중지 또는 재생과 같은 현재 전송 모드를 반환합니다. 전송 모드를 정의하는 상수 목록은 IAMExtTransport::p ut_Mode 를 참조하세요. 또는 StatusItem 을 이러한 상수 중 하나와 동일하게 설정할 수 있으며, 전송이 현재 해당 모드에 있는 경우 pValue 는 OATRUE 값을 받거나, 그렇지 않으면 OAFALSE를 받습니다.
  • ED_MEDIA_TYPE: 이 전송에 대한 미디어 형식을 나타냅니다. 다음 상수 중 하나를 반환합니다.
    상수 Description
    ED_MEDIA_VHS Vhs
    ED_MEDIA_SVHS S-VHS
    ED_MEDIA_HI8 Hi-8
    ED_MEDIA_UMATIC Umatic
    ED_MEDIA_DVC DV 테이프(DVC)
    ED_MEDIA_1_INCH 1인치 테이프
    ED_MEDIA_D1 D1 형식
    ED_MEDIA_D2 D2 형식
    ED_MEDIA_D3 D3 형식
    ED_MEDIA_D5 D5 형식
    ED_MEDIA_DBETA Digital Betacam
    ED_MEDIA_BETA 베타캠
    ED_MEDIA_8MM 8밀리미터
    ED_MEDIA_DDR 디지털 디스크 레코더
    ED_MEDIA_SX Betacam SX
    ED_MEDIA_OTHER 기타
    ED_MEDIA_CLV CLV(상수 선형 속도 또는 "표준 재생") laserdisc
    ED_MEDIA_CAV CAV(상수 Angular 속도 또는 "확장 플레이") laserdisc
     
  • ED_LINK_MODE: 전송의 컨트롤이 필터 그래프의 실행, 중지일시 중지 메서드에 연결되어 있으면 OATRUE를 반환하고, 그렇지 않으면 OAFALSE를 반환합니다. 자세한 내용은 IAMExtTransport::p ut_Mode 를 참조하세요.
  • ED_MEDIA_PRESENT: 전송의 미디어가 있으면 OATRUE를 반환하고, 그렇지 않으면 OAFALSE를 반환합니다.
  • ED_MEDIA_LENGTH: 미디어 길이를 현재 시간 형식의 단위로 반환 합니다(IAMExtTransport::SetTransportBasicParameters 참조).
  • ED_MEDIA_TRACK_COUNT: 트랙 수를 반환합니다.
  • ED_MEDIA_TRACK_LENGTH: 현재 시간 형식의 단위로 트랙 길이를 반환합니다.
  • ED_MEDIA_SIDE: 미디어의 어느 쪽이 활성 상태인지 나타냅니다.
Windows XP 서비스 팩 2 이상에서는 ED_MODE 대해 다음과 같은 추가 플레이 모드가 정의됩니다.
상수 Description
ED_MODE_PLAY_SLOW_FWD_X 지정되지 않은 느린 앞으로 재생합니다. (공급업체별 속도에서 느린 정방향 플레이).
ED_MODE_PLAY_FAST_FWD_X 지정되지 않은 빠른 전진을 재생합니다. (공급업체별 속도에 따라 빠르게 진행)
ED_MODE_PLAY_SLOW_REV_X 지정되지 않은 느린 역방향을 재생합니다. (공급업체별 속도에서 느린 역방향 플레이).
ED_MODE_PLAY_FAST_REV_X 지정되지 않은 빠른 역방향으로 재생합니다. (공급업체별 속도로 빠른 역방향 플레이).
ED_MODE_STOP_START 테이프(또는 기타 전송 매체)의 시작 부분에서 전송이 중지됩니다.
ED_MODE_STOP_END 테이프(또는 기타 전송 매체)의 끝에서 전송이 중지됩니다.
ED_MODE_STOP_EMERGENCY 예기치 않은 조건으로 인해 또는 전송에 대한 손상을 방지하기 위해 전송이 중지되었습니다.
 

이러한 상수를 사용하려면 Windows SDK Xprtdefs.h 헤더 파일을 포함합니다.

DV 구현

MSDV는 다음 상태 플래그를 지원합니다.

  • ED_MODE: 이전 발언을 참조하세요.
  • ED_MEDIA_TYPE: 다음 값 중 하나를 반환합니다.
    상수 Description
    ED_MEDIA_VHS VHS 테이프.
    ED_MEDIA_DVC DV 테이프.
    ED_MEDIA_UNKNOWN 알 수 없는 유형입니다.
    ED_MEDIA_NOT_PRESENT 전송이 비어 있습니다.
     
  • ED_DEV_REMOVED_HEVENT_GET. 이벤트에 대한 핸들을 반환합니다. 디바이스가 시스템에서 물리적으로 제거된 경우 드라이버는 이벤트를 신호로 보냅니다.
  • ED_DEV_REMOVED_HEVENT_RELEASE. ED_DEV_REMOVED_HEVENT_GET 플래그를 통해 가져온 이벤트 핸들을 해제합니다. pValue 매개 변수에서 핸들의 주소를 지정합니다.
  • ED_MODE_CHANGE_NOTIFY. pValue에서 디바이스 상태를 반환합니다. 메서드가 E_PENDING 반환하는 경우 상태 변경이 보류 중입니다. 상태 변경이 완료되면 ED_NOTIFY_HEVENT_GET 플래그를 사용하여 알림을 받을 수 있습니다.
  • ED_NOTIFY_HEVENT_GET. 이벤트에 대한 핸들을 반환합니다. 디바이스가 모드 변경을 완료하면 드라이버가 이벤트에 신호를 보냅니다.
  • ED_NOTIFY_HEVENT_RELEASE. ED_NOTIFY_HEVENT_GET 플래그를 통해 가져온 이벤트 핸들을 해제합니다. pValue 매개 변수에서 핸들의 주소를 지정합니다.

MPEG Camcorder 구현

MSTape 는 ED_MEDIA_TYPE 플래그에 대한 추가 미디어 형식을 지원합니다.

상수 Description
ED_MEDIA_NEO MPEG-2 전송 스트림(D-VHS)용 미니 디지털 테이프.
 

이러한 플래그 중 일부는 Xptrdefs.h 헤더 파일에 정의되어 있습니다.

요구 사항

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

추가 정보

오류 및 성공 코드

IAMExtTransport 인터페이스