MythTV  master
Public Slots | Public Member Functions | Protected Slots | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | List of all members
MythPlayerUI Class Reference

#include <mythplayerui.h>

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

Public Slots

void OSDDebugVisibilityChanged (bool Visible)
 
- Public Slots inherited from MythPlayerVideoUI
void ProcessCallbacks ()
 
- Public Slots inherited from MythPlayerAudioUI
void RefreshAudioState ()
 
- Public Slots inherited from MythPlayerOverlayUI
void BrowsingChanged (bool Browsing)
 
void EditingChanged (bool Editing)
 

Public Member Functions

 MythPlayerUI (MythMainWindow *MainWindow, TV *Tv, PlayerContext *Context, PlayerFlags Flags)
 
bool StartPlaying ()
 
virtual void InitialSeek ()
 
virtual void EventLoop ()
 
void ReinitVideo (bool ForceUpdate) override
 
virtual void VideoStart ()
 
virtual void EventStart ()
 
virtual bool VideoLoop ()
 
virtual void PreProcessNormalFrame ()
 
void ChangeSpeed () override
 
void SetVideoParams (int Width, int Height, double FrameRate, float Aspect, bool ForceUpdate, int ReferenceFrames, FrameScanType Scan=kScan_Ignore, const QString &CodecName=QString()) override
 
bool DoFastForwardSecs (float Seconds, double Inaccuracy, bool UseCutlist)
 
bool DoRewindSecs (float Seconds, double Inaccuracy, bool UseCutlist)
 
void GetPlaybackData (InfoMap &Map)
 
void GetCodecDescription (InfoMap &Map)
 
bool CanSupportDoubleRate ()
 
void SetWatched (bool ForceWatched=false)
 Determines if the recording should be considered watched. More...
 
void EnableEdit ()
 
void DisableEdit (int HowToSave)
 Leave cutlist edit mode, saving work in 1 of 3 ways. More...
 
bool HandleProgramEditorActions (QStringList &Actions)
 
uint64_t GetNearestMark (uint64_t Frame, bool Right)
 
bool IsTemporaryMark (uint64_t Frame)
 
bool HasTemporaryMark ()
 
bool IsCutListSaved ()
 
bool DeleteMapHasUndo ()
 
bool DeleteMapHasRedo ()
 
QString DeleteMapGetUndoMessage ()
 
QString DeleteMapGetRedoMessage ()
 
void HandleArbSeek (bool Direction)
 
- Public Member Functions inherited from MythPlayerVisualiserUI
 MythPlayerVisualiserUI (MythMainWindow *MainWindow, TV *Tv, PlayerContext *Context, PlayerFlags Flags)
 
 ~MythPlayerVisualiserUI () override
 
- Public Member Functions inherited from MythPlayerVideoUI
 MythPlayerVideoUI (MythMainWindow *MainWindow, TV *Tv, PlayerContext *Context, PlayerFlags Flags)
 
 ~MythPlayerVideoUI () override=default
 
void HandleDecoderCallback (const QString &Debug, DecoderCallback::Callback Function, void *Opaque1, void *Opaque2)
 Convenience function to request and wait for a callback into the main thread. More...
 
void CheckAspectRatio (MythVideoFrame *Frame)
 
- Public Member Functions inherited from MythPlayerCaptionsUI
 MythPlayerCaptionsUI (MythMainWindow *MainWindow, TV *Tv, PlayerContext *Context, PlayerFlags Flags)
 
 ~MythPlayerCaptionsUI () override
 
uint GetCaptionMode () const override
 
QStringList GetTracks (uint Type)
 
uint GetTrackCount (uint Type)
 
int GetTrack (uint Type)
 
bool SetAudioByComponentTag (int Tag)
 Selects the audio stream using the DVB component tag. More...
 
bool SetVideoByComponentTag (int Tag)
 Selects the video stream using the DVB component tag. More...
 
long GetStreamPos ()
 
long GetStreamMaxPos ()
 
InteractiveTVGetInteractiveTV () override
 
- Public Member Functions inherited from MythPlayerAudioUI
 MythPlayerAudioUI (MythMainWindow *MainWindow, TV *Tv, PlayerContext *Context, PlayerFlags Flags)
 
const AudioOutputGraphGetAudioGraph () const
 
void SetupAudioGraph (double VideoFrameRate)
 
void ClearAudioGraph ()
 
- Public Member Functions inherited from MythPlayerOverlayUI
 MythPlayerOverlayUI (MythMainWindow *MainWindow, TV *Tv, PlayerContext *Context, PlayerFlags Flags)
 
 ~MythPlayerOverlayUI () override=default
 
virtual void UpdateSliderInfo (osdInfo &Info, bool PaddedFields=false)
 
OSDGetOSD ()
 
void LockOSD ()
 
void UnlockOSD ()
 
- Public Member Functions inherited from MythPlayerUIBase
 MythPlayerUIBase (MythMainWindow *MainWindow, TV *Tv, PlayerContext *Context, PlayerFlags Flags)
 
