DirectShow DirectShow 의 사용법 Video Mixing Renderer 의 사용법 VMR-9 필터 그래프의 생성 [목차열람] [주소복사] [슬롯비우기] |
Microsoft DirectX 9.0 |
Video Mixing Renderer 9 필터 (VMR-9)는 디폴트 비디오 렌더러는 아니기 때문에, VMR-9 를 사용하는 애플리케이션은 명시적으로 VMR-9 를 그래프에 추가해, 접속할 필요가 있다. 여기에서는, VMR-9 를 사용하는 필터 그래프를 생성 하는 2 개가 다른 방법을 나타낸다.
Capture Graph Builder 의 사용법
Capture Graph Builder 는, 커스텀 필터 그래프를 생성하기 위한 헬퍼-개체이다. Capture Graph Builder 를 사용해, 다음과 같이 VMR-9 그래프를 생성 할 수 있다.
IBaseFilter *pVmr = NULL;
hr = CoCreateInstance(CLSID_VideoMixingRenderer9, 0,
CLSCTX_INPROC_SERVER, IID_IBaseFilter, (void**) &pVmr);
hr = pGraph->AddFilter(pVmr, L"VMR9");
IBaseFilter *pSource;
hr = pGraph->AddSourceFilter(L"C:\\Example.avi", L"Source1", &pSource);
hr = pBuild->RenderStream(0, 0, pSource, 0, pVmr);
hr = pBuild->RenderStream(0, &MEDIATYPE_Audio, pSource, 0, NULL);
각 소스 파일용의 AddSourceFilter 와 RenderStream 를 호출해, 복수의 비디오 스트림을 믹싱 할 수 있다.
필터 그래프 매니저의 사용법
Capture Graph Builder 를 사용하고 싶지 않은 경우는, 다음의 순서에 따라, 필터 그래프 매니저로 메서드를 사용해, VMR-9 그래프를 생성 할 수 있다.
참조