4#ifndef MFAUDIODECODERCONTROL_H
5#define MFAUDIODECODERCONTROL_H
19#include <private/qplatformaudiodecoder_p.h>
20#include <sourceresolver_p.h>
21#include <private/qwindowsresampler_p.h>
33 void setSource(
const QUrl &fileName) override;
52 void handleMediaSourceError(
long hr);
53 void handleNewSample(ComPtr<IMFSample>);
54 void handleSourceFinished();
57 void startReadingSource(IMFMediaSource *source);
59 std::unique_ptr<MFDecoderSourceReader> m_decoderSourceReader;
61 QWindowsResampler m_resampler;
63 QIODevice *m_device =
nullptr;
65 QAudioBuffer m_audioBuffer;
66 qint64 m_duration = -1;
67 qint64 m_position = -1;
68 bool m_loadingSource =
false;
69 bool m_deferredStart =
false;
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
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
Combined button and popup list for selecting options.