Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
mfevrvideowindowcontrol.cpp
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
#
include
"mfevrvideowindowcontrol_p.h"
5
6
#
include
<
qdebug
.
h
>
7
8
QT_BEGIN_NAMESPACE
9
10
MFEvrVideoWindowControl
::
MFEvrVideoWindowControl
(
QVideoSink
*
parent
)
11
: EvrVideoWindowControl(
parent
)
12
, m_currentActivate(NULL)
13
, m_evrSink(NULL)
14
{
15
}
16
17
MFEvrVideoWindowControl::~MFEvrVideoWindowControl()
18
{
19
clear();
20
}
21
22
void
MFEvrVideoWindowControl
::clear()
23
{
24
setEvr(NULL);
25
26
if
(m_evrSink)
27
m_evrSink->Release();
28
if
(m_currentActivate) {
29
m_currentActivate->ShutdownObject();
30
m_currentActivate->Release();
31
}
32
m_evrSink = NULL;
33
m_currentActivate = NULL;
34
}
35
36
IMFActivate
*
MFEvrVideoWindowControl
::
createActivate
()
37
{
38
clear();
39
40
if
(FAILED(MFCreateVideoRendererActivate(0, &m_currentActivate))) {
41
qWarning() <<
"Failed to create evr video renderer activate!"
;
42
return
NULL;
43
}
44
if
(FAILED(m_currentActivate->ActivateObject(IID_IMFMediaSink, (LPVOID*)(&m_evrSink)))) {
45
qWarning() <<
"Failed to activate evr media sink!"
;
46
return
NULL;
47
}
48
if
(!setEvr(m_evrSink))
49
return
NULL;
50
51
return
m_currentActivate;
52
}
53
54
void
MFEvrVideoWindowControl
::
releaseActivate
()
55
{
56
clear();
57
}
58
59
QT_END_NAMESPACE
MFEvrVideoWindowControl
Definition
mfevrvideowindowcontrol_p.h:23
MFEvrVideoWindowControl::createActivate
IMFActivate * createActivate()
Definition
mfevrvideowindowcontrol.cpp:36
MFEvrVideoWindowControl::releaseActivate
void releaseActivate()
Definition
mfevrvideowindowcontrol.cpp:54
QObjectData::parent
QObject * parent
Definition
qobject.h:73
QVideoSink
The QVideoSink class represents a generic sink for video data.
Definition
qvideosink.h:22
QPlatformGraphicsBufferHelper
\inmodule QtGui
qtmultimedia
src
plugins
multimedia
windows
player
mfevrvideowindowcontrol.cpp
Generated on
for Qt by
1.14.0