올바른 비디오 렌더러 선택
[이 페이지와 연결된 기능인 DirectShow는 레거시 기능입니다. MediaPlayer, IMFMediaEngine 및 Media Foundation의 오디오/비디오 캡처로 대체되었습니다. 이러한 기능은 Windows 10 및 Windows 11 최적화되었습니다. 가능한 경우 새 코드가 DirectShow 대신 Media Foundation에서 MediaPlayer, IMFMediaEngine 및 오디오/비디오 캡처를 사용하는 것이 좋습니다. 가능한 경우 레거시 API를 사용하는 기존 코드를 다시 작성하여 새 API를 사용하도록 제안합니다.]
DirectShow는 다음 표에 요약된 여러 비디오 렌더러 필터를 제공합니다.
필터 | 설명 |
---|---|
향상된 비디오 렌더러 (EVR) | Direct3D 9를 사용합니다. Windows Vista 이상이 필요합니다. |
비디오 혼합 렌더러 9 (VMR-9) | Direct3D 9를 사용합니다. Windows XP 이상이 필요합니다. |
비디오 혼합 필터 7 (VMR-7) | DirectDraw를 사용합니다. Windows XP 이상이 필요합니다. |
오버레이 믹서 | DirectDraw를 통해 하드웨어 오버레이를 지원합니다. |
레거시 비디오 렌더러 필터. | DirectDraw 또는 (드물게) GDI 사용 |
사용할 렌더러는 지원해야 하는 Windows 버전에 따라 크게 달라집니다.
- Windows Vista 이상에서는 하드웨어가 지원하는 경우 애플리케이션에서 EVR을 사용해야 합니다. 그렇지 않으면 VMR-9 또는 VMR-7로 대체합니다. EVR은 이전 렌더러보다 더 나은 성능과 더 나은 비디오 품질을 제공합니다. 또한 DWM(데스크톱 창 관리자)과 함께 작동하도록 설계되었습니다.
- Windows Vista 이전에는 하드웨어에서 VMR-9를 지원하고 비디오 포트 기능이 필요하지 않은 경우 VMR-9를 사용합니다. 그렇지 않으면 VMR-7을 사용합니다.
- 이전 시스템에서는 오버레이 믹서(비디오 포트 또는 하드웨어 오버레이 지원용) 또는 레거시 Video Renderer 필터를 사용해야 할 수 있습니다.
IGraphBuilder::Render 및 RenderFile 메서드는 기본적으로 VMR-7을 사용합니다. 하드웨어가 VMR-7을 지원하지 않는 경우 이러한 메서드는 레거시 Video Renderer 필터로 대체됩니다. EVR 및 VMR-9는 기본 렌더러가 되지 않습니다.
관련 항목