diff options
Diffstat (limited to 'src/plugins/wmf/player/mfplayersession.cpp')
-rw-r--r-- | src/plugins/wmf/player/mfplayersession.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/plugins/wmf/player/mfplayersession.cpp b/src/plugins/wmf/player/mfplayersession.cpp index 1d145edc4..daf6f801f 100644 --- a/src/plugins/wmf/player/mfplayersession.cpp +++ b/src/plugins/wmf/player/mfplayersession.cpp @@ -47,6 +47,7 @@ #include <QtCore/qdebug.h> #include <QtCore/qfile.h> #include <QtCore/qbuffer.h> +#include <QtMultimedia/qmediametadata.h> #include "mfplayercontrol.h" #include "mfevrvideowindowcontrol.h" @@ -428,9 +429,15 @@ IMFTopologyNode* MFPlayerSession::addOutputNode(MediaType mediaType, IMFTopology if (mediaType == Audio) { activate = m_playerService->audioEndpointControl()->createActivate(); } else if (mediaType == Video) { + + QSize resolution = m_playerService->metaDataControl()->metaData(QMediaMetaData::Resolution).toSize(); + QRect cropRect = QRect(QPoint(), resolution); + if (m_playerService->videoRendererControl()) { + m_playerService->videoRendererControl()->setCropRect(cropRect); activate = m_playerService->videoRendererControl()->createActivate(); } else if (m_playerService->videoWindowControl()) { + m_playerService->videoWindowControl()->setCropRect(cropRect); activate = m_playerService->videoWindowControl()->createActivate(); } else { qWarning() << "no videoWindowControl or videoRendererControl, unable to add output node for video data"; |