DirectMusic DirectMusic C/C++ 레퍼런스 DirectMusic 의 인터페이스 IReferenceClock   [목차열람] [주소복사] [슬롯비우기]
IReferenceClock 인터페이스
 
Microsoft DirectX 9.0

IReferenceClock 인터페이스

IReferenceClock 인터페이스는, 필터 그래프에 기준 타임을 제공한다.

기준 클럭 으로서의 기능을 가지는 필터는, 이 인터페이스를 공개할 수 있다. 이 인터페이스는,시스템 기준 클럭에서도 공개된다. 필터 그래프 매니저는, 이 인터페이스를 사용해 필터 그래프의 동기를 잡는다. 애플리케이션에서는, 이 인터페이스를 사용해, 현재의 기준 타임을 취득하거나 경과시간의 통지를 요구하거나 할 수 있다.

더 자세한 정보는, 「DirectShow 의 타임과 클럭」을 참조할것.

필터 개발자 :신뢰성의 높은 클럭 타임을 생성하는 필터를 개발하려면 , 이 인터페이스를 처리 하는 것. 예를 들어, 사운드 보드에는 기준 클럭이 붙어 있는 것이 많기 때문에, 오디오 렌더링은 이 인터페이스를 처리 한다. 이 인터페이스를 처리 하려면 ,CBaseReferenceClock 클래스를 사용하는 것.

비렌더링 필터가 필터 그래프 매니저로부터 참조 클럭으로서 선택될 기회를 늘리려면 , 이하의 스텝을 실행하는 것.

  1. 그 필터내에서 IReferenceClock 를 처리 한다.
  2. 그 필터내에서 IAMFilterMiscFlags 를 처리 한다.
  3. IAMFilterMiscFlags::GetMiscFlags 로부터 AM_FILTER_MISC_FLAGS_IS_SOURCE 를 돌려준다.
  4. 모든 출력 핀으로 IAMPushSource 를 처리 한다.
  5. IAMPushSource::GetPushSourceFlags 로부터 (* pFlags) = 0 을 돌려준다.
  6. 다른 모든 IAMPushSource 메서드로부터 E_NOTIMPL 를 돌려준다.

IUnknown 로부터 계승한 메서드에 가세해,IReferenceClock 인터페이스는 다음의 메서드를 공개한다.

메서드 설명
GetTime 현재의 기준 타임을 얻어온다.
AdviseTime 단발의 아드바이즈 요구를 생성 한다.
AdvisePeriodic 주기적 아드바이즈 요구를 생성 한다.
Unadvise 보류 상태의 아드바이즈 요구를 삭제한다.

↑TOP