- Public Member Functions inherited from MythPlayer
 MythPlayer (PlayerContext *Context, PlayerFlags Flags=kNoFlags)
 
 ~MythPlayer () override
 
virtual int OpenFile (int Retries=4)
 
void SetLength (int len)
 
void SetFramesPlayed (uint64_t played)
 
void SetEof (EofState eof)
 
void SetWatchingRecording (bool mode)
 
void SetKeyframeDistance (int keyframedistance)
 
void SetFileLength (int total, int frames)
 
void SetDuration (int duration)
 
void SetFrameRate (double fps)
 
QSize GetVideoBufferSize (void) const
 
QSize GetVideoSize (void) const
 
float GetVideoAspect (void) const
 
float GetFrameRate (void) const
 
bool IsAudioNeeded (void)
 
int GetFreeVideoFrames (void) const
 Returns the number of frames available for decoding onto. More...
 
int GetFFRewSkip (void) const
 
float GetPlaySpeed (void) const
 
AudioPlayerGetAudio (void)
 
float GetNextPlaySpeed (void) const
 
int GetLength (void) const
 
uint64_t GetTotalFrameCount (void) const
 
uint64_t GetCurrentFrameCount (void) const
 
uint64_t GetFramesPlayed (void) const
 
virtual uint64_t GetBookmark (void)
 
QString GetError (void) const
 
QString GetEncodingType (void) const
 
QString GetXDS (const QString &key) const
 
bool IsPaused (void) const
 
bool GetRawAudioState (void) const
 
bool GetLimitKeyRepeat (void) const
 
EofState GetEof (void) const
 
bool IsErrored (void) const
 
bool IsPlaying (uint wait_in_msec=0, bool wait_for=true) const
 
bool AtNormalSpeed (void) const
 
bool IsReallyNearEnd (void) const
 Returns true iff really near end of recording. More...
 
bool IsNearEnd (void)
 Returns true iff near end of recording. More...
 
bool HasTVChainNext (void) const
 
bool IsWatchingInprogress (void) const
 
MythVideoOutputGetVideoOutput (void)
 
virtual bool SwitchTitle (int)
 
virtual bool NextTitle (void)
 
virtual bool PrevTitle (void)
 
virtual bool SwitchAngle (int)
 
virtual bool NextAngle (void)
 
virtual bool PrevAngle (void)
 
const VideoFrameTypesDirectRenderFormats (void)
 Return a list of frame types that can be rendered directly. More...
 
MythVideoFrameGetNextVideoFrame (void)
 Removes a frame from the available queue for decoding onto. More...
 
void DeLimboFrame (MythVideoFrame *frame)
 
virtual void ReleaseNextVideoFrame (MythVideoFrame *buffer, int64_t timecode, bool wrap=true)
 Places frame on the queue of frames ready for display. More...
 
void DiscardVideoFrame (MythVideoFrame *buffer)
 Places frame in the available frames queue. More...
 
void DiscardVideoFrames (bool KeyFrame, bool Flushed)
 Places frames in the available frames queue. More...
 
DecoderBaseGetDecoder (void)
 Returns the stream decoder currently in use. More...
 
virtual bool HasReachedEof (void) const
 
void SetDisablePassThrough (bool disabled)
 
void ForceSetupAudioStream (void)
 
virtual bool PrepareAudioSample (int64_t &timecode)
 
virtual CC708ReaderGetCC708Reader (uint=0)
 
virtual CC608ReaderGetCC608Reader (uint=0)
 
virtual SubtitleReaderGetSubReader (uint=0)
 
virtual TeletextReaderGetTeletextReader (uint=0)
 
void EnableSubtitles (bool enable)
 
void EnableForcedSubtitles (bool enable)
 
bool ForcedSubtitlesFavored (void) const
 
bool GetAllowForcedSubtitles (void) const
 
void CheckTVChain ()
 
void FileChangedCallback ()
 
virtual int GetNumChapters (void)
 
virtual int GetCurrentChapter (void)
 
virtual void GetChapterTimes (QList< long long > &times)
 
virtual int GetNumTitles (void) const
 
virtual int GetCurrentTitle (void) const
 
virtual int GetTitleDuration (int) const
 
virtual QString GetTitleName (int) const
 
virtual int GetNumAngles (void) const
 
virtual int GetCurrentAngle (void) const
 
virtual QString GetAngleName (int) const
 
virtual bool GoToMenu (const QString &)
 
virtual void GoToDVDProgram (bool direction)
 
virtual bool IsInStillFrame () const
 
bool PosMapFromEnc (uint64_t start, frm_pos_map_t &posMap, frm_pos_map_t &durMap)
 
void SaveTotalDuration (void)
 
void ResetTotalDuration (void)
 
void SaveTotalFrames (void)
 
void SetErrored (const QString &reason)
 
- Public Member Functions inherited from MythVideoScanTracker
 MythVideoScanTracker (MythPlayerUI *Parent)
 
virtual ~MythVideoScanTracker ()=default
 
FrameScanType NextScanOverride ()
 
void SetScanOverride (FrameScanType Scan)
 
