MythTV  master
Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
MythVideoOutput Class Referenceabstract

#include <mythvideoout.h>

Inheritance diagram for MythVideoOutput:
Inheritance graph
[legend]
Collaboration diagram for MythVideoOutput:
Collaboration graph
[legend]

Public Member Functions

 MythVideoOutput (bool CreateDisplay=false)
 
 ~MythVideoOutput () override
 
virtual bool Init (const QSize &VideoDim, const QSize &VideoDispDim, float VideoAspect, const QRect &WindowRect, MythCodecID CodecID)
 
virtual void SetVideoFrameRate (float playback_fps)
 
virtual void SetDeinterlacing (bool Enable, bool DoubleRate, MythDeintType Force=DEINT_NONE)
 
virtual void PrepareFrame (VideoFrame *Frame, const PIPMap &PipPlayers, FrameScanType Scan=kScan_Ignore)=0
 
virtual void RenderFrame (VideoFrame *Frame, FrameScanType, OSD *Osd)=0
 
virtual void EndFrame ()=0
 
void SetReferenceFrames (int ReferenceFrames)
 
VideoDisplayProfileGetProfile ()
 
virtual void WindowResized (const QSize &)
 
virtual bool InputChanged (const QSize &VideoDim, const QSize &VideoDispDim, float VideoAspect, MythCodecID CodecID, bool &AspectChanged, MythMultiLocker *Locks, int ReferenceFrames, bool ForceChange)
 Tells video output to discard decoded frames and wait for new ones. More...
 
virtual void ResizeForVideo (QSize=QSize())
 
virtual void GetOSDBounds (QRect &Total, QRect &Visible, float &VisibleAspect, float &FontScaling, float ThemeAspect) const
 
PictureAttributeSupported GetSupportedPictureAttributes ()
 
int ChangePictureAttribute (PictureAttribute AttributeType, bool Direction)
 
virtual int SetPictureAttribute (PictureAttribute Attribute, int NewValue)
 
int GetPictureAttribute (PictureAttribute AttributeType)
 
virtual void InitPictureAttributes ()
 
bool HasSoftwareFrames () const
 
virtual void SetFramesPlayed (long long FramesPlayed)
 
virtual long long GetFramesPlayed ()
 
bool IsErrored () const
 
VideoErrorState GetError () const
 
void SetPrebuffering (bool Normal)
 Sets whether to use a normal number of buffers or fewer buffers. More...
 
virtual void ClearAfterSeek ()
 Tells video output to toss decoded buffers due to a seek. More...
 
virtual int ValidVideoFrames () const
 Returns number of frames that are fully decoded. More...
 
int FreeVideoFrames ()
 Returns number of frames available for decoding onto. More...
 
bool EnoughFreeFrames ()
 Returns true iff enough frames are available to decode onto. More...
 
bool EnoughDecodedFrames ()
 Returns true iff there are plenty of decoded frames ready for display. More...
 
const VideoFrameTypeVecDirectRenderFormats () const
 
virtual VideoFrameGetNextFreeFrame ()
 Blocks until it is possible to return a frame for decoding onto. More...
 
virtual void ReleaseFrame (VideoFrame *Frame)
 Releases a frame from the ready for decoding queue onto the queue of frames ready for display. More...
 
virtual void DeLimboFrame (VideoFrame *Frame)
 Releases a frame for reuse if it is in limbo. More...
 
virtual void StartDisplayingFrame ()
 Tell GetLastShownFrame() to return the next frame from the head of the queue of frames to display. More...
 
virtual void DoneDisplayingFrame (VideoFrame *Frame)
 Releases frame returned from GetLastShownFrame() onto the queue of frames ready for decoding onto. More...
 
virtual void DiscardFrame (VideoFrame *frame)
 Releases frame from any queue onto the queue of frames ready for decoding onto. More...
 
virtual void DiscardFrames (bool KeyFrame, bool Flushed)
 Releases all frames not being actively displayed from any queue onto the queue of frames ready for decoding onto. More...
 
virtual void CheckFrameStates ()
 
virtual VideoFrameGetLastDecodedFrame ()
 
