diff options
author | Lev Zelenskiy <lev.zelenskiy@nokia.com> | 2012-07-19 14:38:45 +1000 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-07-19 09:08:45 +0200 |
commit | b7f4b2decbd04addbe7d647e65a4f353a56bdb61 (patch) | |
tree | 86052b48a32e47e3c5f77274f44aca2caf36bdaa /src/plugins/wmf/player/mfplayerservice.cpp | |
parent | d7ed7ef6b38f303cc5e3a84d3864c3d61affc322 (diff) |
Videoprobe implementation for wmf backend.
Change-Id: Ia597af428764229a76c0059ae7a57eb302aee63d
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Diffstat (limited to 'src/plugins/wmf/player/mfplayerservice.cpp')
-rw-r--r-- | src/plugins/wmf/player/mfplayerservice.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/plugins/wmf/player/mfplayerservice.cpp b/src/plugins/wmf/player/mfplayerservice.cpp index aad1abefb..6ab9a997b 100644 --- a/src/plugins/wmf/player/mfplayerservice.cpp +++ b/src/plugins/wmf/player/mfplayerservice.cpp @@ -50,6 +50,7 @@ #include "mfvideorenderercontrol.h" #include "mfaudioendpointcontrol.h" #include "mfaudioprobecontrol.h" +#include "mfvideoprobecontrol.h" #include "mfplayerservice.h" #include "mfplayersession.h" #include "mfmetadatacontrol.h" @@ -113,6 +114,13 @@ QMediaControl* MFPlayerService::requestControl(const char *name) return probe; } return 0; + } else if (qstrcmp(name,QMediaVideoProbeControl_iid) == 0) { + if (m_session) { + MFVideoProbeControl *probe = new MFVideoProbeControl(this); + m_session->addProbe(probe); + return probe; + } + return 0; } return 0; @@ -141,6 +149,14 @@ void MFPlayerService::releaseControl(QMediaControl *control) delete audioProbe; return; } + + MFVideoProbeControl* videoProbe = qobject_cast<MFVideoProbeControl*>(control); + if (videoProbe) { + if (m_session) + m_session->removeProbe(videoProbe); + delete videoProbe; + return; + } } MFAudioEndpointControl* MFPlayerService::audioEndpointControl() const |