FrameScanType GetScanTypeWithOverride () const
 

Protected Slots

void InitialiseState () override
 
void ChangeOSDDebug ()
 
void UpdateOSDDebug ()
 
virtual void SetBookmark (bool Clear=false)
 
- Protected Slots inherited from MythPlayerVisualiserUI
void InitialiseState () override
 Set initial state and update player. More...
 
void UIScreenRectChanged (QRect Rect)
 
void EmbedVisualiser (bool Embed, QRect Rect={})
 
void EnableVisualiser (bool Enable, bool Toggle, const QString &Name)
 
void AudioPlayerStateChanged (const MythAudioPlayerState &State)
 
- Protected Slots inherited from MythPlayerVideoUI
void ReinitOSD ()
 
void ToggleAdjustFill (AdjustFillMode Mode=kAdjustFill_Toggle)
 
- Protected Slots inherited from MythPlayerCaptionsUI
void InitialiseState () override
 
void TracksChanged (uint TrackType)
 This tries to re-enable captions/subtitles if the user wants them and one of the captions/subtitles tracks has changed. More...
 
void SetAllowForcedSubtitles (bool Allow)
 
void ToggleCaptions ()
 
void ToggleCaptionsByType (uint Type)
 
void SetCaptionsEnabled (bool Enable, bool UpdateOSD=true)
 
virtual void DisableCaptions (uint Mode, bool UpdateOSD=true)
 
virtual void EnableCaptions (uint Mode, bool UpdateOSD=true)
 
virtual void SetTrack (uint Type, uint TrackNo)
 
void ChangeCaptionTrack (int Direction)
 
void ChangeTrack (uint Type, int Direction)
 
void ResetCaptions ()
 
void EnableTeletext (int Page=0x100)
 
void ResetTeletext ()
 
void SetTeletextPage (uint Page)
 Set Teletext NUV Caption page. More...
 
void HandleTeletextAction (const QString &Action, bool &Handled)
 
void ITVHandleAction (const QString &Action, bool &Handled)
 Submit Action to the interactiveTV object. More...
 
void ITVRestart (uint Chanid, uint Cardid, bool IsLiveTV)
 Restart the MHEG/MHP engine. More...
 
void AdjustSubtitleZoom (int Delta)
 
void AdjustSubtitleDelay (int Delta)
 
- Protected Slots inherited from MythPlayerAudioUI
void InitialiseState () override
 Initialise audio and signal initial state. More...
 
void ChangeMuteState (bool CycleChannels)
 
void ChangeVolume (bool Direction, int Volume)
 
void ResetAudio ()
 
void ReinitAudio ()
 
void EnableUpmix (bool Enable, bool Toggle=false)
 
void PauseAudioUntilBuffered ()
 
void AdjustAudioTimecodeOffset (int64_t Delta, int Value)
 
- Protected Slots inherited from MythPlayerOverlayUI
void UpdateOSDMessage (const QString &Message)
 
void UpdateOSDMessage (const QString &Message, OSDTimeout Timeout)
 
void SetOSDStatus (const QString &Title, OSDTimeout Timeout)
 
void UpdateOSDStatus (osdInfo &Info, int Type, enum OSDTimeout Timeout)
 
void UpdateOSDStatus (const QString &Title, const QString &Desc, const QString &Value, int Type, const QString &Units, int Position, OSDTimeout Timeout)
 
void ChangeOSDPositionUpdates (bool Enable)
 
void UpdateOSDPosition ()
 Update the OSD status/position window. More...
 
- Protected Slots inherited from MythPlayerUIBase
virtual void InitialiseState ()
 

Protected Member Functions

void InitFrameInterval () override
 
virtual void DisplayPauseFrame ()
 
virtual void DisplayNormalFrame (bool CheckPrebuffer=true)
 
void FileChanged ()
 
void RefreshPauseFrame ()
 
void RenderVideoFrame (MythVideoFrame *Frame, FrameScanType Scan, bool Prepare, int64_t Wait)
 
void DoDisplayVideoFrame (MythVideoFrame *Frame, int64_t Due)
 
void EnableFrameRateMonitor (bool Enable=false)
 
- Protected Member Functions inherited from MythPlayerVisualiserUI
void PrepareVisualiser ()
 
void RenderVisualiser ()
 
void AutoVisualise (bool HaveVideo)
 Enable visualisation if possible, there is no video and user has requested. More...
 
- Protected Member Functions inherited from MythPlayerVideoUI
bool InitVideo () override
 
- Protected Member Functions inherited from MythPlayerCaptionsUI
double SafeFPS ()
 
void DoDisableForcedSubtitles ()
 
void DoEnableForcedSubtitles ()
 
void LoadExternalSubtitles ()
 
- Protected Member Functions inherited from MythPlayerOverlayUI
virtual int64_t GetSecondsPlayed (bool HonorCutList, int Divisor=1000)
 
virtual int64_t GetTotalSeconds (bool HonorCutList, int Divisor=1000) const
 
- Protected Member Functions inherited from MythPlayer
void OpenDummy (void)
 
