Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Toggle main menu visibility
Loading...
Searching...
No Matches
mfaudiodecodercontrol_p.h
Go to the documentation of this file.
1
// Copyright (C) 2016 The Qt Company Ltd.
2
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
4
#
ifndef
MFAUDIODECODERCONTROL_H
5
#
define
MFAUDIODECODERCONTROL_H
6
7
//
8
// W A R N I N G
9
// -------------
10
//
11
// This file is not part of the Qt API. It exists purely as an
12
// implementation detail. This header file may change from version to
13
// version without notice, or even be removed.
14
//
15
// We mean it.
16
//
17
18
#
include
<
decoder
/
mfdecodersourcereader_p
.
h
>
19
#
include
<
sourceresolver_p
.
h
>
20
21
#
include
<
QtMultimedia
/
private
/
qplatformaudiodecoder_p
.
h
>
22
#
include
<
QtMultimedia
/
private
/
qwindowsresampler_p
.
h
>
23
24
QT_BEGIN_NAMESPACE
25
26
class
MFAudioDecoderControl
:
public
QPlatformAudioDecoder
27
{
28
Q_OBJECT
29
public
:
30
MFAudioDecoderControl
(
QAudioDecoder
*
parent
);
31
~
MFAudioDecoderControl
()
override
;
32
33
QUrl
source
()
const
override
{
return
m_source; }
34
void
setSource
(
const
QUrl &fileName)
override
;
35
36
QIODevice
*
sourceDevice
()
const
override
{
return
m_device; }
37
void
setSourceDevice
(QIODevice *device)
override
;
38
39
void
start
()
override
;
40
void
stop
()
override
;
41
42
QAudioFormat
audioFormat
()
const
override
{
return
m_outputFormat; }
43
void
setAudioFormat
(
const
QAudioFormat &format)
override
;
44
45
QAudioBuffer
read
()
override
;
46
bool
bufferAvailable
()
const
override
{
return
m_audioBuffer.sampleCount() > 0; }
47
48
bool
canReadQrc
()
const
override
{
return
true
; }
49
50
private
Q_SLOTS
:
51
void
handleMediaSourceReady
();
52
void
handleMediaSourceError(
long
hr);
53
void
handleNewSample(ComPtr<IMFSample>);
54
void
handleSourceFinished();
55
56
private
:
57
void
startReadingSource(
const
ComPtr<IMFMediaSource> &source);
58
59
std::unique_ptr<MFDecoderSourceReader> m_decoderSourceReader;
60
ComPtr<SourceResolver> m_sourceResolver;
61
QWindowsResampler m_resampler;
62
QUrl m_source;
63
QIODevice *m_device =
nullptr
;
64
QAudioFormat m_outputFormat;
65
QAudioBuffer m_audioBuffer;
66
bool
m_loadingSource =
false
;
67
bool
m_deferredStart =
false
;
68
};
69
70
QT_END_NAMESPACE
71
72
#
endif
//MFAUDIODECODERCONTROL_H
MFAudioDecoderControl
Definition
mfaudiodecodercontrol_p.h:27
MFAudioDecoderControl::canReadQrc
bool canReadQrc() const override
Definition
mfaudiodecodercontrol_p.h:48
MFAudioDecoderControl::setAudioFormat
void setAudioFormat(const QAudioFormat &format) override
Definition
mfaudiodecodercontrol.cpp:197
MFAudioDecoderControl::bufferAvailable
bool bufferAvailable() const override
Definition
mfaudiodecodercontrol_p.h:46
MFAudioDecoderControl::source
QUrl source() const override
Definition
mfaudiodecodercontrol_p.h:33
MFAudioDecoderControl::setSourceDevice
void setSourceDevice(QIODevice *device) override
Definition
mfaudiodecodercontrol.cpp:49
MFAudioDecoderControl::audioFormat
QAudioFormat audioFormat() const override
Definition
mfaudiodecodercontrol_p.h:42
MFAudioDecoderControl::stop
void stop() override
Definition
mfaudiodecodercontrol.cpp:154
MFAudioDecoderControl::read
QAudioBuffer read() override
Definition
mfaudiodecodercontrol.cpp:205
MFAudioDecoderControl::setSource
void setSource(const QUrl &fileName) override
Definition
mfaudiodecodercontrol.cpp:32
MFAudioDecoderControl::sourceDevice
QIODevice * sourceDevice() const override
Definition
mfaudiodecodercontrol_p.h:36
MFAudioDecoderControl::start
void start() override
Definition
mfaudiodecodercontrol.cpp:131
MFAudioDecoderControl::~MFAudioDecoderControl
~MFAudioDecoderControl() override
Definition
mfaudiodecodercontrol.cpp:27
QMediaEnginePlayer
Definition
qmediaengineplayer_p.h:47
QWindowsCamera
Definition
qwindowscamera_p.h:26
QWindowsImageCapture
Definition
qwindowsimagecapture_p.h:26
QWindowsMediaCaptureService
Definition
qwindowsmediacapture_p.h:29
QWindowsMediaEncoder
Definition
qwindowsmediaencoder_p.h:30
QWindowsMediaIntegration
Definition
qwindowsintegration_p.h:27
QWindowsMediaIntegration::createVideoSink
q23::expected< QPlatformVideoSink *, QString > createVideoSink(QVideoSink *sink) override
Definition
qwindowsintegration.cpp:99
QWindowsMediaIntegration::createFormatInfo
QPlatformMediaFormatInfo * createFormatInfo() override
Definition
qwindowsintegration.cpp:59
QWindowsMediaIntegration::createAudioDecoder
q23::expected< QPlatformAudioDecoder *, QString > createAudioDecoder(QAudioDecoder *decoder) override
Definition
qwindowsintegration.cpp:74
QWindowsMediaIntegration::createCamera
q23::expected< QPlatformCamera *, QString > createCamera(QCamera *camera) override
Definition
qwindowsintegration.cpp:84
QWindowsMediaIntegration::createImageCapture
q23::expected< QPlatformImageCapture *, QString > createImageCapture(QImageCapture *imageCapture) override
Definition
qwindowsintegration.cpp:94
QWindowsMediaIntegration::createVideoDevices
QPlatformVideoDevices * createVideoDevices() override
Definition
qwindowsintegration.cpp:64
QWindowsMediaIntegration::~QWindowsMediaIntegration
~QWindowsMediaIntegration()
Definition
qwindowsintegration.cpp:54
QWindowsMediaIntegration::createRecorder
q23::expected< QPlatformMediaRecorder *, QString > createRecorder(QMediaRecorder *recorder) override
Definition
qwindowsintegration.cpp:89
QWindowsMediaIntegration::createPlayer
q23::expected< QPlatformMediaPlayer *, QString > createPlayer(QMediaPlayer *parent) override
Definition
qwindowsintegration.cpp:79
QWindowsMediaIntegration::createCaptureSession
q23::expected< QPlatformMediaCaptureSession *, QString > createCaptureSession() override
Definition
qwindowsintegration.cpp:69
QWindowsMediaPlugin
Definition
qwindowsintegration.cpp:25
QT_BEGIN_NAMESPACE
Combined button and popup list for selecting options.
Definition
qsequentialanimationgroup.cpp:47
qtmultimedia
src
plugins
multimedia
windows
decoder
mfaudiodecodercontrol_p.h
Generated on
for Qt by
1.18.0