virtual VideoFrameGetLastShownFrame ()
 Returns frame from the head of the ready to be displayed queue, if StartDisplayingFrame has been called. More...
 
QString GetFrameStatus () const
 Returns string with status of each frame for debugging. More...
 
virtual void UpdatePauseFrame (int64_t &DisplayTimecode, FrameScanType Scan=kScan_Progressive)=0
 
QRect GetImageRect (const QRect &Rect, QRect *DisplayRect=nullptr)
 translates caption/dvd button rectangle into 'screen' space More...
 
QRect GetSafeRect ()
 Returns a QRect describing an area of the screen on which it is 'safe' to render the On Screen Display. More...
 
virtual MythPainterGetOSDPainter ()
 
virtual void RemovePIP (MythPlayer *)
 
virtual bool IsPIPSupported () const
 
virtual bool IsPBPSupported () const
 
virtual bool EnableVisualisation (AudioPlayer *, bool, const QString &=QString(""))
 
virtual bool CanVisualise (AudioPlayer *)
 
virtual bool SetupVisualisation (AudioPlayer *, const QString &)
 
virtual VideoVisualGetVisualisation ()
 
virtual QString GetVisualiserName ()
 
virtual QStringList GetVisualiserList ()
 
virtual void DestroyVisualisation ()
 
virtual bool StereoscopicModesAllowed () const
 
- Public Member Functions inherited from MythVideoBounds
 MythVideoBounds (bool CreateDisplay)
 
 ~MythVideoBounds () override
 
bool InitBounds (const QSize &VideoDim, const QSize &VideoDispDim, float Aspect, const QRect &WindowRect)
 
bool IsEmbedding (void) const
 
bool IsEmbeddingAndHidden () const
 
QSize GetVideoDim (void) const
 
QSize GetVideoDispDim (void) const
 
PIPState GetPIPState (void) const
 
float GetOverridenVideoAspect (void) const
 
QRect GetDisplayVisibleRect (void) const
 
QRect GetWindowRect (void) const
 
QRect GetRawWindowRect (void) const
 
QRect GetVideoRect (void) const
 
QRect GetDisplayVideoRect (void) const
 
QRect GetEmbeddingRect (void) const
 
bool UsingGuiSize (void) const
 
QString GetZoomString (void) const
 
AspectOverrideMode GetAspectOverride (void) const
 
AdjustFillMode GetAdjustFill (void) const
 
float GetVideoAspect (void) const
 
float GetDisplayAspect (void) const
 
QRect GetPIPRect (PIPLocation Location, MythPlayer *PiPPlayer=nullptr, bool DoPixelAdjustment=true) const
 
bool VideoIsFullScreen (void) const
 Check whether the video display rect covers the entire window/framebuffer. More...
 
QRegion GetBoundingRegion (void) const
 Return the region of DisplayVisibleRect that lies outside of DisplayVideoRect. More...
 
StereoscopicMode GetStereoscopicMode () const
 

Static Public Member Functions

static void GetRenderOptions (RenderOptions &Options)
 
static MythVideoOutputCreate (const QString &Decoder, MythCodecID CodecID, PIPState PiPState, const QSize &VideoDim, const QSize &VideoDispDim, float VideoAspect, QWidget *ParentWidget, const QRect &EmbedRect, float FrameRate, uint PlayerFlags, const QString &Codec, int ReferenceFrames)
 Depending on compile-time configure settings and run-time renderer settings, create a relevant VideoOutput subclass. More...
 
static MythDeintType ParseDeinterlacer (const QString &Deinterlacer)
 

Static Public Attributes

static VideoFrameTypeVec s_defaultFrameTypes = { FMT_YV12 }
 

Protected Member Functions

virtual void ShowPIPs (const PIPMap &)
 
virtual void ShowPIP (MythPlayer *, PIPLocation)
 
QRect GetVisibleOSDBounds (float &VisibleAspect, float &FontScaling, float ThemeAspect) const
 Returns visible portions of total OSD bounds. More...
 
QRect GetTotalOSDBounds () const
 

Static Protected Member Functions