virtual long long CalcMaxFFTime (long long ff, bool setjump=true) const
 CalcMaxFFTime(ffframes): forward ffframes forward. More...
 
long long CalcRWTime (long long rw) const
 CalcRWTime(rw): rewind rw frames back. More...
 
uint64_t TranslatePositionFrameToMs (uint64_t position, bool use_cutlist) const
 
uint64_t TranslatePositionMsToFrame (uint64_t position, bool use_cutlist) const
 
uint64_t TranslatePositionAbsToRel (uint64_t position) const
 
uint64_t TranslatePositionRelToAbs (uint64_t position) const
 
float ComputeSecs (uint64_t position, bool use_cutlist) const
 
uint64_t FindFrame (float offset, bool use_cutlist) const
 
void SetAutoCommercialSkip (CommSkipMode autoskip)
 
void SkipCommercials (int direction)
 
void SetCommBreakMap (frm_dir_map_t &newMap)
 
CommSkipMode GetAutoCommercialSkip (void)
 
virtual void ResetPlaying (bool resetframes=true)
 
virtual void StopPlaying (void)
 
bool PauseDecoder (void)
 
void UnpauseDecoder (void)
 
bool Pause (void)
 
bool Play (float speed=1.0, bool normal=true, bool unpauseaudio=true)
 
virtual bool FastForward (float seconds)
 
virtual bool Rewind (float seconds)
 
virtual bool JumpToFrame (uint64_t frame)
 
void JumpChapter (int chapter)
 
virtual bool PrebufferEnoughFrames (int min_buffers=0)
 
void SetBuffering (bool new_buffering)
 
virtual void VideoEnd (void)
 
virtual void DecoderStart (bool start_paused)
 
virtual void DecoderLoop (bool pause)
 
virtual void DecoderEnd (void)
 
virtual void DecoderPauseCheck (void)
 
virtual void AudioEnd (void)
 
bool GetEditMode (void) const
 
bool IsInDelete (uint64_t frame)
 
void SetPlayingInfo (const ProgramInfo &pginfo)
 
void SetPlaying (bool is_playing)
 
void ResetErrored (void)
 
void PauseVideo (void)
 
void UnpauseVideo (void)
 
void PauseBuffer (void)
 
void UnpauseBuffer (void)
 
virtual void CreateDecoder (TestBufferVec &TestBuffer)
 
void SetDecoder (DecoderBase *dec)
 Sets the stream decoder, deleting any existing recorder. More...
 
const DecoderBaseGetDecoder (void) const
 Returns the stream decoder currently in use. More...
 
virtual bool DecoderGetFrameFFREW (void)
 
virtual bool DecoderGetFrameREW (void)
 
bool DecoderGetFrame (DecodeType decodetype, bool unsafe=false)
 
bool DoGetFrame (DecodeType DecodeType)
 Get one frame from the decoder. More...
 
bool UpdateFFRewSkip (void)
 
bool DoFastForward (uint64_t frames, double inaccuracy)
 
bool DoRewind (uint64_t frames, double inaccuracy)
 
void DoJumpToFrame (uint64_t frame, double inaccuracy)
 
void WaitForSeek (uint64_t frame, uint64_t seeksnap_wanted)
 
void ClearAfterSeek (bool clearvideobuffers=true)
 This is to support seeking... More...
 
void ClearBeforeSeek (uint64_t Frames)
 Discard video frames prior to seeking. More...
 
virtual bool DoJumpChapter (int chapter)
 
virtual int64_t GetChapter (int chapter)
 
void WrapTimecode (int64_t &timecode, TCTypes tc_type)
 
void SetFrameInterval (FrameScanType scan, double frame_period)
 
- Protected Member Functions inherited from MythVideoScanTracker
void InitialiseScan (MythVideoOutput *VideoOutput)
 
void UnlockScan ()
 
void ResetTracker ()
 
void SetScanType (FrameScanType Scan, MythVideoOutput *VideoOutput, int FrameInterval)
 
FrameScanType GetScanForDisplay (MythVideoFrame *Frame, bool &SecondField)
 
FrameScanType GetScanType () const
 
virtual void AutoDeint (MythVideoFrame *Frame, MythVideoOutput *VideoOutput, int FrameInterval, bool AllowLock=true)
 Check whether deinterlacing should be enabled. More...
 
void CheckScanUpdate (MythVideoOutput *VideoOutput, int FrameInterval)
 
QString GetDeinterlacerName ()
 
FrameScanType DetectInterlace (FrameScanType NewScan, float Rate, int VideoHeight)
 

Protected Attributes

Jitterometer m_outputJmeter { "Player" }
 
QElapsedTimer m_editUpdateTimer
 
float m_speedBeforeEdit { 1.0 }
 
bool m_pausedBeforeEdit { false }
 
- Protected Attributes inherited from MythPlayerVisualiserUI
bool m_checkAutoVisualise { false }
 
- Protected Attributes inherited from MythPlayerVideoUI
DetectLetterbox m_detectLetterBox { }
 
- Protected Attributes inherited from MythPlayerCaptionsUI
MythCaptionsOverlay m_captionsOverlay
 
