4#ifndef EVRVIDEOWINDOWCONTROL_H
5#define EVRVIDEOWINDOWCONTROL_H
22#include <private/qplatformvideosink_p.h>
26class EvrVideoWindowControl :
public QPlatformVideoSink
30 EvrVideoWindowControl(QVideoSink *parent = 0);
31 ~EvrVideoWindowControl() override;
33 bool setEvr(IUnknown *evr);
35 void setWinId(WId id)
override;
37 void setDisplayRect(
const QRect &rect)
override;
39 void setFullScreen(
bool fullScreen) override;
41 void setAspectRatioMode(Qt::AspectRatioMode mode)
override;
43 void setBrightness(
float brightness) override;
44 void setContrast(
float contrast) override;
45 void setHue(
float hue) override;
46 void setSaturation(
float saturation) override;
48 void applyImageControls();
52 DXVA2_Fixed32 scaleProcAmpValue(DWORD prop,
float value)
const;
55 COLORREF m_windowColor;
57 Qt::AspectRatioMode m_aspectRatioMode;
65 IMFVideoDisplayControl *m_displayControl;
66 IMFVideoProcessor *m_processor;
qint64 duration() const override
void setAudioFormat(const QAudioFormat &format) override
bool bufferAvailable() const override
QUrl source() const override
void setSourceDevice(QIODevice *device) override
QAudioFormat audioFormat() const override
QAudioBuffer read() override
qint64 position() const override
QIODevice * sourceDevice() const override
~MFAudioDecoderControl() override
IMFActivate * createActivate()
~MFEvrVideoWindowControl()
MFEvrVideoWindowControl(QVideoSink *parent=0)
bool streamPlaybackSupported() const override
bool isAudioAvailable() const override
void handleError(QMediaPlayer::Error errorCode, const QString &errorString, bool isFatal)
qreal playbackRate() const override
QMediaPlayer::PlaybackState state() const override
QMediaMetaData metaData() const override
const QIODevice * mediaStream() const override
void setActiveTrack(TrackType type, int index) override
void setAudioOutput(QPlatformAudioOutput *output) override
QMediaMetaData trackMetaData(TrackType type, int trackNumber) override
void handleAudioAvailable()
void setPlaybackRate(qreal rate) override
void setMedia(const QUrl &media, QIODevice *stream) override
QMediaPlayer::MediaStatus mediaStatus() const override
int activeTrack(TrackType type) override
QUrl media() const override
QMediaTimeRange availablePlaybackRanges() const override
MFPlayerControl(QMediaPlayer *player)
float bufferProgress() const override
void setVideoSink(QVideoSink *sink) override
bool isVideoAvailable() const override
void handleSeekableUpdate(bool seekable)
qint64 duration() const override
qint64 position() const override
void handleVideoAvailable()
void handleDurationUpdate(qint64 duration)
int trackCount(TrackType type) override
void setPosition(qint64 position) override
bool isSeekable() const override
void handleTracksChanged()
void handleStatusChanged()
int capture(const QString &fileName) override
virtual ~QWindowsImageCapture()
int captureToBuffer() override
QImageEncoderSettings imageSettings() const override
void setImageSettings(const QImageEncoderSettings &settings) override
void setCaptureSession(QPlatformMediaCaptureSession *session)
bool isReadyForCapture() const override
STDMETHODIMP_(ULONG) AddRef(void) override
IMFMediaSource * mediaSource() const
STDMETHODIMP QueryInterface(REFIID riid, LPVOID *ppvObject) override
constexpr int channelConfig(Args... values)
Q_CORE_EXPORT QDebug operator<<(QDebug debug, QDir::Filters filters)