static void CopyFrame (VideoFrame *To, const VideoFrame *From)
 

Protected Attributes

MythVideoColourSpace m_videoColourSpace
 
LetterBoxColour m_dbLetterboxColour { kLetterBoxColour_Black }
 
MythCodecID m_videoCodecID { kCodec_NONE }
 
int m_maxReferenceFrames { 16 }
 
VideoDisplayProfilem_dbDisplayProfile { nullptr }
 
VideoBuffers m_videoBuffers
 
VideoErrorState m_errorState { kError_None }
 
long long m_framesPlayed { 0 }
 
MythAVCopy m_copyFrame
 
MythDeinterlacer m_deinterlacer
 
VideoFrameTypeVecm_renderFrameTypes { &s_defaultFrameTypes }
 
bool m_deinterlacing { false }
 
bool m_deinterlacing2X { false }
 
MythDeintType m_forcedDeinterlacer { DEINT_NONE }
 
- Protected Attributes inherited from MythVideoBounds
MythDisplaym_display {nullptr}
 

Additional Inherited Members

- Public Slots inherited from MythVideoBounds
void ScreenChanged (QScreen *screen)
 
void PhysicalDPIChanged (qreal)
 
void SourceChanged (const QSize &VideoDim, const QSize &VideoDispDim, float Aspect)
 Update for new source video dimensions and aspect ratio. More...
 
void VideoAspectRatioChanged (float Aspect)
 Calls SetVideoAspectRatio(float aspect), then calls MoveResize() to apply changes. More...
 
virtual void EmbedInWidget (const QRect &Rect)
 Tells video output to embed video in an existing window. More...
 
virtual void StopEmbedding (void)
 Tells video output to stop embedding video in an existing window. More...
 
void ToggleAdjustFill (AdjustFillMode AdjustFillMode=kAdjustFill_Toggle)
 Sets up letterboxing for various standard video frame and monitor dimensions, then calls MoveResize() to apply them. More...
 
void ToggleAspectOverride (AspectOverrideMode AspectMode=kAspect_Toggle)
 Enforce different aspect ratio than detected, then calls VideoAspectRatioChanged(float) to apply them. More...
 
void ResizeDisplayWindow (const QRect &Rect, bool SaveVisibleRect)
 Resize Display Window. More...
 
void MoveResize (void)
 performs all the calculations for video framing and any resizing. More...
 
void Zoom (ZoomDirection Direction)
 Sets up zooming into to different parts of the video. More...
 
void ToggleMoveBottomLine (void)
 
void SaveBottomLine (void)
 
void SetVideoScalingAllowed (bool Change)
 Disable or enable underscan/overscan. More...
 
void SetDisplayAspect (float DisplayAspect)
 
void SetPIPState (PIPState Setting)
 
void SetWindowSize (QSize Size)
 
void SetITVResize (QRect Rect)
 
void SetRotation (int Rotation)
 Set the rotation in degrees. More...
 
void SetStereoscopicMode (StereoscopicMode Mode)
 
- Signals inherited from MythVideoBounds
void VideoSizeChanged (const QSize &VideoDim, const QSize &VideoDispDim)
 
void VideoRectsChanged (const QRect &DisplayVideoRect, const QRect &VideoRect)
 
void VisibleRectChanged (const QRect &DisplayVisibleRect)
 
void WindowRectChanged (const QRect &WindowRect)
 

Detailed Description

Definition at line 36 of file mythvideoout.h.

Constructor & Destructor Documentation

◆ MythVideoOutput()

MythVideoOutput::MythVideoOutput ( bool  CreateDisplay = false)

Definition at line 305 of file mythvideoout.cpp.

◆ ~MythVideoOutput()

MythVideoOutput::~MythVideoOutput ( )
override

Definition at line 315 of file mythvideoout.cpp.

Member Function Documentation

◆ GetRenderOptions()

void MythVideoOutput::GetRenderOptions ( RenderOptions Options)
static

Definition at line 37 of file mythvideoout.cpp.

Referenced by VideoDisplayProfile::InitStatics().

◆ Create()