MythCaptionsState m_captionsState { }
 
bool m_textDesired { false }
 
uint m_lastTextDisplayMode { kDisplayNone }
 
uint m_lastValidTextDisplayMode { kDisplayNone }
 
InteractiveTVm_interactiveTV { nullptr }
 
QMutex m_itvLock { }
 
bool m_itvEnabled { false }
 
bool m_itvVisible { false }
 
QString m_newStream { }
 
- Protected Attributes inherited from MythPlayerOverlayUI
OSD m_osd
 
QMutex m_osdLock { QMutex::Recursive }
 
bool m_browsing { false }
 
bool m_editing { false }
 
bool m_reinitOsd { false }
 
- Protected Attributes inherited from MythPlayer
DecoderBasem_decoder {nullptr}
 
QMutex m_decoderChangeLock {QMutex::Recursive}
 
MythVideoOutputm_videoOutput {nullptr}
 
PlayerContextm_playerCtx {nullptr}
 
MythDecoderThreadm_decoderThread {nullptr}
 
QThread * m_playerThread {nullptr}
 
PlayerFlags m_playerFlags
 
QWaitCondition m_decoderThreadPause
 
QWaitCondition m_decoderThreadUnpause
 
QMutex m_decoderPauseLock
 
QMutex m_decoderSeekLock
 
QMutex m_bufferPauseLock
 
QMutex m_videoPauseLock
 
QMutex m_pauseLock
 
int64_t m_decoderSeek {-1}
 
bool m_totalDecoderPause {false}
 
bool m_decoderPaused {false}
 
bool m_inJumpToProgramPause {false}
 
bool m_pauseDecoder {false}
 
bool m_unpauseDecoder {false}
 
bool volatile m_killDecoder {false}
 
bool m_decodeOneFrame {false}
 
bool m_needNewPauseFrame {false}
 
bool m_bufferPaused {false}
 
bool m_videoPaused {false}
 
bool m_allPaused {false}
 
bool m_playing {false}
 
QWaitCondition m_playingWaitCond
 
QMutex m_vidExitLock
 
QMutex m_playingLock
 
QMutex m_errorLock
 
QString m_errorMsg
 Reason why NVP exited with a error. More...
 
int m_errorType {kError_None}
 
bool m_liveTV {false}
 
bool m_watchingRecording {false}
 
bool m_transcoding {false}
 
bool m_hasFullPositionMap {false}
 
bool m_limitKeyRepeat {false}
 
int m_jumpChapter {0}
 
uint64_t m_bookmarkSeek {0}
 
int m_clearSavedPosition {1}
 
int m_endExitPrompt
 
long long m_ffTime {0}
 If m_ffTime>0, number of frames to seek forward. More...
 
int m_videobufRetries {0}
 How often we have tried to wait for a video output buffer and failed. More...
 
uint64_t m_framesPlayed {0}
 
uint64_t m_totalFrames {0}
 
long long m_totalLength {0}
 
int64_t m_totalDuration {0}
 
long long m_rewindTime {0}
 
int64_t m_latestVideoTimecode {-1}
 
MythPlayerAVSync m_avSync
 
double m_videoFrameRate {29.97}
 Video (input) Frame Rate (often inaccurate) More...
 
QString m_codecName
 Codec Name - used by playback profile. More...
 
QSize m_videoDispDim {0,0}
 Video (input) width & height. More...
 
QSize m_videoDim {0,0}
 Video (input) buffer width & height. More...
 
int m_maxReferenceFrames {0}
 Number of reference frames used in the video stream. More...
 
float m_videoAspect {4.0F / 3.0F}
 Video (input) Apect Ratio. More...
 
float m_forcedVideoAspect {-1}
 
uint m_keyframeDist {30}
 Video (input) Number of frames between key frames (often inaccurate) More...
 
bool m_buffering {false}
 
QTime m_bufferingStart
 
QTime m_bufferingLastMsg
 
uint m_vbiMode {VBIMode::None}
 VBI decoder to use. More...
 
int m_ttPageNum {0x888}
 VBI page to display when in PAL vbimode. More...
 
SubtitleReader m_subReader
 
TeletextReader m_ttxReader
 
bool m_captionsEnabledbyDefault {false}
 This allows us to enable captions/subtitles later if the streams are not immediately available when the video starts playing. More...
 
bool m_enableCaptions {false}
 
bool m_disableCaptions {false}
 
bool m_enableForcedSubtitles {false}
 
bool m_disableForcedSubtitles {false}
 
bool m_allowForcedSubtitles {true}
 
CC608Reader m_cc608
 
CC708Reader m_cc708
 
AudioPlayer m_audio
 
CommBreakMap m_commBreakMap
 
bool m_forcePositionMapSync {false}
 
DeleteMap m_deleteMap
 
QMutex m_decoderLock {QMutex::Recursive}
 Lock for next_play_speed and next_normal_speed. More...
 
float m_nextPlaySpeed {1.0F}
 
float m_playSpeed {1.0F}
 
