MythTV master
mythvideooutputvulkan.h
Go to the documentation of this file.
1#ifndef MYTHVULKANVIDEOOUTPUT_H
2#define MYTHVULKANVIDEOOUTPUT_H
3
4// MythTV
5#include "mythvideooutgpu.h"
7
10
11#define VULKAN_RENDERER QString("vulkan")
12
14{
15 Q_OBJECT
16
17 public:
18 static void GetRenderOptions (RenderOptions& Options);
19 static QStringList GetAllowedRenderers (MythCodecID CodecId);
20
22 MythPainterVulkan* Painter, MythDisplay* Display,
23 const MythVideoProfilePtr& VideoProfile, QString& Profile);
24 ~MythVideoOutputVulkan() override = default;
25
26 bool Init(QSize VideoDim, QSize VideoDispDim, float Aspect,
27 QRect DisplayVisibleRect, MythCodecID CodecId) override;
28 void PrepareFrame (MythVideoFrame* Frame, FrameScanType Scan) override;
29 void RenderFrame (MythVideoFrame* Frame, FrameScanType Scan) override;
30 void RenderEnd () override;
31 void EndFrame () override;
32};
33
34#endif
Common code shared between GPU accelerated sub-classes (e.g. OpenGL)
void PrepareFrame(MythVideoFrame *Frame, FrameScanType Scan) override
bool Init(QSize VideoDim, QSize VideoDispDim, float Aspect, QRect DisplayVisibleRect, MythCodecID CodecId) override
void RenderFrame(MythVideoFrame *Frame, FrameScanType Scan) override
~MythVideoOutputVulkan() override=default
MythVideoOutputVulkan(MythMainWindow *MainWindow, MythRenderVulkan *Render, MythPainterVulkan *Painter, MythDisplay *Display, const MythVideoProfilePtr &VideoProfile, QString &Profile)
static void GetRenderOptions(RenderOptions &Options)
static QStringList GetAllowedRenderers(MythCodecID CodecId)
MythRenderVulkan * Render()
MythCodecID
Definition: mythcodecid.h:14
std::shared_ptr< MythVideoProfile > MythVideoProfilePtr
Definition: mythvideogpu.h:18
FrameScanType
Definition: videoouttypes.h:95