DirectShow DirectShow 에 대해 필터 그래프와 그 구성 요소 필터 그래프 매니저에 대해   [목차열람] [주소복사] [슬롯비우기]
필터 그래프 매니저에 대해
 
Microsoft DirectX 9.0

필터 그래프 매니저에 대해

필터 그래프 매니저는, 필터 그래프내의 필터를 제어하는 COM 개체이다. 다음과 같은 많은 기능을 실행한다.

여기에서는, 이러한 각 기능에 대해 간단하게 설명한다. 더 자세한 정보는, 이 문서의 다른 장소에서 설명하고 있다.

상태 변경. 필터내 상태 변경은 특정의 순서로 행해질 필요가 있다. 따라서, 애플리케이션은 상태 변경 커멘드를 직접 필터에 대해서 발행하지 않는다. 그 대신에, 애플리케이션은 단일의 커멘드를 필터 그래프 매니저에 대해서 발행해, 필터 그래프 매니저가 각 필터에 커멘드를 발행한다. 시크의 처리도 마찬가지이다. 애플리케이션은 시크 커멘드를 필터 그래프 매니저에 대해서 발행해, 필터 그래프 매니저가 필터에 시크 커멘드를 발행한다.

기준 클럭. 그래프내의 모든 필터는,"기준 클럭" 으로 불리는 동일한 클럭을 사용한다. 기준 클럭에 의해, 모든 스트림의 동기가 보증된다. 비디오 프레임 또는 오디오 샘플이 렌더링 되는 시간을,"프레젠테이션 타임" 이라고 부른다. 프레젠테이션 타임은 기준 클럭으로부터 상대적으로 측정된다. 필터 그래프 매니저는, 보통, 사운드 카드의 클럭 또는 시스템 클록의 몇개의 기준 클럭을 선택한다.

그래프 이벤트. 필터 그래프 매니저는, 이벤트 큐를 사용해, 필터 그래프내에서 발생한 이벤트를 애플리케이션에 통지한다. 이 메카니즘은, Windows 의 메시지 루프와 유사하다.

그래프 생성 메서드. 필터 그래프 매니저는, 그래프에의 필터의 추가, 필터와 다른 필터의 접속, 필터의 접속 해제를 행하기 위한 메서드를 애플리케이션에 제공한다.

필터 그래프 매니저가 "실시하지 않는" 처리의 1 개는, 필터로부터 다음의 필터에의 데이터의 이동이다. 이 처리는, 필터 자체가 필터의 핀 접속을 개입시켜 실시한다. 처리는 항상 독립한 thread로 행해진다.

  필터는 항상 필터 그래프 매니저와 같은 프로세스로 실행되어 인 프로세스 서버로부터 로드 된다. 따라서, 메서드의 호출은, 필터간, 또는 필터와 필터 그래프 매니저의 사이로, 마샬링 되지 않는다.

참조

↑TOP