int m_frameInterval {static_cast<int>((1000000.0F / 30))}
 always adjusted for play_speed More...
 
int m_fpsMultiplier {1}
 used to detect changes More...
 
int m_ffrewSkip {1}
 
int m_ffrewAdjust {0}
 
bool m_fileChanged {false}
 
bool m_nextNormalSpeed {true}
 
bool m_normalSpeed {true}
 
tctype_arr m_tcWrap {}
 
int64_t m_savedAudioTimecodeOffset {0}
 
bool m_isDummy {false}
 
int m_bufferingCounter {0}
 

Private Member Functions

void SwitchToProgram ()
 
void JumpToProgram ()
 
void JumpToStream (const QString &stream)
 

Private Attributes

bool m_osdDebug { false }
 
QTimer m_osdDebugTimer
 

Additional Inherited Members

- Signals inherited from MythPlayerVisualiserUI
void VisualiserStateChanged (MythVisualiserState VisualiserState)
 
- Signals inherited from MythPlayerCaptionsUI
void CaptionsStateChanged (MythCaptionsState &CaptionsState)
 
void ResizeForInteractiveTV (const QRect &Rect)
 
void SetInteractiveStream (const QString &Stream)
 
void SetInteractiveStreamPos (long Position)
 
void PlayInteractiveStream (bool Play)
 
- Signals inherited from MythPlayerAudioUI
void AudioStateChanged (MythAudioState State)
 
- Signals inherited from MythPlayerOverlayUI
void OverlayStateChanged (MythOverlayState OverlayState)
 
- Signals inherited from MythPlayer
void CheckCallbacks ()
 
void SeekingSlow (int Count)
 
void SeekingComplete ()
 
void PauseChanged (bool Paused)
 
void RequestResetCaptions ()
 
void SignalTracksChanged (uint Type)
 
- Public Attributes inherited from MythPlayerUIBase
MythMainWindowm_mainWindow { nullptr }
 
TVm_tv { nullptr }
 
MythRenderm_render { nullptr }
 
MythPainterm_painter { nullptr }
 
MythDisplaym_display { nullptr }
 
- Static Public Attributes inherited from MythPlayer
static const int kNightModeBrightenssAdjustment = 10
 
static const int kNightModeContrastAdjustment = 10
 
static const double kInaccuracyNone = 0
 
static const double kInaccuracyDefault = 0.1
 
static const double kInaccuracyEditor = 0.5
 
static const double kInaccuracyFull = -1.0
 

Detailed Description

Definition at line 10 of file mythplayerui.h.

Constructor & Destructor Documentation

◆ MythPlayerUI()

MythPlayerUI::MythPlayerUI ( MythMainWindow MainWindow,
TV Tv,
PlayerContext Context,
PlayerFlags  Flags 
)

Definition at line 20 of file mythplayerui.cpp.

Member Function Documentation

◆ OSDDebugVisibilityChanged

void MythPlayerUI::OSDDebugVisibilityChanged ( bool  Visible)
slot

Definition at line 872 of file mythplayerui.cpp.

Referenced by OSD::LoadWindows().

◆ InitialiseState

void MythPlayerUI::InitialiseState ( )
overrideprotectedslot

Definition at line 54 of file mythplayerui.cpp.

Referenced by MythPlayerUI().

◆ ChangeOSDDebug

void MythPlayerUI::ChangeOSDDebug ( )
protectedslot

Definition at line 891 of file mythplayerui.cpp.

Referenced by MythPlayerUI().

◆ UpdateOSDDebug

void MythPlayerUI::UpdateOSDDebug ( )
protectedslot

Definition at line 881 of file mythplayerui.cpp.

Referenced by ChangeOSDDebug(), and MythPlayerUI().

◆ SetBookmark

void MythPlayerUI::SetBookmark ( bool  Clear = false)
protectedvirtualslot

Definition at line 789 of file mythplayerui.cpp.

Referenced by InitialSeek(), and MythPlayerUI().

◆ StartPlaying()

bool MythPlayerUI::StartPlaying ( )

Definition at line 60 of file mythplayerui.cpp.

Referenced by TV::StartPlaying().

◆ InitialSeek()

void MythPlayerUI::InitialSeek ( void  )
virtual

Reimplemented in MythDVDPlayer.

Definition at line 98 of file mythplayerui.cpp.

Referenced by MythDVDPlayer::InitialSeek(), and StartPlaying().

◆ EventLoop()

void MythPlayerUI::EventLoop ( )
virtual

Definition at line 109 of file mythplayerui.cpp.

Referenced by TV::PlaybackLoop().

◆ ReinitVideo()

void MythPlayerUI::ReinitVideo ( bool  ForceUpdate)
overridevirtual

Reimplemented from MythPlayer.

Definition at line 396 of file mythplayerui.cpp.

◆ VideoStart()

void MythPlayerUI::VideoStart ( void  )
virtual

Reimplemented in MythDVDPlayer, and MythBDPlayer.

Definition at line 411 of file mythplayerui.cpp.

