MythTV
master
|
#include <libmythtv/mythvideoout.h>
Public Member Functions | |
~MythVideoOutput () override=default | |
virtual bool | Init (QSize VideoDim, QSize VideoDispDim, float VideoAspect, QRect WindowRect, MythCodecID CodecID) |
virtual void | SetVideoFrameRate (float VideoFrameRate) |
virtual void | SetDeinterlacing (bool Enable, bool DoubleRate, MythDeintType Force=DEINT_NONE) |
virtual void | PrepareFrame (MythVideoFrame *Frame, FrameScanType Scan=kScan_Ignore)=0 |
virtual void | RenderFrame (MythVideoFrame *Frame, FrameScanType)=0 |
virtual void | RenderEnd ()=0 |
virtual void | EndFrame ()=0 |
virtual bool | InputChanged (QSize VideoDim, QSize VideoDispDim, float VideoAspect, MythCodecID CodecID, bool &AspectChanged, int ReferenceFrames, bool ForceChange) |
Tells video output to discard decoded frames and wait for new ones. More... | |
virtual void | GetOSDBounds (QRect &Total, QRect &Visible, float &VisibleAspect, float &FontScaling, float ThemeAspect) 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... | |
virtual MythVideoFrame * | GetNextFreeFrame () |
Blocks until it is possible to return a frame for decoding onto. More... | |
virtual void | ReleaseFrame (MythVideoFrame *Frame) |
Releases a frame from the ready for decoding queue onto the queue of frames ready for display. More... | |
virtual void | DeLimboFrame (MythVideoFrame *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 (MythVideoFrame *Frame) |
Releases frame returned from GetLastShownFrame() onto the queue of frames ready for decoding onto. More... | |
virtual void | DiscardFrame (MythVideoFrame *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 MythVideoFrame * | GetLastDecodedFrame () |
virtual MythVideoFrame * | GetLastShownFrame () |
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... | |
QRect | GetImageRect (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... | |
PictureAttributeSupported | GetSupportedPictureAttributes () |
virtual void | InitPictureAttributes () |
bool | HasSoftwareFrames () const |
virtual void | UpdatePauseFrame (std::chrono::milliseconds &, FrameScanType=kScan_Progressive) |
Public Member Functions inherited from MythVideoBounds | |
MythVideoBounds () | |
~MythVideoBounds () override=default | |
bool | InitBounds (QSize VideoDim, QSize VideoDispDim, float Aspect, QRect WindowRect) |
void | SetDisplay (MythDisplay *mDisplay) |
bool | IsEmbedding (void) const |
bool | IsEmbeddingAndHidden () const |
QSize | GetVideoDim (void) const |
QSize | GetVideoDispDim (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 |
AdjustFillMode | GetAdjustFill (void) const |
float | GetVideoAspect (void) const |
float | GetDisplayAspect (void) const |
StereoscopicMode | GetStereoOverride () 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... | |
Static Public Member Functions | |
static void | GetRenderOptions (RenderOptions &Options, MythRender *Render) |
Protected Member Functions | |
MythVideoOutput () | |
QRect | GetVisibleOSDBounds (float &VisibleAspect, float &FontScaling, float ThemeAspect) const |
Returns visible portions of total OSD bounds. More... | |
Protected Attributes | |
MythVideoColourSpace | m_videoColourSpace |
LetterBoxColour | m_dbLetterboxColour { kLetterBoxColour_Black } |
uint8_t | m_clearColor { 0 } |
uint8_t | m_clearAlpha { 255 } |
MythCodecID | m_videoCodecID { kCodec_NONE } |
int | m_maxReferenceFrames { 16 } |
MythVideoProfilePtr | m_videoProfile { nullptr } |
VideoBuffers | m_videoBuffers |
VideoErrorState | m_errorState { kError_None } |
long long | m_framesPlayed { 0 } |
MythAVCopy | m_copyFrame |
MythDeinterlacer | m_deinterlacer |
const VideoFrameTypes * | m_renderFormats { &MythVideoFrame::kDefaultRenderFormats } |
bool | m_deinterlacing { false } |
bool | m_deinterlacing2X { false } |
MythDeintType | m_forcedDeinterlacer { DEINT_NONE } |
Protected Attributes inherited from MythVideoBounds | |
MythDisplay * | m_display {nullptr} |
Additional Inherited Members | |
Public Slots inherited from MythVideoBounds | |
void | RefreshVideoBoundsState () |
Send out latest state to listeners. More... | |
void | ScreenChanged (QScreen *screen) |
void | PhysicalDPIChanged (qreal) |
void | SourceChanged (QSize VideoDim, 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 | EmbedPlayback (bool Embed, QRect Rect) |
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 (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 | SetWindowSize (QSize Size) |
void | SetITVResize (QRect Rect) |
void | SetRotation (int Rotation) |
Set the rotation in degrees. More... | |
void | SetStereoOverride (StereoscopicMode Mode) |
Signals inherited from MythVideoBounds | |
void | UpdateOSDMessage (const QString &Message) |
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) |
void | VideoBoundsStateChanged (MythVideoBoundsState VideoState) |
Definition at line 35 of file mythvideoout.h.
|
overridedefault |
|
protected |
Definition at line 99 of file mythvideoout.cpp.
|
static |
Definition at line 24 of file mythvideoout.cpp.
Referenced by MythVideoProfile::InitStatics().
|
virtual |
Reimplemented in MythVideoOutputNull, MythVideoOutputGPU, MythVideoOutputOpenGL, MythVideoOutputVulkan, and VideoOutputD3D.
Definition at line 110 of file mythvideoout.cpp.
Referenced by MythVideoOutputNull::Init(), VideoOutputD3D::Init(), and MythVideoOutputGPU::Init().
|
virtual |
Reimplemented in MythVideoOutputGPU.
Definition at line 135 of file mythvideoout.cpp.
Referenced by MythPlayer::ChangeSpeed(), and MythPlayer::ReinitVideo().
|
virtual |
Reimplemented in MythVideoOutputNull.
Definition at line 141 of file mythvideoout.cpp.
Referenced by InputChanged(), MythVideoOutputGPU::ProcessInputChange(), and MythVideoOutputNull::SetDeinterlacing().
|
pure virtual |
Implemented in MythVideoOutputGPU, MythVideoOutputOpenGL, VideoOutputD3D, MythVideoOutputVulkan, and MythVideoOutputNull.
Referenced by MythPlayerUI::RenderVideoFrame(), and VideoPerformanceTest::Test().
|
pure virtual |
Implemented in MythVideoOutputGPU, MythVideoOutputOpenGL, MythVideoOutputVulkan, MythVideoOutputNull, and VideoOutputD3D.
Referenced by MythPlayerUI::RenderVideoFrame(), and VideoPerformanceTest::Test().
|
pure virtual |
Implemented in MythVideoOutputOpenGL, MythVideoOutputVulkan, VideoOutputD3D, and MythVideoOutputNull.
Referenced by MythPlayerUI::RenderVideoFrame().
|
pure virtual |
Implemented in MythVideoOutputGPU, MythVideoOutputOpenGL, MythVideoOutputVulkan, VideoOutputD3D, and MythVideoOutputNull.
Referenced by MythPlayerUI::RenderVideoFrame(), and VideoPerformanceTest::Test().
|
virtual |
Tells video output to discard decoded frames and wait for new ones.
Reimplemented in MythVideoOutputGPU, MythVideoOutputNull, and VideoOutputD3D.
Definition at line 187 of file mythvideoout.cpp.
Referenced by MythVideoOutputNull::InputChanged(), and MythPlayer::ReinitVideo().
|
virtual |
Definition at line 207 of file mythvideoout.cpp.
Referenced by SubtitleScreen::DisplayAVSubtitles(), SubtitleScreen::DisplayDVDButton(), MythPlayerVideoUI::ReinitOSD(), InteractiveScreen::UpdateArea(), and MythPlayerUI::VideoStart().
|
virtual |
Definition at line 245 of file mythvideoout.cpp.
Referenced by MythPlayerUI::DoDisplayVideoFrame(), and MythPlayer::SetFramesPlayed().
|
virtual |
Definition at line 250 of file mythvideoout.cpp.
Referenced by MythPlayer::Pause(), and MythPlayerUI::VideoLoop().
bool MythVideoOutput::IsErrored | ( | ) | const |
Definition at line 255 of file mythvideoout.cpp.
Referenced by MythPlayerUI::DisplayPauseFrame(), VideoOutputD3D::EndFrame(), MythVideoOutputOpenGL::EndFrame(), VideoOutputD3D::PrepareFrame(), and VideoOutputD3D::RenderFrame().
VideoErrorState MythVideoOutput::GetError | ( | ) | const |
Definition at line 260 of file mythvideoout.cpp.
Referenced by MythPlayer::SetErrored().
void MythVideoOutput::SetPrebuffering | ( | bool | Normal | ) |
Sets whether to use a normal number of buffers or fewer buffers.
Definition at line 266 of file mythvideoout.cpp.
Referenced by MythPlayer::ChangeSpeed().
|
virtual |
Tells video output to toss decoded buffers due to a seek.
Reimplemented in MythVideoOutputGPU.
Definition at line 272 of file mythvideoout.cpp.
Referenced by MythVideoOutputGPU::ClearAfterSeek(), and MythPlayer::ClearAfterSeek().
|
virtual |
Returns number of frames that are fully decoded.
Definition at line 278 of file mythvideoout.cpp.
Referenced by MythPlayerUI::EventLoop(), MythPlayerUI::GetPlaybackData(), MythCommFlagPlayer::GetRawVideoFrame(), MythPreviewPlayer::GetScreenGrabAtFrame(), MythPlayer::IsReallyNearEnd(), MythPlayer::PrebufferEnoughFrames(), MythPlayerUI::RefreshPauseFrame(), MythBDPlayer::VideoLoop(), and MythDVDPlayer::VideoLoop().
int MythVideoOutput::FreeVideoFrames | ( | ) |
Returns number of frames available for decoding onto.
Definition at line 284 of file mythvideoout.cpp.
Referenced by MythPlayer::GetFreeVideoFrames(), and MythPlayerUI::GetPlaybackData().
bool MythVideoOutput::EnoughFreeFrames | ( | ) |
Returns true iff enough frames are available to decode onto.
Definition at line 290 of file mythvideoout.cpp.
Referenced by MythPlayer::DecoderGetFrame(), MythPlayer::PrebufferEnoughFrames(), and MythDVDPlayer::VideoLoop().
bool MythVideoOutput::EnoughDecodedFrames | ( | ) |
Returns true iff there are plenty of decoded frames ready for display.
Definition at line 297 of file mythvideoout.cpp.
Referenced by MythPlayer::PrebufferEnoughFrames().
|
virtual |
Blocks until it is possible to return a frame for decoding onto.
Definition at line 393 of file mythvideoout.cpp.
Referenced by MythPlayer::GetNextVideoFrame().
|
virtual |
Releases a frame from the ready for decoding queue onto the queue of frames ready for display.
Definition at line 400 of file mythvideoout.cpp.
Referenced by MythPlayer::ReleaseNextVideoFrame().
|
virtual |
Releases a frame for reuse if it is in limbo.
Definition at line 406 of file mythvideoout.cpp.
Referenced by MythPlayer::DeLimboFrame().
|
virtual |
Tell GetLastShownFrame() to return the next frame from the head of the queue of frames to display.
Definition at line 413 of file mythvideoout.cpp.
Referenced by MythPlayerUI::DisplayNormalFrame(), MythCommFlagPlayer::GetRawVideoFrame(), MythCCExtractorPlayer::OnGotNewFrame(), and VideoPerformanceTest::Test().
|
virtual |
Releases frame returned from GetLastShownFrame() onto the queue of frames ready for decoding onto.
Reimplemented in MythVideoOutputGPU.
Definition at line 420 of file mythvideoout.cpp.
Referenced by MythPlayerUI::DisplayNormalFrame(), MythCCExtractorPlayer::OnGotNewFrame(), VideoPerformanceTest::Test(), and Transcode::TranscodeFile().
|
virtual |
Releases frame from any queue onto the queue of frames ready for decoding onto.
Definition at line 427 of file mythvideoout.cpp.
Referenced by MythPlayer::DiscardVideoFrame().
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 434 of file mythvideoout.cpp.
Referenced by MythVideoOutputGPU::DiscardFrames(), MythPlayer::DiscardVideoFrames(), and InputChanged().
|
inlinevirtual |
Definition at line 76 of file mythvideoout.h.
|
virtual |
Definition at line 303 of file mythvideoout.cpp.
Referenced by MythPreviewPlayer::GetScreenGrabAtFrame(), VideoDecodeBuffer::run(), MythPreviewPlayer::SeekForScreenGrab(), and MythTranscodePlayer::TranscodeGetNextFrame().
|
virtual |
Returns frame from the head of the ready to be displayed queue, if StartDisplayingFrame has been called.
Definition at line 316 of file mythvideoout.cpp.
Referenced by SubtitleScreen::DisplayAVSubtitles(), MythDVDPlayer::DisplayDVDButton(), MythPlayerUI::DisplayNormalFrame(), SubtitleScreen::DisplayRawTextSubtitles(), CC608Reader::GetOutputText(), MythCommFlagPlayer::GetRawVideoFrame(), MythBDPlayer::GoToMenu(), MythCCExtractorPlayer::OnGotNewFrame(), SubtitleScreen::Pulse(), and VideoPerformanceTest::Test().
QString MythVideoOutput::GetFrameStatus | ( | ) | const |
Returns string with status of each frame for debugging.
Definition at line 309 of file mythvideoout.cpp.
Referenced by MythPlayer::PrebufferEnoughFrames().
QRect MythVideoOutput::GetImageRect | ( | QRect | Rect, |
QRect * | DisplayRect = nullptr |
||
) |
translates caption/dvd button rectangle into 'screen' space
Definition at line 322 of file mythvideoout.cpp.
Referenced by SubtitleScreen::AddScaledImage(), MythBDOverlayScreen::DisplayBDOverlay(), and SubtitleScreen::DisplayScaledAVSubtitles().
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 379 of file mythvideoout.cpp.
Referenced by SubtitleScreen::DisplayCC608Subtitles(), SubtitleScreen::DisplayCC708Subtitles(), SubtitleScreen::DisplayRawTextSubtitles(), and TeletextScreen::Pulse().
PictureAttributeSupported MythVideoOutput::GetSupportedPictureAttributes | ( | ) |
Definition at line 240 of file mythvideoout.cpp.
|
inlinevirtual |
Reimplemented in MythVideoOutputGPU.
Definition at line 85 of file mythvideoout.h.
|
inline |
Definition at line 86 of file mythvideoout.h.
Referenced by TV::PlaybackMenuInit().
|
inlinevirtual |
Reimplemented in MythVideoOutputGPU, and VideoOutputD3D.
Definition at line 87 of file mythvideoout.h.
Referenced by MythPlayerUI::RefreshPauseFrame(), MythBDPlayer::VideoLoop(), and MythDVDPlayer::VideoLoop().
|
protected |
Returns visible portions of total OSD bounds.
VisibleAspect | physical aspect ratio of bounds returned |
FontScaling | scaling to apply to fonts |
ThemeAspect | aspect ration of the theme |
Definition at line 222 of file mythvideoout.cpp.
Referenced by GetOSDBounds(), and GetSafeRect().
|
protected |
Definition at line 94 of file mythvideoout.h.
Referenced by GetSupportedPictureAttributes(), MythVideoOutputGPU::InitPictureAttributes(), MythVideoOutputGPU::MythVideoOutputGPU(), MythVideoOutputOpenGL::MythVideoOutputOpenGL(), and MythVideoOutputVulkan::MythVideoOutputVulkan().
|
protected |
Definition at line 95 of file mythvideoout.h.
|
protected |
Definition at line 96 of file mythvideoout.h.
Referenced by MythVideoOutputOpenGL::RenderFrame().
|
protected |
Definition at line 97 of file mythvideoout.h.
Referenced by MythVideoOutputGPU::MythVideoOutputGPU(), and MythVideoOutputOpenGL::RenderFrame().
|
protected |
Definition at line 98 of file mythvideoout.h.
Referenced by VideoOutputD3D::CreateBuffers(), VideoOutputD3D::CreateDecoder(), HasSoftwareFrames(), VideoOutputD3D::Init(), Init(), MythVideoOutputGPU::Init(), VideoOutputD3D::InitBuffers(), VideoOutputD3D::InputChanged(), MythVideoOutputGPU::InputChanged(), InputChanged(), VideoOutputD3D::PrepareFrame(), VideoOutputD3D::RenderFrame(), MythVideoOutputNull::SetDeinterlacing(), SetDeinterlacing(), VideoOutputD3D::UpdateFrame(), and VideoOutputD3D::UpdatePauseFrame().
|
protected |
Definition at line 99 of file mythvideoout.h.
Referenced by MythVideoOutputGPU::CreateBuffers(), MythVideoOutputGPU::InputChanged(), InputChanged(), and MythVideoOutputGPU::SetReferenceFrames().
|
protected |
Definition at line 100 of file mythvideoout.h.
Referenced by Init(), MythVideoOutputGPU::Init(), InputChanged(), MythVideoOutputGPU::MythVideoOutputGPU(), MythVideoOutputOpenGL::MythVideoOutputOpenGL(), MythVideoOutputVulkan::MythVideoOutputVulkan(), MythVideoOutputGPU::PrepareFrame(), MythVideoOutputGPU::ProcessInputChange(), MythVideoOutputGPU::ResizeForVideo(), SetDeinterlacing(), VideoOutputD3D::SetProfile(), MythVideoOutputGPU::SetVideoFrameRate(), SetVideoFrameRate(), and MythVideoOutputGPU::UpdatePauseFrame().
|
protected |
Definition at line 101 of file mythvideoout.h.
Referenced by ClearAfterSeek(), VideoOutputD3D::CreateBuffers(), MythVideoOutputGPU::CreateBuffers(), DeLimboFrame(), MythVideoOutputGPU::DestroyBuffers(), DiscardFrame(), MythVideoOutputGPU::DiscardFrames(), DiscardFrames(), MythVideoOutputGPU::DoneDisplayingFrame(), DoneDisplayingFrame(), EnoughDecodedFrames(), EnoughFreeFrames(), FreeVideoFrames(), GetFrameStatus(), GetLastDecodedFrame(), GetLastShownFrame(), GetNextFreeFrame(), MythVideoOutputNull::Init(), VideoOutputD3D::InitBuffers(), MythVideoOutputNull::InputChanged(), MythVideoOutputGPU::InputChanged(), VideoOutputD3D::PrepareFrame(), ReleaseFrame(), VideoOutputD3D::RenderFrame(), MythVideoOutputGPU::RenderFrame(), MythVideoOutputNull::SetDeinterlacing(), SetDeinterlacing(), SetPrebuffering(), StartDisplayingFrame(), VideoOutputD3D::TearDown(), VideoOutputD3D::UpdatePauseFrame(), MythVideoOutputGPU::UpdatePauseFrame(), and ValidVideoFrames().
|
protected |
Definition at line 102 of file mythvideoout.h.
Referenced by GetError(), MythVideoOutputNull::InputChanged(), VideoOutputD3D::InputChanged(), and IsErrored().
|
protected |
Definition at line 103 of file mythvideoout.h.
Referenced by GetFramesPlayed(), MythVideoOutputNull::RenderFrame(), VideoOutputD3D::RenderFrame(), MythVideoOutputGPU::RenderFrame(), and SetFramesPlayed().
|
protected |
Definition at line 104 of file mythvideoout.h.
Referenced by VideoOutputD3D::UpdateFrame().
|
protected |
Definition at line 105 of file mythvideoout.h.
Referenced by MythVideoOutputNull::PrepareFrame(), MythVideoOutputGPU::PrepareFrame(), and MythVideoOutputGPU::UpdatePauseFrame().
|
protected |
Definition at line 106 of file mythvideoout.h.
Referenced by MythVideoOutputGPU::Create(), MythVideoOutputGPU::CreateBuffers(), MythVideoOutputNull::Init(), MythVideoOutputNull::InputChanged(), MythVideoOutputOpenGL::MythVideoOutputOpenGL(), and MythVideoOutputVulkan::MythVideoOutputVulkan().
Definition at line 107 of file mythvideoout.h.
Referenced by InputChanged(), MythVideoOutputGPU::ProcessInputChange(), MythVideoOutputNull::SetDeinterlacing(), and SetDeinterlacing().
Definition at line 108 of file mythvideoout.h.
Referenced by InputChanged(), MythVideoOutputGPU::ProcessInputChange(), MythVideoOutputNull::SetDeinterlacing(), and SetDeinterlacing().
|
protected |
Definition at line 109 of file mythvideoout.h.
Referenced by InputChanged(), MythVideoOutputGPU::ProcessInputChange(), MythVideoOutputNull::SetDeinterlacing(), and SetDeinterlacing().