選擇正確的視訊轉譯器
[與此頁面 相關的功能 DirectShow是舊版功能。 它已被 MediaPlayer、 IMFMediaEngine和 Media Foundation 中的音訊/視訊擷取取代。 這些功能已針對Windows 10和Windows 11進行優化。 Microsoft 強烈建議新程式碼盡可能使用 MediaPlayer、 IMFMediaEngine 和 音訊/視訊擷取 ,而不是 DirectShow。 Microsoft 建議盡可能重寫使用舊版 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。
- 在較舊的系統上,您可能需要針對視訊埠或硬體重迭支援使用重迭器 (,) 或舊版視訊轉譯器篩選器。
IGraphBuilder::Render和RenderFile方法預設會使用 VMR-7。 如果硬體不支援 VMR-7,這些方法會回復為舊版影片轉譯器篩選器。 EVR 和 VMR-9 永遠不會是預設轉譯器。
相關主題