Referenced by StartPlaying(), MythBDPlayer::VideoStart(), and MythDVDPlayer::VideoStart().

◆ EventStart()

void MythPlayerUI::EventStart ( void  )
virtual

Reimplemented in MythDVDPlayer, and MythBDPlayer.

Definition at line 470 of file mythplayerui.cpp.

Referenced by MythBDPlayer::EventStart(), MythDVDPlayer::EventStart(), and StartPlaying().

◆ VideoLoop()

bool MythPlayerUI::VideoLoop ( void  )
virtual

Reimplemented in MythDVDPlayer, and MythBDPlayer.

Definition at line 488 of file mythplayerui.cpp.

Referenced by TV::PlaybackLoop(), MythBDPlayer::VideoLoop(), and MythDVDPlayer::VideoLoop().

◆ PreProcessNormalFrame()

void MythPlayerUI::PreProcessNormalFrame ( void  )
virtual

Reimplemented in MythDVDPlayer, and MythBDPlayer.

Definition at line 369 of file mythplayerui.cpp.

Referenced by DisplayNormalFrame(), and DisplayPauseFrame().

◆ ChangeSpeed()

void MythPlayerUI::ChangeSpeed ( void  )
overridevirtual

◆ SetVideoParams()

void MythPlayerUI::SetVideoParams ( int  Width,
int  Height,
double  FrameRate,
float  Aspect,
bool  ForceUpdate,
int  ReferenceFrames,
FrameScanType  Scan = kScan_Ignore,
const QString &  CodecName = QString() 
)
overridevirtual

Reimplemented from MythPlayer.

Definition at line 701 of file mythplayerui.cpp.

◆ DoFastForwardSecs()

bool MythPlayerUI::DoFastForwardSecs ( float  Seconds,
double  Inaccuracy,
bool  UseCutlist 
)

Definition at line 715 of file mythplayerui.cpp.

Referenced by HandleProgramEditorActions().

◆ DoRewindSecs()

bool MythPlayerUI::DoRewindSecs ( float  Seconds,
double  Inaccuracy,
bool  UseCutlist 
)

Definition at line 722 of file mythplayerui.cpp.

Referenced by HandleProgramEditorActions().

◆ GetPlaybackData()

void MythPlayerUI::GetPlaybackData ( InfoMap Map)

Definition at line 813 of file mythplayerui.cpp.

Referenced by UpdateOSDDebug().

◆ GetCodecDescription()

void MythPlayerUI::GetCodecDescription ( InfoMap Map)

◆ CanSupportDoubleRate()

bool MythPlayerUI::CanSupportDoubleRate ( )

◆ SetWatched()

void MythPlayerUI::SetWatched ( bool  ForceWatched = false)

Determines if the recording should be considered watched.

By comparing the number of framesPlayed to the total number of frames in the video minus an offset (14%) we determine if the recording is likely to have been watched to the end, ignoring end credits and trailing adverts.

PlaybackInfo::SetWatchedFlag is then called with the argument TRUE or FALSE accordingly.

Parameters
forceWatchedForces a recording watched ignoring the amount actually played (Optional)

Definition at line 743 of file mythplayerui.cpp.

Referenced by TV::PrepareToExitPlayer(), and TV::ProcessNetworkControlCommand().

◆ EnableEdit()

void MythPlayerUI::EnableEdit ( )

Definition at line 1267 of file mythplayerui.cpp.

Referenced by TV::HandleOSDAlreadyEditing(), and TV::StartProgramEditMode().

◆ DisableEdit()

void MythPlayerUI::DisableEdit ( int  HowToSave)

Leave cutlist edit mode, saving work in 1 of 3 ways.

Parameters
HowToSaveIf 1, save all changes. If 0, discard all changes. If -1, do not explicitly save changes but leave auto-save information intact in the database.

Definition at line 1314 of file mythplayerui.cpp.

Referenced by TV::customEvent(), HandleProgramEditorActions(), and TV::ProcessKeypressOrGesture().

◆ HandleProgramEditorActions()

bool MythPlayerUI::HandleProgramEditorActions ( QStringList &  Actions)

Definition at line 1358 of file mythplayerui.cpp.

Referenced by TV::HandleOSDCutpoint(), and TV::ProcessKeypressOrGesture().

◆ GetNearestMark()

uint64_t MythPlayerUI::GetNearestMark ( uint64_t  Frame,
bool  Right 
)

Definition at line 1227 of file mythplayerui.cpp.

Referenced by TV::MenuItemDisplayCutlist().

◆ IsTemporaryMark()

bool MythPlayerUI::IsTemporaryMark ( uint64_t  Frame)

Definition at line 1232 of file mythplayerui.cpp.

Referenced by TV::MenuItemDisplayCutlist().

◆ HasTemporaryMark()

bool MythPlayerUI::HasTemporaryMark ( void  )

Definition at line 1237 of file mythplayerui.cpp.

Referenced by TV::ProcessKeypressOrGesture().

◆ IsCutListSaved()

bool MythPlayerUI::IsCutListSaved ( )

Definition at line 1242 of file mythplayerui.cpp.

