Videoprobe implementation for wmf backend.

Change-Id: Ia597af428764229a76c0059ae7a57eb302aee63d
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
This commit is contained in:
Lev Zelenskiy
2012-07-19 14:38:45 +10:00
committed by Qt by Nokia
parent d7ed7ef6b3
commit b7f4b2decb
9 changed files with 1139 additions and 9 deletions

View File

@@ -55,6 +55,7 @@
#include <QtCore/qurl.h>
#include <QtCore/qwaitcondition.h>
#include <QtMultimedia/qaudioformat.h>
#include <QtMultimedia/qvideosurfaceformat.h>
QT_BEGIN_NAMESPACE
class QMediaContent;
@@ -72,7 +73,9 @@ class MFPlayerControl;
class MFMetaDataControl;
class MFPlayerService;
class AudioSampleGrabberCallback;
class MFTransform;
class MFAudioProbeControl;
class MFVideoProbeControl;
class MFPlayerSession : public QObject, public IMFAsyncCallback
{
@@ -120,6 +123,8 @@ public:
void addProbe(MFAudioProbeControl* probe);
void removeProbe(MFAudioProbeControl* probe);
void addProbe(MFVideoProbeControl* probe);
void removeProbe(MFVideoProbeControl* probe);
Q_SIGNALS:
void error(QMediaPlayer::Error error, QString errorString, bool isFatal);
@@ -223,6 +228,9 @@ private:
QAudioFormat audioFormatForMFMediaType(IMFMediaType *mediaType) const;
AudioSampleGrabberCallback *m_audioSampleGrabber;
IMFTopologyNode *m_audioSampleGrabberNode;
IMFTopology *insertMFT(IMFTopology *topology, TOPOID outputNodeId);
MFTransform *m_videoProbeMFT;
};