MythVideoOutput * MythVideoOutput::Create ( const QString &  Decoder,
MythCodecID  CodecID,
PIPState  PiPState,
const QSize &  VideoDim,
const QSize &  VideoDispDim,
float  VideoAspect,
QWidget *  ParentWidget,
const QRect &  EmbedRect,
float  FrameRate,
uint  PlayerFlags,
const QString &  Codec,
int  ReferenceFrames 
)
static

Depending on compile-time configure settings and run-time renderer settings, create a relevant VideoOutput subclass.

Returns
instance of VideoOutput if successful, nullptr otherwise.

Definition at line 59 of file mythvideoout.cpp.

Referenced by MythPlayer::InitVideo().

◆ Init()

bool MythVideoOutput::Init ( const QSize &  VideoDim,
const QSize &  VideoDispDim,
float  VideoAspect,
const QRect &  WindowRect,
MythCodecID  CodecID 
)
virtual

◆ SetVideoFrameRate()

void MythVideoOutput::SetVideoFrameRate ( float  playback_fps)
virtual

Reimplemented in MythVideoOutputGPU.

Definition at line 350 of file mythvideoout.cpp.

Referenced by MythPlayer::ChangeSpeed(), Create(), and MythPlayer::ReinitVideo().

◆ SetDeinterlacing()

void MythVideoOutput::SetDeinterlacing ( bool  Enable,
bool  DoubleRate,
MythDeintType  Force = DEINT_NONE 
)
virtual

◆ PrepareFrame()

virtual void MythVideoOutput::PrepareFrame ( VideoFrame Frame,
const PIPMap PipPlayers,
FrameScanType  Scan = kScan_Ignore 
)
pure virtual

◆ RenderFrame()

virtual void MythVideoOutput::RenderFrame ( VideoFrame Frame,
FrameScanType  ,
OSD Osd 
)
pure virtual

◆ EndFrame()

virtual void MythVideoOutput::EndFrame ( )
pure virtual

◆ SetReferenceFrames()

void MythVideoOutput::SetReferenceFrames ( int  ReferenceFrames)

Definition at line 356 of file mythvideoout.cpp.

Referenced by Create().

◆ GetProfile()

VideoDisplayProfile* MythVideoOutput::GetProfile ( )
inline

Definition at line 62 of file mythvideoout.h.

◆ WindowResized()

virtual void MythVideoOutput::WindowResized ( const QSize &  )
inlinevirtual

Reimplemented in MythVideoOutputGPU, and VideoOutputD3D.

Definition at line 63 of file mythvideoout.h.

Referenced by MythPlayer::WindowResized().

◆ InputChanged()

bool MythVideoOutput::InputChanged ( const QSize &  VideoDim,
const QSize &  VideoDispDim,
float  VideoAspect,
MythCodecID  CodecID,
bool AspectChanged,
MythMultiLocker Locks,
int  ReferenceFrames,
bool  ForceChange 
)
virtual

Tells video output to discard decoded frames and wait for new ones.

Bug:
We set the new width height and aspect ratio here, but we should do this based on the new video frames in Show().

Reimplemented in MythVideoOutputNull, and MythVideoOutputGPU.

Definition at line 428 of file mythvideoout.cpp.

Referenced by MythVideoOutputNull::InputChanged(), and MythPlayer::ReinitVideo().

◆ ResizeForVideo()

virtual void MythVideoOutput::ResizeForVideo ( QSize  = QSize())
inlinevirtual

Reimplemented in MythVideoOutputGPU.

Definition at line 68 of file mythvideoout.h.

Referenced by TV::customEvent().

◆ GetOSDBounds()

void MythVideoOutput::GetOSDBounds ( QRect &  Total,
QRect &  Visible,
float &  VisibleAspect,
float &  FontScaling,
float  ThemeAspect 
) const
virtual

◆ GetSupportedPictureAttributes()

PictureAttributeSupported MythVideoOutput::GetSupportedPictureAttributes ( )

◆ ChangePictureAttribute()

int MythVideoOutput::ChangePictureAttribute ( PictureAttribute  AttributeType,
bool  Direction 
)