Referenced by TV::ProcessKeypressOrGesture().

◆ DeleteMapHasUndo()

bool MythPlayerUI::DeleteMapHasUndo ( )

Definition at line 1247 of file mythplayerui.cpp.

Referenced by TV::MenuItemDisplayCutlist().

◆ DeleteMapHasRedo()

bool MythPlayerUI::DeleteMapHasRedo ( )

Definition at line 1252 of file mythplayerui.cpp.

Referenced by TV::MenuItemDisplayCutlist().

◆ DeleteMapGetUndoMessage()

QString MythPlayerUI::DeleteMapGetUndoMessage ( )

Definition at line 1257 of file mythplayerui.cpp.

Referenced by TV::MenuItemDisplayCutlist().

◆ DeleteMapGetRedoMessage()

QString MythPlayerUI::DeleteMapGetRedoMessage ( )

Definition at line 1262 of file mythplayerui.cpp.

Referenced by TV::MenuItemDisplayCutlist().

◆ HandleArbSeek()

void MythPlayerUI::HandleArbSeek ( bool  Direction)

Definition at line 1339 of file mythplayerui.cpp.

Referenced by HandleProgramEditorActions().

◆ InitFrameInterval()

void MythPlayerUI::InitFrameInterval ( )
overrideprotectedvirtual

Reimplemented from MythPlayer.

Definition at line 506 of file mythplayerui.cpp.

Referenced by VideoStart().

◆ DisplayPauseFrame()

void MythPlayerUI::DisplayPauseFrame ( void  )
protectedvirtual

◆ DisplayNormalFrame()

void MythPlayerUI::DisplayNormalFrame ( bool  CheckPrebuffer = true)
protectedvirtual

Definition at line 652 of file mythplayerui.cpp.

Referenced by VideoLoop(), MythBDPlayer::VideoLoop(), and MythDVDPlayer::VideoLoop().

◆ FileChanged()

void MythPlayerUI::FileChanged ( void  )
protected

Definition at line 535 of file mythplayerui.cpp.

Referenced by EventLoop().

◆ RefreshPauseFrame()

void MythPlayerUI::RefreshPauseFrame ( )
protected

Definition at line 561 of file mythplayerui.cpp.

Referenced by DisplayPauseFrame().

◆ RenderVideoFrame()

void MythPlayerUI::RenderVideoFrame ( MythVideoFrame Frame,
FrameScanType  Scan,
bool  Prepare,
int64_t  Wait 
)
protected

Definition at line 515 of file mythplayerui.cpp.

Referenced by DisplayPauseFrame(), and DoDisplayVideoFrame().

◆ DoDisplayVideoFrame()

void MythPlayerUI::DoDisplayVideoFrame ( MythVideoFrame Frame,
int64_t  Due 
)
protected

Definition at line 584 of file mythplayerui.cpp.

Referenced by DisplayNormalFrame().

◆ EnableFrameRateMonitor()

void MythPlayerUI::EnableFrameRateMonitor ( bool  Enable = false)
protected

Definition at line 906 of file mythplayerui.cpp.

Referenced by ChangeOSDDebug(), and VideoStart().

◆ SwitchToProgram()

void MythPlayerUI::SwitchToProgram ( )
private

Definition at line 987 of file mythplayerui.cpp.

Referenced by EventLoop().

◆ JumpToProgram()

void MythPlayerUI::JumpToProgram ( )
private

Definition at line 1100 of file mythplayerui.cpp.

Referenced by EventLoop().

◆ JumpToStream()

void MythPlayerUI::JumpToStream ( const QString &  stream)
private

Definition at line 918 of file mythplayerui.cpp.

Referenced by EventLoop().

Member Data Documentation

◆ m_outputJmeter

Jitterometer MythPlayerUI::m_outputJmeter { "Player" }
protected

Definition at line 72 of file mythplayerui.h.

Referenced by DisplayNormalFrame(), EnableFrameRateMonitor(), and GetPlaybackData().

◆ m_editUpdateTimer

QElapsedTimer MythPlayerUI::m_editUpdateTimer
protected

Definition at line 75 of file mythplayerui.h.

Referenced by EnableEdit(), and EventLoop().

◆ m_speedBeforeEdit

float MythPlayerUI::m_speedBeforeEdit { 1.0 }
protected

Definition at line 76 of file mythplayerui.h.

Referenced by DisableEdit(), and EnableEdit().

◆ m_pausedBeforeEdit

bool MythPlayerUI::m_pausedBeforeEdit { false }
protected

Definition at line 77 of file mythplayerui.h.

Referenced by DisableEdit(), and EnableEdit().

◆ m_osdDebug

bool MythPlayerUI::m_osdDebug { false }
private

Definition at line 86 of file mythplayerui.h.

Referenced by ChangeOSDDebug(), and OSDDebugVisibilityChanged().

◆ m_osdDebugTimer

QTimer MythPlayerUI::m_osdDebugTimer
private

Definition at line 87 of file mythplayerui.h.

Referenced by MythPlayerUI(), and OSDDebugVisibilityChanged().


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