Music Hub ..
A session-wide music playback service
 
Loading...
Searching...
No Matches
egl_video_sink.h
Go to the documentation of this file.
1/*
2 * Copyright © 2021-2022 UBports Foundation.
3 *
4 * This program is free software: you can redistribute it and/or modify it
5 * under the terms of the GNU Lesser General Public License version 3,
6 * as published by the Free Software Foundation.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU Lesser General Public License for more details.
12 *
13 * You should have received a copy of the GNU Lesser General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#ifndef LOMIRI_MEDIAHUB_EGL_VIDEO_SINK_H
18#define LOMIRI_MEDIAHUB_EGL_VIDEO_SINK_H
19
20#include "player.h"
21#include "video_sink_p.h"
22
23namespace lomiri {
24namespace MediaHub {
25
26class EglVideoSinkPrivate;
28{
29 Q_OBJECT
30
31public:
33 virtual ~EglVideoSink();
34
35 bool swapBuffers() override;
36
37private:
38 EglVideoSink(uint32_t gl_texture, PlayerKey key, QObject *parent);
39 Q_DECLARE_PRIVATE(EglVideoSink);
40};
41
42} // namespace MediaHub
43} // namespace lomiri
44
45#endif // LOMIRI_MEDIAHUB_EGL_VIDEO_SINK_H
static VideoSinkFactory createFactory(PlayerKey playerKey)
bool swapBuffers() override
Releases the current buffer, and consumes the next buffer in the queue, making it available for consu...
A video sink abstracts a queue of buffers, that receives a stream of decoded video buffers from an ar...
Definition video_sink.h:35
std::function< VideoSink *(uint32_t textureId, QObject *parent)> VideoSinkFactory