Definition at line 496 of file mythvideoout.cpp.

Referenced by TV::DoChangePictureAttribute().

◆ SetPictureAttribute()

int MythVideoOutput::SetPictureAttribute ( PictureAttribute  Attribute,
int  NewValue 
)
virtual

Definition at line 508 of file mythvideoout.cpp.

Referenced by TV::DoChangePictureAttribute(), and MythPlayer::ToggleNightMode().

◆ GetPictureAttribute()

int MythVideoOutput::GetPictureAttribute ( PictureAttribute  AttributeType)

◆ InitPictureAttributes()

virtual void MythVideoOutput::InitPictureAttributes ( )
inlinevirtual

Reimplemented in MythVideoOutputGPU.

Definition at line 76 of file mythvideoout.h.

◆ HasSoftwareFrames()

bool MythVideoOutput::HasSoftwareFrames ( ) const
inline

Definition at line 77 of file mythvideoout.h.

Referenced by TV::PlaybackMenuInit().

◆ SetFramesPlayed()

void MythVideoOutput::SetFramesPlayed ( long long  FramesPlayed)
virtual

Definition at line 518 of file mythvideoout.cpp.

Referenced by MythPlayer::AVSync(), and MythPlayer::SetFramesPlayed().

◆ GetFramesPlayed()

long long MythVideoOutput::GetFramesPlayed ( void  )
virtual

Definition at line 523 of file mythvideoout.cpp.

Referenced by MythPlayer::Pause(), and MythPlayer::VideoLoop().

◆ IsErrored()

bool MythVideoOutput::IsErrored ( void  ) const

◆ GetError()

VideoErrorState MythVideoOutput::GetError ( void  ) const

Definition at line 533 of file mythvideoout.cpp.

Referenced by MythPlayer::SetErrored().

◆ SetPrebuffering()

void MythVideoOutput::SetPrebuffering ( bool  Normal)

Sets whether to use a normal number of buffers or fewer buffers.

Definition at line 539 of file mythvideoout.cpp.

Referenced by MythPlayer::ChangeSpeed().

◆ ClearAfterSeek()

void MythVideoOutput::ClearAfterSeek ( )
virtual

Tells video output to toss decoded buffers due to a seek.

Reimplemented in MythVideoOutputGPU.

Definition at line 545 of file mythvideoout.cpp.

Referenced by MythVideoOutputGPU::ClearAfterSeek(), and MythPlayer::ClearAfterSeek().

◆ ValidVideoFrames()

int MythVideoOutput::ValidVideoFrames ( ) const
virtual

◆ FreeVideoFrames()

int MythVideoOutput::FreeVideoFrames ( )

Returns number of frames available for decoding onto.

Definition at line 557 of file mythvideoout.cpp.

Referenced by MythPlayer::GetFreeVideoFrames(), and MythPlayer::GetPlaybackData().

◆ EnoughFreeFrames()

bool MythVideoOutput::EnoughFreeFrames ( )

Returns true iff enough frames are available to decode onto.

Definition at line 563 of file mythvideoout.cpp.

Referenced by MythPlayer::DecoderGetFrame(), MythPlayer::PrebufferEnoughFrames(), and MythDVDPlayer::VideoLoop().

◆ EnoughDecodedFrames()

bool MythVideoOutput::EnoughDecodedFrames ( )

Returns true iff there are plenty of decoded frames ready for display.

Definition at line 570 of file mythvideoout.cpp.

Referenced by MythPlayer::PrebufferEnoughFrames().

◆ DirectRenderFormats()

const VideoFrameTypeVec * MythVideoOutput::DirectRenderFormats ( void  ) const

Definition at line 680 of file mythvideoout.cpp.

Referenced by MythPlayer::DirectRenderFormats().

◆ GetNextFreeFrame()

VideoFrame * MythVideoOutput::GetNextFreeFrame ( )
virtual

Blocks until it is possible to return a frame for decoding onto.

Definition at line 688 of file mythvideoout.cpp.

Referenced by MythPlayer::GetNextVideoFrame().

◆ ReleaseFrame()

