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 QMEMORYVIDEOBUFFER_P_H
5#define QMEMORYVIDEOBUFFER_P_H
6
7#include <private/qabstractvideobuffer_p.h>
8#include <qvideoframe.h>
9
10//
11// W A R N I N G
12// -------------
13//
14// This file is not part of the Qt API. It exists purely as an
15// implementation detail. This header file may change from version to
16// version without notice, or even be removed.
17//
18// We mean it.
19//
20
21QT_BEGIN_NAMESPACE
22
23class Q_MULTIMEDIA_EXPORT QMemoryVideoBuffer : public QAbstractVideoBuffer
24{
25public:
26 QMemoryVideoBuffer(const QByteArray &data, int bytesPerLine);
27 ~QMemoryVideoBuffer();
28
29 QVideoFrame::MapMode mapMode() const override;
30
31 MapData map(QVideoFrame::MapMode mode) override;
32 void unmap() override;
33
34 int bytesPerLine = 0;
35 QVideoFrame::MapMode m_mapMode = QVideoFrame::NotMapped;
36 QByteArray data;
37};
38
39QT_END_NAMESPACE
40
41
42#endif
43

source code of qtmultimedia/src/multimedia/video/qmemoryvideobuffer_p.h