IAMTimecodeReader::GetTimecode 메서드(strmif.h)

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

메서드는 GetTimecode 스트림에서 사용할 수 있는 가장 최근의 시간 코드, userbit 및 플래그 값을 검색합니다.

구문

HRESULT GetTimecode(
  [out] PTIMECODE_SAMPLE pTimecodeSample
);

매개 변수

[out] pTimecodeSample

TIMECODE_SAMPLE 구조체에 대한 포인터입니다.

반환 값

인터페이스 구현에 따라 달라지는 HRESULT 값을 반환합니다.

설명

이 메서드를 사용하여 시간 코드를 모니터링하고 중복 및 불연속성을 구문 분석합니다.

시간 코드에는 userbits라는 정의되지 않은 비트가 포함되어 있습니다. 애플리케이션은 이러한 비트를 사용하여 동기화 정보 또는 기타 사용자 지정 정보를 저장할 수 있습니다.

DV 및 MPEG 캠코더 구현

MSDV 드라이버는 SMPTE 시간 코드 또는 ATN(절대 트랙 번호) 읽기를 지원합니다. MSTape 드라이버는 RTC(상대 시간 카운터)를 읽을 수 있습니다. 이러한 디바이스에 대한 시간 정보를 읽으려면 다음을 수행합니다.

TIMECODE_SAMPLE 구조체의 dwFlags 멤버를 다음 값 중 하나로 설정합니다.

상수 Description
ED_DEVCAP_TIMECODE_READ 시간 코드(DV)
ED_DEVCAP_ATN_READ DV(절대 트랙 번호)
ED_DEVCAP_RTC_READ 상대 시간 카운터(MPEG 테이프)
 

TIMECODE_SAMPLE 구조체의 timecode 멤버는 TIMECODE 구조체입니다. 해당 구조체의 dwFrames 멤버를 0으로 초기화합니다.

다른 모든 구조체 멤버는 무시됩니다.

메서드가 반환되면 dwFrames 멤버에는 다음 형식의 시간 정보가 포함됩니다.

시간 정보 서식
시간 코드 BCD(이진 코딩된 10진수) 값으로 시간, 분, 초 및 프레임: 0xhhmmssff.
Atn 추적 번호입니다.
RTC BCD 값으로 시간, 분, 초 및 프레임: 0xhhmmssff. 프레임 바이트의 가장 중요한 비트는 부호 비트입니다. 프레임 수를 사용할 수 없는 경우 나머지 프레임 비트는 0x7F 설정됩니다.
 

또한 dwUser 멤버는 다음 값 중 하나를 포함하는 디바이스에서 빈 플래그 비트를 받습니다.

Description
0x00 불연속성이 아닙니다.
0x01 불연속.

요구 사항

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

추가 정보

오류 및 성공 코드

디바이스에서 시간 코드 가져오기

IAMTimecodeReader 인터페이스