void MythVideoOutput::ReleaseFrame ( VideoFrame Frame)
virtual

Releases a frame from the ready for decoding queue onto the queue of frames ready for display.

Definition at line 695 of file mythvideoout.cpp.

Referenced by MythPlayer::ReleaseNextVideoFrame().

◆ DeLimboFrame()

void MythVideoOutput::DeLimboFrame ( VideoFrame Frame)
virtual

Releases a frame for reuse if it is in limbo.

Definition at line 701 of file mythvideoout.cpp.

Referenced by MythPlayer::DeLimboFrame().

◆ StartDisplayingFrame()

void MythVideoOutput::StartDisplayingFrame ( )
virtual

Tell GetLastShownFrame() to return the next frame from the head of the queue of frames to display.

Definition at line 708 of file mythvideoout.cpp.

Referenced by MythPlayer::DisplayNormalFrame(), MythPlayer::GetRawVideoFrame(), MythCCExtractorPlayer::OnGotNewFrame(), MythPlayer::PipSync(), and VideoPerformanceTest::Test().

◆ DoneDisplayingFrame()

void MythVideoOutput::DoneDisplayingFrame ( VideoFrame Frame)
virtual

Releases frame returned from GetLastShownFrame() onto the queue of frames ready for decoding onto.

Reimplemented in MythVideoOutputGPU.

Definition at line 715 of file mythvideoout.cpp.

Referenced by MythPlayer::DisplayNormalFrame(), MythCCExtractorPlayer::OnGotNewFrame(), MythPlayer::PipSync(), VideoPerformanceTest::Test(), and Transcode::TranscodeFile().

◆ DiscardFrame()

void MythVideoOutput::DiscardFrame ( VideoFrame frame)
virtual

Releases frame from any queue onto the queue of frames ready for decoding onto.

Definition at line 722 of file mythvideoout.cpp.

Referenced by MythPlayer::DiscardVideoFrame().

◆ DiscardFrames()

void MythVideoOutput::DiscardFrames ( bool  KeyFrame,
bool  Flushed 
)
virtual

Releases all frames not being actively displayed from any queue onto the queue of frames ready for decoding onto.

Reimplemented in MythVideoOutputGPU.

Definition at line 729 of file mythvideoout.cpp.

Referenced by MythPlayer::ClearBeforeSeek(), MythVideoOutputGPU::DiscardFrames(), MythPlayer::DiscardVideoFrames(), and InputChanged().

◆ CheckFrameStates()

virtual void MythVideoOutput::CheckFrameStates ( )
inlinevirtual

Definition at line 97 of file mythvideoout.h.

◆ GetLastDecodedFrame()

VideoFrame * MythVideoOutput::GetLastDecodedFrame ( )
virtual
Bug:
not implemented correctly. vpos is not updated.

Definition at line 576 of file mythvideoout.cpp.

Referenced by MythPlayer::GetScreenGrabAtFrame(), VideoDecodeBuffer::run(), MythPlayer::SeekForScreenGrab(), and MythPlayer::TranscodeGetNextFrame().

◆ GetLastShownFrame()

VideoFrame * MythVideoOutput::GetLastShownFrame ( )
virtual

◆ GetFrameStatus()

QString MythVideoOutput::GetFrameStatus ( ) const

Returns string with status of each frame for debugging.

Definition at line 582 of file mythvideoout.cpp.

Referenced by MythPlayer::PrebufferEnoughFrames().

◆ UpdatePauseFrame()

virtual void MythVideoOutput::UpdatePauseFrame ( int64_t &  DisplayTimecode,
FrameScanType  Scan = kScan_Progressive 
)
pure virtual

◆ GetImageRect()

QRect MythVideoOutput::GetImageRect ( const QRect &  Rect,
QRect *  DisplayRect = nullptr 
)

translates caption/dvd button rectangle into 'screen' space

Definition at line 615 of file mythvideoout.cpp.

Referenced by SubtitleScreen::AddScaledImage(), MythBDOverlayScreen::DisplayBDOverlay(), and SubtitleScreen::DisplayScaledAVSubtitles().

◆ GetSafeRect()

