4#ifndef QWINDOWSMFDEFS_P_H
5#define QWINDOWSMFDEFS_P_H
18#include <mfmediaengine.h>
25#ifndef __IMFTimedText_INTERFACE_DEFINED__
28struct IMFTimedTextBinary;
29struct IMFTimedTextRegion;
30struct IMFTimedTextStyle;
31struct IMFTimedTextCueList;
33struct IMFTimedTextNotify;
34struct IMFTimedTextTrack;
35struct IMFTimedTextTrackList;
36struct IMFTimedTextCue;
37struct IMFTimedTextFormattedText;
45} MF_TIMED_TEXT_TRACK_KIND;
53} MF_TIMED_TEXT_TRACK_READY_STATE;
62} MF_TIMED_TEXT_ERROR_CODE;
69} MF_TIMED_TEXT_CUE_EVENT;
74 0x805ea411, 0x92e0, 0x4e59, 0x9b, 0x6e, 0x5c, 0x7d, 0x79, 0x15, 0xe6, 0x4f);
76#define __IMFTimedText_INTERFACE_DEFINED__
77MIDL_INTERFACE(
"1f2a94c9-a3df-430d-9d0f-acd85ddc29af")
78IMFTimedText :
public IUnknown
81 virtual HRESULT STDMETHODCALLTYPE RegisterNotifications(IMFTimedTextNotify *notify) = 0;
82 virtual HRESULT STDMETHODCALLTYPE SelectTrack(DWORD trackId, BOOL selected) = 0;
83 virtual HRESULT STDMETHODCALLTYPE AddDataSource(IMFByteStream *byteStream, LPCWSTR label,
84 LPCWSTR language, MF_TIMED_TEXT_TRACK_KIND kind,
85 BOOL isDefault, DWORD *trackId) = 0;
86 virtual HRESULT STDMETHODCALLTYPE AddDataSourceFromUrl(LPCWSTR url, LPCWSTR label,
88 MF_TIMED_TEXT_TRACK_KIND kind,
89 BOOL isDefault, DWORD *trackId) = 0;
90 virtual HRESULT STDMETHODCALLTYPE AddTrack(LPCWSTR label, LPCWSTR language,
91 MF_TIMED_TEXT_TRACK_KIND kind,
92 IMFTimedTextTrack **track) = 0;
93 virtual HRESULT STDMETHODCALLTYPE RemoveTrack(IMFTimedTextTrack *track) = 0;
94 virtual HRESULT STDMETHODCALLTYPE GetCueTimeOffset(
double *offset) = 0;
95 virtual HRESULT STDMETHODCALLTYPE SetCueTimeOffset(
double offset) = 0;
96 virtual HRESULT STDMETHODCALLTYPE GetTracks(IMFTimedTextTrackList **tracks) = 0;
97 virtual HRESULT STDMETHODCALLTYPE GetActiveTracks(IMFTimedTextTrackList **activeTracks) = 0;
98 virtual HRESULT STDMETHODCALLTYPE GetTextTracks(IMFTimedTextTrackList **textTracks) = 0;
99 virtual HRESULT STDMETHODCALLTYPE GetMetadataTracks(IMFTimedTextTrackList **metadataTracks) = 0;
100 virtual HRESULT STDMETHODCALLTYPE SetInBandEnabled(BOOL enabled) = 0;
101 virtual BOOL STDMETHODCALLTYPE IsInBandEnabled() = 0;
103__CRT_UUID_DECL(IMFTimedText,
104 0x1f2a94c9, 0xa3df, 0x430d, 0x9d, 0x0f, 0xac, 0xd8, 0x5d, 0xdc, 0x29, 0xaf)
106#define __IMFTimedTextNotify_INTERFACE_DEFINED__
107MIDL_INTERFACE(
"df6b87b6-ce12-45db-aba7-432fe054e57d")
108IMFTimedTextNotify :
public IUnknown
112 virtual void STDMETHODCALLTYPE TrackAdded(DWORD trackId) = 0;
113 virtual void STDMETHODCALLTYPE TrackRemoved(DWORD trackId) = 0;
114 virtual void STDMETHODCALLTYPE TrackSelected(DWORD trackId, BOOL selected) = 0;
115 virtual void STDMETHODCALLTYPE TrackReadyStateChanged(DWORD trackId) = 0;
116 virtual void STDMETHODCALLTYPE Error(MF_TIMED_TEXT_ERROR_CODE errorCode,
117 HRESULT extendedErrorCode, DWORD sourceTrackId) = 0;
118 virtual void STDMETHODCALLTYPE Cue(MF_TIMED_TEXT_CUE_EVENT cueEvent,
double currentTime,
119 IMFTimedTextCue *cue) = 0;
120 virtual void STDMETHODCALLTYPE Reset() = 0;
122__CRT_UUID_DECL(IMFTimedTextNotify,
123 0xdf6b87b6, 0xce12, 0x45db, 0xab, 0xa7, 0x43, 0x2f, 0xe0, 0x54, 0xe5, 0x7d)
125#define __IMFTimedTextTrack_INTERFACE_DEFINED__
126MIDL_INTERFACE(
"8822c32d-654e-4233-bf21-d7f2e67d30d4")
127IMFTimedTextTrack :
public IUnknown
130 virtual DWORD STDMETHODCALLTYPE GetId() = 0;
131 virtual HRESULT STDMETHODCALLTYPE GetLabel(LPWSTR *label) = 0;
132 virtual HRESULT STDMETHODCALLTYPE SetLabel(LPCWSTR label) = 0;
133 virtual HRESULT STDMETHODCALLTYPE GetLanguage(LPWSTR *language) = 0;
134 virtual MF_TIMED_TEXT_TRACK_KIND STDMETHODCALLTYPE GetTrackKind() = 0;
135 virtual BOOL STDMETHODCALLTYPE IsInBand() = 0;
136 virtual HRESULT STDMETHODCALLTYPE GetInBandMetadataTrackDispatchType(LPWSTR *dispatchType) = 0;
137 virtual BOOL STDMETHODCALLTYPE IsActive() = 0;
138 virtual MF_TIMED_TEXT_ERROR_CODE STDMETHODCALLTYPE GetErrorCode() = 0;
139 virtual HRESULT STDMETHODCALLTYPE GetExtendedErrorCode() = 0;
140 virtual HRESULT STDMETHODCALLTYPE GetDataFormat(GUID *format) = 0;
141 virtual MF_TIMED_TEXT_TRACK_READY_STATE STDMETHODCALLTYPE GetReadyState() = 0;
142 virtual HRESULT STDMETHODCALLTYPE GetCueList(IMFTimedTextCueList **cues) = 0;
144__CRT_UUID_DECL(IMFTimedTextTrack,
145 0x8822c32d, 0x654e, 0x4233, 0xbf, 0x21, 0xd7, 0xf2, 0xe6, 0x7d, 0x30, 0xd4)
147#define __IMFTimedTextTrackList_INTERFACE_DEFINED__
148MIDL_INTERFACE(
"23ff334c-442c-445f-bccc-edc438aa11e2")
149IMFTimedTextTrackList :
public IUnknown
152 virtual DWORD STDMETHODCALLTYPE GetLength() = 0;
153 virtual HRESULT STDMETHODCALLTYPE GetTrack(DWORD index, IMFTimedTextTrack **track) = 0;
154 virtual HRESULT STDMETHODCALLTYPE GetTrackById(DWORD trackId, IMFTimedTextTrack **track) = 0;
156__CRT_UUID_DECL(IMFTimedTextTrackList,
157 0x23ff334c, 0x442c, 0x445f, 0xbc, 0xcc, 0xed, 0xc4, 0x38, 0xaa, 0x11, 0xe2)
159#define __IMFTimedTextCue_INTERFACE_DEFINED__
160MIDL_INTERFACE(
"1e560447-9a2b-43e1-a94c-b0aaabfbfbc9")
161IMFTimedTextCue :
public IUnknown
164 virtual DWORD STDMETHODCALLTYPE GetId() = 0;
165 virtual HRESULT STDMETHODCALLTYPE GetOriginalId(LPWSTR *originalId) = 0;
166 virtual MF_TIMED_TEXT_TRACK_KIND STDMETHODCALLTYPE GetCueKind() = 0;
167 virtual double STDMETHODCALLTYPE GetStartTime() = 0;
168 virtual double STDMETHODCALLTYPE GetDuration() = 0;
169 virtual DWORD STDMETHODCALLTYPE GetTrackId() = 0;
170 virtual HRESULT STDMETHODCALLTYPE GetData(IMFTimedTextBinary **data) = 0;
171 virtual HRESULT STDMETHODCALLTYPE GetRegion(IMFTimedTextRegion **region) = 0;
172 virtual HRESULT STDMETHODCALLTYPE GetStyle(IMFTimedTextStyle **style) = 0;
173 virtual DWORD STDMETHODCALLTYPE GetLineCount() = 0;
174 virtual HRESULT STDMETHODCALLTYPE GetLine(DWORD index, IMFTimedTextFormattedText **line) = 0;
176__CRT_UUID_DECL(IMFTimedTextCue,
177 0x1e560447, 0x9a2b, 0x43e1, 0xa9, 0x4c, 0xb0, 0xaa, 0xab, 0xfb, 0xfb, 0xc9)
179#define __IMFTimedTextFormattedText_INTERFACE_DEFINED__
180MIDL_INTERFACE(
"e13af3c1-4d47-4354-b1f5-e83ae0ecae60")
181IMFTimedTextFormattedText :
public IUnknown
184 virtual HRESULT STDMETHODCALLTYPE GetText(LPWSTR *text) = 0;
185 virtual DWORD STDMETHODCALLTYPE GetSubformattingCount() = 0;
186 virtual HRESULT STDMETHODCALLTYPE GetSubformatting(DWORD index, DWORD *firstChar,
188 IMFTimedTextStyle **style) = 0;
190__CRT_UUID_DECL(IMFTimedTextFormattedText,
191 0xe13af3c1, 0x4d47, 0x4354, 0xb1, 0xf5, 0xe8, 0x3a, 0xe0, 0xec, 0xae, 0x60)
bool canReadQrc() 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
void setSource(const QUrl &fileName) override
QIODevice * sourceDevice() const override
~MFAudioDecoderControl() override
virtual ~QWindowsCamera()
bool isActive() const override
void setCamera(const QCameraDevice &camera) override
void setCaptureSession(QPlatformMediaCaptureSession *) override
bool setCameraFormat(const QCameraFormat &format) override
void setActive(bool active) override
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
ComPtr< IMFMediaSource > mediaSource() const
void load(const QUrl &url, QIODevice *stream)
Combined button and popup list for selecting options.
@ MF_TIMED_TEXT_ERROR_CODE_INTERNAL
@ MF_TIMED_TEXT_ERROR_CODE_FATAL
@ MF_TIMED_TEXT_ERROR_CODE_NOERROR
@ MF_TIMED_TEXT_ERROR_CODE_DATA_FORMAT
@ MF_TIMED_TEXT_ERROR_CODE_NETWORK
@ MF_TIMED_TEXT_CUE_EVENT_INACTIVE
@ MF_TIMED_TEXT_CUE_EVENT_ACTIVE
@ MF_TIMED_TEXT_CUE_EVENT_CLEAR
MF_TIMED_TEXT_TRACK_READY_STATE
@ MF_TIMED_TEXT_TRACK_READY_STATE_LOADING
@ MF_TIMED_TEXT_TRACK_READY_STATE_LOADED
@ MF_TIMED_TEXT_TRACK_READY_STATE_ERROR
@ MF_TIMED_TEXT_TRACK_READY_STATE_NONE
EXTERN_GUID(MF_MEDIA_ENGINE_TIMEDTEXT, 0x805ea411, 0x92e0, 0x4e59, 0x9b, 0x6e, 0x5c, 0x7d, 0x79, 0x15, 0xe6, 0x4f)
@ MF_TIMED_TEXT_TRACK_KIND_SUBTITLES
@ MF_TIMED_TEXT_TRACK_KIND_METADATA
@ MF_TIMED_TEXT_TRACK_KIND_UNKNOWN
@ MF_TIMED_TEXT_TRACK_KIND_CAPTIONS