summaryrefslogtreecommitdiffstats
path: root/src/plugins/directshow
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/directshow')
-rw-r--r--src/plugins/directshow/player/directshowplayerservice.cpp12
-rw-r--r--src/plugins/directshow/player/directshowvideorenderercontrol.cpp16
2 files changed, 16 insertions, 12 deletions
diff --git a/src/plugins/directshow/player/directshowplayerservice.cpp b/src/plugins/directshow/player/directshowplayerservice.cpp
index 0cad3cc2e..63635b059 100644
--- a/src/plugins/directshow/player/directshowplayerservice.cpp
+++ b/src/plugins/directshow/player/directshowplayerservice.cpp
@@ -219,11 +219,13 @@ QMediaControl *DirectShowPlayerService::requestControl(const char *name)
IBaseFilter *filter;
#if QT_CONFIG(evr)
- DirectShowEvrVideoWindowControl *evrControl = new DirectShowEvrVideoWindowControl;
- if ((filter = evrControl->filter()))
- m_videoWindowControl = evrControl;
- else
- delete evrControl;
+ if (!qgetenv("QT_DIRECTSHOW_NO_EVR").toInt()) {
+ DirectShowEvrVideoWindowControl *evrControl = new DirectShowEvrVideoWindowControl;
+ if ((filter = evrControl->filter()))
+ m_videoWindowControl = evrControl;
+ else
+ delete evrControl;
+ }
#endif
// Fall back to the VMR9 if the EVR is not available
if (!m_videoWindowControl) {
diff --git a/src/plugins/directshow/player/directshowvideorenderercontrol.cpp b/src/plugins/directshow/player/directshowvideorenderercontrol.cpp
index ee7f5ec9e..88b5a51eb 100644
--- a/src/plugins/directshow/player/directshowvideorenderercontrol.cpp
+++ b/src/plugins/directshow/player/directshowvideorenderercontrol.cpp
@@ -98,13 +98,15 @@ void DirectShowVideoRendererControl::setSurface(QAbstractVideoSurface *surface)
if (m_surface) {
#if QT_CONFIG(evr)
- m_filter = com_new<IBaseFilter>(clsid_EnhancedVideoRenderer);
- m_evrPresenter = new EVRCustomPresenter(m_surface);
- if (!m_evrPresenter->isValid() || !qt_evr_setCustomPresenter(m_filter, m_evrPresenter)) {
- m_filter->Release();
- m_filter = 0;
- m_evrPresenter->Release();
- m_evrPresenter = 0;
+ if (!qgetenv("QT_DIRECTSHOW_NO_EVR").toInt()) {
+ m_filter = com_new<IBaseFilter>(clsid_EnhancedVideoRenderer);
+ m_evrPresenter = new EVRCustomPresenter(m_surface);
+ if (!m_evrPresenter->isValid() || !qt_evr_setCustomPresenter(m_filter, m_evrPresenter)) {
+ m_filter->Release();
+ m_filter = 0;
+ m_evrPresenter->Release();
+ m_evrPresenter = 0;
+ }
}
if (!m_filter)