QRect MythVideoOutput::GetSafeRect ( )

Returns a QRect describing an area of the screen on which it is 'safe' to render the On Screen Display.

For 'fullscreen' OSDs this will still translate to a subset of the video frame area to ensure consistency of presentation for subtitling etc.

Definition at line 669 of file mythvideoout.cpp.

Referenced by SubtitleScreen::DisplayCC608Subtitles(), SubtitleScreen::DisplayCC708Subtitles(), SubtitleScreen::DisplayRawTextSubtitles(), SubtitleScreen::DisplayTextSubtitles(), and TeletextScreen::Pulse().

◆ ParseDeinterlacer()

MythDeintType MythVideoOutput::ParseDeinterlacer ( const QString &  Deinterlacer)
static

Definition at line 361 of file mythvideoout.cpp.

Referenced by MythNVDECContext::SetDeinterlacing(), and SetDeinterlacing().

◆ GetOSDPainter()

virtual MythPainter* MythVideoOutput::GetOSDPainter ( void  )
inlinevirtual

◆ RemovePIP()

virtual void MythVideoOutput::RemovePIP ( MythPlayer )
inlinevirtual

Reimplemented in VideoOutputD3D, and MythVideoOutputGPU.

Definition at line 108 of file mythvideoout.h.

Referenced by MythPlayer::RemovePIPPlayer().

◆ IsPIPSupported()

virtual bool MythVideoOutput::IsPIPSupported ( void  ) const
inlinevirtual

Reimplemented in VideoOutputD3D, MythVideoOutputVulkan, and MythVideoOutputGPU.

Definition at line 109 of file mythvideoout.h.

Referenced by PlayerContext::IsPIPSupported().

◆ IsPBPSupported()

virtual bool MythVideoOutput::IsPBPSupported ( ) const
inlinevirtual

Definition at line 110 of file mythvideoout.h.

Referenced by PlayerContext::IsPBPSupported().

◆ EnableVisualisation()

virtual bool MythVideoOutput::EnableVisualisation ( AudioPlayer ,
bool  ,
const QString &  = QString("") 
)
inlinevirtual

Reimplemented in MythVideoOutputGPU.

Definition at line 111 of file mythvideoout.h.

Referenced by MythPlayer::EnableVisualisation().

◆ CanVisualise()

virtual bool MythVideoOutput::CanVisualise ( AudioPlayer )
inlinevirtual

Reimplemented in MythVideoOutputGPU.

Definition at line 112 of file mythvideoout.h.

Referenced by VideoOutputD3D::CanVisualise(), and MythPlayer::CanVisualise().

◆ SetupVisualisation()

virtual bool MythVideoOutput::SetupVisualisation ( AudioPlayer ,
const QString &   
)
inlinevirtual

Reimplemented in MythVideoOutputGPU.

Definition at line 113 of file mythvideoout.h.

Referenced by VideoOutputD3D::SetupVisualisation().

◆ GetVisualisation()

virtual VideoVisual* MythVideoOutput::GetVisualisation ( )
inlinevirtual

Reimplemented in MythVideoOutputGPU.

Definition at line 114 of file mythvideoout.h.

Referenced by MythPlayer::IsVisualising().

◆ GetVisualiserName()

virtual QString MythVideoOutput::GetVisualiserName ( void  )
inlinevirtual

Reimplemented in MythVideoOutputGPU.

Definition at line 115 of file mythvideoout.h.

Referenced by MythVideoOutputGPU::GetVisualiserName(), and MythPlayer::GetVisualiserName().

◆ GetVisualiserList()

virtual QStringList MythVideoOutput::GetVisualiserList ( void  )
inlinevirtual

Reimplemented in MythVideoOutputGPU.

Definition at line 116 of file mythvideoout.h.

Referenced by MythVideoOutputGPU::GetVisualiserList(), and MythPlayer::GetVisualiserList().

◆ DestroyVisualisation()

virtual void MythVideoOutput::DestroyVisualisation ( )
inlinevirtual

Reimplemented in MythVideoOutputGPU.

Definition at line 117 of file mythvideoout.h.

