|
MythTV master
|
#include <libmythtv/mythvideogpu.h>
Public Types | |
| enum | VideoResize : std::uint8_t { None = 0x000 , Deinterlacer = 0x001 , Sampling = 0x002 , Performance = 0x004 , Framebuffer = 0x008 , ToneMap = 0x010 , Bicubic = 0x020 } |
Public Slots | |
| void | UpdateColourSpace (bool PrimariesChanged) |
| void | SetVideoDimensions (QSize VideoDim, QSize VideoDispDim) |
| void | SetVideoRects (QRect DisplayVideoRect, QRect VideoRect) |
| void | SetViewportRect (QRect DisplayVisibleRect) |
| void | UpscalerChanged (const QString &Upscaler) |
Signals | |
| void | OutputChanged (QSize VideoDim, QSize VideoDispDim, float) |
Public Member Functions | |
| ~MythVideoGPU () override | |
| virtual void | StartFrame ()=0 |
| virtual void | PrepareFrame (MythVideoFrame *Frame, FrameScanType Scan=kScan_Progressive)=0 |
| virtual void | RenderFrame (MythVideoFrame *Frame, bool TopFieldFirst, FrameScanType Scan, StereoscopicMode StereoOverride, bool DrawBorder=false)=0 |
| virtual void | EndFrame ()=0 |
| virtual void | ResetFrameFormat () |
| virtual void | ResetTextures ()=0 |
| virtual QString | GetProfile () const |
| bool | IsValid () const |
| void | SetProfile (const QString &Profile) |
| void | SetMasterViewport (QSize Size) |
| QSize | GetVideoDim () const |
Static Public Member Functions | |
| static QString | VideoResizeToString (VideoResizing Resize) |
Protected Member Functions | |
| MythVideoGPU (MythRender *Render, MythVideoColourSpace *ColourSpace, MythVideoBounds *Bounds, const MythVideoProfilePtr &VideoProfile, QString Profile) | |
| virtual void | ColourSpaceUpdate (bool PrimariesChanged)=0 |
Protected Attributes | |
| MythRender * | m_render { nullptr } |
| uint64_t | m_discontinuityCounter { 0 } |
| QString | m_profile |
| VideoFrameType | m_inputType { FMT_NONE } |
| VideoFrameType | m_outputType { FMT_NONE } |
| QSize | m_videoDispDim |
| QSize | m_videoDim |
| QSize | m_masterViewportSize |
| QRect | m_displayVideoRect |
| QRect | m_videoRect |
| MythVideoColourSpace * | m_videoColourSpace { nullptr } |
| QSize | m_inputTextureSize |
| VideoResizing | m_resizing { None } |
| int | m_lastRotation { 0 } |
| MythDeintType | m_deinterlacer { MythDeintType::DEINT_NONE } |
| bool | m_deinterlacer2x { false } |
| bool | m_valid { false } |
| bool | m_viewportControl { true } |
| uint | m_lastStereo { 0 } |
| StereoscopicMode | m_stereoMode { kStereoscopicModeSideBySideDiscard } |
| bool | m_bicubicUpsize { false } |
Definition at line 20 of file mythvideogpu.h.
| enum MythVideoGPU::VideoResize : std::uint8_t |
| Enumerator | |
|---|---|
| None | |
| Deinterlacer | |
| Sampling | |
| Performance | |
| Framebuffer | |
| ToneMap | |
| Bicubic | |
Definition at line 25 of file mythvideogpu.h.
|
override |
Definition at line 51 of file mythvideogpu.cpp.
|
protected |
Definition at line 10 of file mythvideogpu.cpp.
|
protectedpure virtual |
Implemented in MythOpenGLVideo, and MythVideoVulkan.
Referenced by UpdateColourSpace().
|
pure virtual |
Implemented in MythOpenGLVideo, and MythVideoVulkan.
Referenced by MythVideoOutputGPU::EndFrame(), and MythVideoOutputVulkan::EndFrame().
|
virtual |
Reimplemented in MythOpenGLVideo.
Definition at line 84 of file mythvideogpu.cpp.
| QSize MythVideoGPU::GetVideoDim | ( | void | ) | const |
Definition at line 94 of file mythvideogpu.cpp.
| bool MythVideoGPU::IsValid | ( | void | ) | const |
Definition at line 74 of file mythvideogpu.cpp.
Referenced by MythVideoOutputGPU::Init(), MythVideoOutputOpenGL::MythVideoOutputOpenGL(), and MythVideoOutputVulkan::MythVideoOutputVulkan().
|
signal |
|
pure virtual |
Implemented in MythOpenGLVideo, and MythVideoVulkan.
Referenced by MythVideoOutputGPU::PrepareFrame(), and MythVideoOutputGPU::UpdatePauseFrame().
|
pure virtual |
Implemented in MythVideoVulkan, and MythOpenGLVideo.
Referenced by MythVideoOutputGPU::RenderFrame().
|
virtual |
Reimplemented in MythOpenGLVideo, and MythVideoVulkan.
Definition at line 99 of file mythvideogpu.cpp.
Referenced by MythVideoOutputGPU::Init(), MythOpenGLVideo::ResetFrameFormat(), and MythVideoVulkan::ResetFrameFormat().
|
pure virtual |
Implemented in MythOpenGLVideo, and MythVideoVulkan.
Referenced by MythVideoOutputGPU::ClearAfterSeek().
| void MythVideoGPU::SetMasterViewport | ( | QSize | Size | ) |
Definition at line 89 of file mythvideogpu.cpp.
Referenced by SetViewportRect().
| void MythVideoGPU::SetProfile | ( | const QString & | Profile | ) |
Definition at line 79 of file mythvideogpu.cpp.
Referenced by MythVideoOutputGPU::Init().
|
slot |
Definition at line 121 of file mythvideogpu.cpp.
Referenced by MythVideoGPU().
|
slot |
Definition at line 127 of file mythvideogpu.cpp.
Referenced by MythVideoGPU().
|
slot |
Definition at line 133 of file mythvideogpu.cpp.
Referenced by MythVideoGPU(), and MythVideoOutputOpenGL::MythVideoOutputOpenGL().
|
pure virtual |
Implemented in MythOpenGLVideo, and MythVideoVulkan.
Referenced by MythVideoOutputVulkan::RenderFrame().
|
slot |
Definition at line 61 of file mythvideogpu.cpp.
Referenced by MythOpenGLVideo::AddDeinterlacer(), MythVideoGPU(), and MythOpenGLVideo::SetupFrameFormat().
|
slot |
Definition at line 66 of file mythvideogpu.cpp.
Referenced by MythVideoGPU().
|
static |
Definition at line 109 of file mythvideogpu.cpp.
Referenced by MythOpenGLVideo::RenderFrame().
Definition at line 97 of file mythvideogpu.h.
Referenced by MythOpenGLVideo::RenderFrame(), MythOpenGLVideo::SetupBicubic(), and UpscalerChanged().
|
protected |
Definition at line 91 of file mythvideogpu.h.
Referenced by MythOpenGLVideo::AddDeinterlacer(), MythOpenGLVideo::CleanupDeinterlacers(), MythOpenGLVideo::PrepareFrame(), MythOpenGLVideo::RenderFrame(), and ResetFrameFormat().
Definition at line 92 of file mythvideogpu.h.
Referenced by MythOpenGLVideo::AddDeinterlacer(), MythOpenGLVideo::CleanupDeinterlacers(), and MythOpenGLVideo::RenderFrame().
|
protected |
Definition at line 78 of file mythvideogpu.h.
Referenced by MythOpenGLVideo::PrepareFrame(), and MythVideoVulkan::PrepareFrame().
|
protected |
Definition at line 85 of file mythvideogpu.h.
Referenced by MythOpenGLVideo::RenderFrame(), MythOpenGLVideo::SetupBicubic(), and SetVideoRects().
|
protected |
Definition at line 88 of file mythvideogpu.h.
Referenced by MythOpenGLVideo::RenderFrame(), ResetFrameFormat(), MythOpenGLVideo::SetupFrameFormat(), and MythOpenGLVideo::UpdateShaderParameters().
|
protected |
Definition at line 80 of file mythvideogpu.h.
Referenced by MythOpenGLVideo::AddDeinterlacer(), MythOpenGLVideo::BindTextures(), MythOpenGLVideo::CleanupDeinterlacers(), MythOpenGLVideo::ColourSpaceUpdate(), MythOpenGLVideo::CreateVideoShader(), MythOpenGLVideo::GetProfile(), MythOpenGLVideo::PrepareFrame(), MythVideoVulkan::PrepareFrame(), MythOpenGLVideo::RenderFrame(), ResetFrameFormat(), MythOpenGLVideo::SetupFrameFormat(), and MythVideoVulkan::SetupFrameFormat().
|
protected |
Definition at line 90 of file mythvideogpu.h.
Referenced by MythOpenGLVideo::RenderFrame().
|
protected |
Definition at line 95 of file mythvideogpu.h.
Referenced by MythOpenGLVideo::RenderFrame().
|
protected |
Definition at line 84 of file mythvideogpu.h.
Referenced by MythOpenGLVideo::RenderFrame(), and SetMasterViewport().
|
protected |
Definition at line 81 of file mythvideogpu.h.
Referenced by MythOpenGLVideo::AddDeinterlacer(), MythOpenGLVideo::CleanupDeinterlacers(), MythOpenGLVideo::ColourSpaceUpdate(), MythOpenGLVideo::CreateVideoShader(), MythOpenGLVideo::GetProfile(), MythOpenGLVideo::RenderFrame(), ResetFrameFormat(), MythOpenGLVideo::SetupFrameFormat(), and MythVideoVulkan::SetupFrameFormat().
|
protected |
Definition at line 79 of file mythvideogpu.h.
Referenced by MythOpenGLVideo::CleanupDeinterlacers(), GetProfile(), MythOpenGLVideo::PrepareFrame(), and SetProfile().
|
protected |
Definition at line 77 of file mythvideogpu.h.
Referenced by MythVideoGPU(), and ~MythVideoGPU().
|
protected |
Definition at line 89 of file mythvideogpu.h.
Referenced by MythOpenGLVideo::AddDeinterlacer(), MythOpenGLVideo::RenderFrame(), and ResetFrameFormat().
|
protected |
Definition at line 96 of file mythvideogpu.h.
Referenced by MythVideoGPU(), and MythOpenGLVideo::RenderFrame().
Definition at line 93 of file mythvideogpu.h.
Referenced by MythVideoVulkan::EndFrame(), IsValid(), MythOpenGLVideo::MythOpenGLVideo(), MythVideoVulkan::MythVideoVulkan(), MythVideoVulkan::PrepareFrame(), MythVideoVulkan::RenderFrame(), and MythVideoVulkan::StartFrame().
|
protected |
Definition at line 87 of file mythvideogpu.h.
Referenced by MythOpenGLVideo::ColourSpaceUpdate(), MythOpenGLVideo::CreateVideoShader(), MythOpenGLVideo::MythOpenGLVideo(), MythVideoGPU(), MythVideoVulkan::MythVideoVulkan(), MythOpenGLVideo::PrepareFrame(), MythVideoVulkan::PrepareFrame(), MythOpenGLVideo::RenderFrame(), and ~MythVideoGPU().
|
protected |
Definition at line 83 of file mythvideogpu.h.
Referenced by MythOpenGLVideo::AddDeinterlacer(), MythOpenGLVideo::CleanupDeinterlacers(), MythOpenGLVideo::ColourSpaceUpdate(), GetVideoDim(), MythOpenGLVideo::PrepareFrame(), MythVideoVulkan::PrepareFrame(), MythOpenGLVideo::SetupFrameFormat(), MythVideoVulkan::SetupFrameFormat(), SetVideoDimensions(), and MythOpenGLVideo::UpdateShaderParameters().
|
protected |
Definition at line 82 of file mythvideogpu.h.
Referenced by MythOpenGLVideo::RenderFrame(), MythOpenGLVideo::SetupBicubic(), SetVideoDimensions(), and MythOpenGLVideo::UpdateShaderParameters().
|
protected |
Definition at line 86 of file mythvideogpu.h.
Referenced by MythOpenGLVideo::RenderFrame(), and SetVideoRects().
Definition at line 94 of file mythvideogpu.h.