DirectShow DirectShow 레퍼런스 DirectShow 의 필터 DMO 래퍼 필터   [목차열람] [주소복사] [슬롯비우기]
DMO 래퍼 필터
 
Microsoft DirectX 9.0

DMO 래퍼 필터

DMO 래퍼 필터는, Microsoft® DirectShow® 애플리케이션이 필터 그래프내에서 DirectX Media Object (DMO)를 사용할 수 있도록(듯이) 한다. 이 필터는 DMO 를 랩 해, DMO 와의 데이터의 교환 등, DMO 의 사용에 관한 모든 처리를 취급한다. 또, 이 필터는 DMO 를 집성 하기 위한(해), 애플리케이션은 DMO 가 공개하는 모든 COM 인터페이스를 필터에 문의할 수가 있다.

제한 사항

현재의 DMO 래퍼 처리에는 이하의 제한이 있다.

필터 인터페이스 IBaseFilter ,IDMOWrapperFilter ,IPersistStream
입력 핀 미디어 타입 「주의」를 참조.
입력 핀인타페이스 IMemInputPin ,IPin ,IQualityControl
출력 핀 미디어 타입 「주의」를 참조.
출력 핀인타페이스 IAMStreamConfig ,IAMVideoCompression ,IMediaPosition ,IMediaSeeking ,IPin ,IQualityControl
필터 CLSID CLSID_DMOWrapperFilter
프로퍼티 페이지 CLSID 프로퍼티 페이지 없음
실행 모듈 Qasf.dll
메리트 「주의」를 참조.
필터 카테고리 「주의」를 참조.

주의

핀 : DMO 의 각 입력 스트림에 대해서, 이 필터는 대응하는 입력 핀을 생성 한다. 각 출력 스트림에 대해서는, 대응하는 출력 핀을 생성 한다. 각 핀이 지원 하는 미디어 타입은, DMO 에 따라서 다르다.

엔코더 인터페이스 : DMO 가 비디오 엔코더 또는 오디오 엔코더인 경우, 출력 핀은 IAMStreamConfig 인터페이스를 공개한다. DMO 가 비디오 엔코더인 경우, 출력 핀은 IAMVideoCompression 인터페이스도 공개한다. 어느 쪽의 경우도, DMO 가 인터페이스를 지원 하는 경우, 핀은 DMO 에 위임한다. 지원 하고 있지 않는 경우, 핀은 독자적인 처리을 제공한다.

스트리밍 : 이 필터는,IMemInputPin 인터페이스를 사용해 모든 스트리밍을 처리한다. IAsyncReader 접속은 지원 하고 있지 않다. 이 필터는, 스트림 종료 통지를 포함해 업 스트림으로부터 데이터를 받았을 경우에만, DMO 로 IMediaObject::ProcessOutput 를 호출한다. 이 때문에, 제로 입력 스트림의 DMO 는 지원 하지 않는다.

시크 : 모든 시크 요구는, DMO 래퍼의 최초의 입력 핀을 개입시켜 업 스트림 필터에게 건네진다. 복수 출력의 DMO 의 경우, 이것은, 애플리케이션이 그래프를 시크 했을 때에, 업 스트림 필터가 복수의 시크 요구를 받아들일 가능성이 있는 것을 의미한다.

메리트 : DirectShow 은, 모든 DMO 에 기정의 메리트값 MERIT_NORMAL + 0x800 를 할당한다. 이 값은, MERIT_NORMAL 와 MERIT_PREFERRED 의 사이이다. 보통, 디코더 필터의 메리트값은 MERIT_NORMAL 이다. 따라서, 필터 그래프 매니저는 보통, 디코더 필터 대신에 DMO 디코더를 선택한다. 기정의 메리트값을 오버라이드(override) 하려면 , HKEY_CLASSES_ROOT\CLSID 내의 DMO 의 레지스트리 키에, 레지스트리 엔트리를 추가한다. 메리트를 지정하는 값을 가지는 Merit 라는 이름의 DWORD 값을 인클루드 한다.

카테고리 : DMO 래퍼 필터는, 단독으로는 어느 카테고리에도 표시되지 않는다. DMO 를 랩 하면, DMO 의 카테고리에 대응한 DirectShow 카테고리로, DMO 의 이름으로 표시된다.

↑TOP