1// Copyright (C) 2021 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#ifndef QFFMPEGVIDEORENDERER_P_H
4#define QFFMPEGVIDEORENDERER_P_H
5
6//
7// W A R N I N G
8// -------------
9//
10// This file is not part of the Qt API. It exists purely as an
11// implementation detail. This header file may change from version to
12// version without notice, or even be removed.
13//
14// We mean it.
15//
16
17#include "playbackengine/qffmpegrenderer_p.h"
18
19#include <QtCore/qpointer.h>
20
21QT_BEGIN_NAMESPACE
22
23class QVideoSink;
24
25namespace QFFmpeg {
26
27class VideoRenderer : public Renderer
28{
29 Q_OBJECT
30public:
31 VideoRenderer(const TimeController &tc, QVideoSink *sink, const VideoTransformation &transform);
32
33 void setOutput(QVideoSink *sink, bool cleanPrevSink = false);
34
35protected:
36 RenderingResult renderInternal(Frame frame) override;
37
38private:
39 QPointer<QVideoSink> m_sink;
40 VideoTransformation m_transform;
41};
42
43} // namespace QFFmpeg
44
45QT_END_NAMESPACE
46
47#endif // QFFMPEGVIDEORENDERER_P_H
48

source code of qtmultimedia/src/plugins/multimedia/ffmpeg/playbackengine/qffmpegvideorenderer_p.h