◆ StereoscopicModesAllowed()

virtual bool MythVideoOutput::StereoscopicModesAllowed ( ) const
inlinevirtual

Reimplemented in MythVideoOutputVulkan, and MythVideoOutputGPU.

Definition at line 118 of file mythvideoout.h.

Referenced by TV::Handle3D(), and TV::PlaybackMenuInit().

◆ ShowPIPs()

virtual void MythVideoOutput::ShowPIPs ( const PIPMap )
inlineprotectedvirtual

Reimplemented in MythVideoOutputGPU.

Definition at line 121 of file mythvideoout.h.

Referenced by VideoOutputD3D::PrepareFrame().

◆ ShowPIP()

virtual void MythVideoOutput::ShowPIP ( MythPlayer ,
PIPLocation   
)
inlineprotectedvirtual

Reimplemented in MythVideoOutputGPU, and VideoOutputD3D.

Definition at line 122 of file mythvideoout.h.

◆ GetVisibleOSDBounds()

QRect MythVideoOutput::GetVisibleOSDBounds ( float &  VisibleAspect,
float &  FontScaling,
float  ThemeAspect 
) const
protected

Returns visible portions of total OSD bounds.

Parameters
VisibleAspectphysical aspect ratio of bounds returned
FontScalingscaling to apply to fonts
ThemeAspectaspect ration of the theme

Definition at line 464 of file mythvideoout.cpp.

Referenced by GetOSDBounds(), and GetSafeRect().

◆ GetTotalOSDBounds()

QRect MythVideoOutput::GetTotalOSDBounds ( ) const
protected

◆ CopyFrame()

void MythVideoOutput::CopyFrame ( VideoFrame To,
const VideoFrame From 
)
staticprotected

Member Data Documentation

◆ s_defaultFrameTypes

VideoFrameTypeVec MythVideoOutput::s_defaultFrameTypes = { FMT_YV12 }
static

Definition at line 48 of file mythvideoout.h.

Referenced by MythPlayer::DirectRenderFormats().

◆ m_videoColourSpace

MythVideoColourSpace MythVideoOutput::m_videoColourSpace
protected

◆ m_dbLetterboxColour

LetterBoxColour MythVideoOutput::m_dbLetterboxColour { kLetterBoxColour_Black }
protected

Definition at line 129 of file mythvideoout.h.

Referenced by MythVideoOutput(), and MythVideoOutputOpenGL::RenderFrame().

◆ m_videoCodecID

MythCodecID MythVideoOutput::m_videoCodecID { kCodec_NONE }
protected

◆ m_maxReferenceFrames

int MythVideoOutput::m_maxReferenceFrames { 16 }
protected

◆ m_dbDisplayProfile

VideoDisplayProfile* MythVideoOutput::m_dbDisplayProfile { nullptr }
protected

◆ m_videoBuffers

VideoBuffers MythVideoOutput::m_videoBuffers
protected

◆ m_errorState

VideoErrorState MythVideoOutput::m_errorState { kError_None }
protected

Definition at line 134 of file mythvideoout.h.

Referenced by GetError(), VideoOutputD3D::InputChanged(), and IsErrored().

◆ m_framesPlayed

long long MythVideoOutput::m_framesPlayed { 0 }
protected

◆ m_copyFrame

MythAVCopy MythVideoOutput::m_copyFrame
protected

Definition at line 136 of file mythvideoout.h.

Referenced by VideoOutputD3D::UpdateFrame().

◆ m_deinterlacer

MythDeinterlacer MythVideoOutput::m_deinterlacer
protected

◆ m_renderFrameTypes

VideoFrameTypeVec* MythVideoOutput::m_renderFrameTypes { &s_defaultFrameTypes }
protected

◆ m_deinterlacing

bool MythVideoOutput::m_deinterlacing { false }
protected

◆ m_deinterlacing2X

bool MythVideoOutput::m_deinterlacing2X { false }
protected

◆ m_forcedDeinterlacer

MythDeintType MythVideoOutput::m_forcedDeinterlacer { DEINT_NONE }
protected

The documentation for this class was generated from the following files: