MythTV  master
Classes | Public Slots | Signals | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Slots | Private Types | Private Slots | Private Member Functions | Static Private Member Functions | Private Attributes | Static Private Attributes | Friends | List of all members
TV Class Reference

Control TV playback. More...

#include <tv_play.h>

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

Classes

class  SleepTimerInfo
 

Public Slots

bool event (QEvent *Event) override
 This handles all standard events. More...
 
bool eventFilter (QObject *Object, QEvent *Event) override
 This selectively blocks KeyPress and Resize events. More...
 
void timerEvent (QTimerEvent *Event) override
 
void StopPlayback ()
 
void HandleOSDClosed (int OSDType)
 
- Public Slots inherited from TVPlaybackState
void OverlayStateChanged (MythOverlayState OverlayState)
 
void AudioPlayerStateChanged (const MythAudioPlayerState &AudioPlayerState)
 
void AudioStateChanged (const MythAudioState &AudioState)
 
void CaptionsStateChanged (MythCaptionsState CaptionsState)
 
void VideoBoundsStateChanged (const MythVideoBoundsState &VideoBoundsState)
 
void VisualiserStateChanged (const MythVisualiserState &VisualiserState)
 

Signals

void PlaybackExiting (TV *Player)
 
- Signals inherited from TVPlaybackState
void InitialisePlayerState ()
 
void UpdateBookmark (bool Clear=false)
 
void IsOSDVisible (bool &Visible)
 
void ChangeOSDPositionUpdates (bool Enable)
 
void ChangeOSDDebug ()
 
void ChangeOSDText (const QString &Window, const InfoMap &Map, OSDTimeout Timeout)
 
void ChangeOSDDialog (const MythOSDDialogData &Data)
 
void ChangeOSDMessage (const QString &Message)
 
void ReinitAudio ()
 
void ResetAudio ()
 
void PauseAudioUntilReady ()
 
void ChangeMuteState (bool CycleChannels=false)
 
void ChangeVolume (bool Direction, int Volume)
 
void ChangeUpmix (bool Enable, bool Toggle=false)
 
void ChangeAudioOffset (int64_t Delta, int Value=-9999)
 
void SetTrack (uint Type, uint TrackNo)
 
void ChangeTrack (uint Type, int Direction)
 
void ChangeAllowForcedSubtitles (bool Allow)
 
void ToggleCaptions ()
 
void ToggleCaptionsByType (uint Type)
 
void SetCaptionsEnabled (bool Enable, bool UpdateOSD=true)
 
void DisableCaptions (uint Mode, bool UpdateOSD=true)
 
void EnableCaptions (uint Mode, bool UpdateOSD=true)
 
void ChangeCaptionTrack (int Direction)
 
void ResetCaptions ()
 
void EnableTeletext (int Page=0x100)
 
void ResetTeletext ()
 
void SetTeletextPage (uint Page)
 
void HandleTeletextAction (const QString &Action, bool &Handled)
 
void RestartITV (uint Chanid, uint Cardid, bool IsLiveTV)
 
void HandleITVAction (const QString &Action, bool &Handled)
 
void AdjustSubtitleZoom (int Delta)
 
void AdjustSubtitleDelay (int Delta)
 
void RequestEmbedding (bool Embed, const QRect &Rect={}, const QStringList &Data={})
 
void EmbedPlayback (bool Embed, const QRect &Rect={})
 
void WindowResized (const QSize &Size)
 
void ChangeStereoOverride (StereoscopicMode Mode)
 
void ChangePictureAttribute (PictureAttribute Attribute, bool Direction, int Value)
 
void ToggleDetectLetterBox ()
 
void ChangeAdjustFill (AdjustFillMode FillMode=kAdjustFill_Toggle)
 
void ChangeAspectOverride (AspectOverrideMode AspectMode=kAspect_Toggle)
 
void ChangeZoom (ZoomDirection Zoom)
 
void ToggleMoveBottomLine ()
 
void SaveBottomLine ()
 
void EnableVisualiser (bool Enable, bool Toggle=false, const QString &Name=QString())
 

Public Member Functions

void ReloadKeys ()
 
bool IsSameProgram (const ProgramInfo *ProgInfo) const
 
- Public Member Functions inherited from TVPlaybackState
 TVPlaybackState ()=default
 
- Public Member Functions inherited from MythTVMenuItemDisplayer
virtual ~MythTVMenuItemDisplayer ()=default
 
- Public Member Functions inherited from ReferenceCounter
 ReferenceCounter (const QString &debugName, bool logDebug=true)
 Creates reference counter with an initial value of 1. More...
 
virtual int IncrRef (void)
 Increments reference count. More...
 
virtual int DecrRef (void)
 Decrements reference count and deletes on 0. More...
 

Static Public Member Functions

static bool IsTVRunning ()
 Check whether media is currently playing. More...
 
static bool StartTV (ProgramInfo *TVRec, uint Flags, const ChannelInfoList &Selection=ChannelInfoList())
 Start playback of media. More...
 
static bool IsPaused ()
 Check whether playback is paused. More...
 
static void InitKeys ()
 
static void SetFuncPtr (const char *Name, void *Pointer)
 Import pointers to functions used to embed the TV window into other containers e.g. More...
 
static int ConfiguredTunerCards ()
 If any cards are configured, return the number. More...
 
static bool IsTunable (uint ChanId)
 
- Static Public Member Functions inherited from ReferenceCounter
static void PrintDebug (void)
 Print out any leaks if that level of debugging is enabled. More...
 

Static Public Attributes

static const int kInitFFRWSpeed = 0
 1x, default to normal speed More...
 
static const uint kInputKeysMax = 6
 When to start discarding early keys. More...
 
static const uint kNextSource = 1
 
static const uint kPreviousSource = 2
 Timeout for entry modes in msec. More...
 
static const uint kInputModeTimeout = 5000
 
static const uint kLCDTimeout = 1000
 Timeout for updating LCD info in msec. More...
 
static const uint kBrowseTimeout = 30000
 Timeout for browse mode exit in msec. More...
 
static const uint kKeyRepeatTimeout = 300
 Seek key repeat timeout in msec. More...
 
static const uint kPrevChanTimeout = 750
 How long to wait before applying all previous channel keypresses in msec. More...
 
static const uint kSleepTimerDialogTimeout = 45000
 How long to display sleep timer dialog in msec. More...
 
static const uint kIdleTimerDialogTimeout = 45000
 How long to display idle timer dialog in seconds. More...
 
static const uint kVideoExitDialogTimeout = 120000
 How long to display idle timer dialog in msec. More...
 
static const uint kEndOfPlaybackCheckFrequency = 250
 
static const uint kEmbedCheckFrequency = 250
 
static const uint kSpeedChangeCheckFrequency = 250
 
static const uint kErrorRecoveryCheckFrequency = 250
 
static const uint kEndOfRecPromptCheckFrequency = 250
 
static const uint kEndOfPlaybackFirstCheckTimer = 5000
 
static const uint kSaveLastPlayPosTimeout = 30000
 

Protected Slots

void onApplicationStateChange (Qt::ApplicationState State)
 
void customEvent (QEvent *Event) override
 This handles all custom events. More...
 
void VolumeChange (bool Up, int NewVolume=-1)
 

Private Types

enum  BookmarkAction { kBookmarkAlways, kBookmarkNever, kBookmarkAuto }
 
enum  ArbSeekWhence { ARBSEEK_SET = 0, ARBSEEK_REWIND, ARBSEEK_FORWARD, ARBSEEK_END }
 

Private Slots

void Embed (bool Embed, QRect Rect={}, const QStringList &Data={})
 

Private Member Functions

 TV (MythMainWindow *MainWindow)
 
 ~TV () override
 
PlayerContextGetPlayerContext ()
 Return a pointer to TV::m_playerContext. More...
 
bool CreatePlayer (TVState State, bool Muted=false)
 
bool StartPlaying (int MaxWait=-1)
 
bool Init ()
 Performs instance initialization, returns true on success. More...
 
void InitFromDB ()
 
bool LiveTV (bool ShowDialogs, const ChannelInfoList &Selection)
 Starts LiveTV. More...
 
int Playback (const ProgramInfo &ProgInfo)
 
void PlaybackLoop ()
 The main playback loop. More...
 
bool ProcessKeypressOrGesture (QEvent *Event)
 
bool TranslateKeyPressOrGesture (const QString &Context, QEvent *Event, QStringList &Actions, bool IsLiveTV, bool AllowJumps=true)
 
bool TranslateGesture (const QString &Context, MythGestureEvent *Event, QStringList &Actions, bool IsLiveTV)
 
void ProcessNetworkControlCommand (const QString &Command)
 
bool HandleTrackAction (const QString &Action)
 
bool ActiveHandleAction (const QStringList &Actions, bool IsDVD, bool IsDVDStillFrame)
 
bool BrowseHandleAction (const QStringList &Actions)
 
void OSDDialogEvent (int Result, const QString &Text, QString Action)
 
bool ToggleHandleAction (const QStringList &Actions, bool IsDVD)
 
bool FFRewHandleAction (const QStringList &Actions)
 
bool ActivePostQHandleAction (const QStringList &Actions)
 
bool HandleJumpToProgramAction (const QStringList &Actions)
 
bool SeekHandleAction (const QStringList &Actions, bool IsDVD)
 
bool TimeStretchHandleAction (const QStringList &Actions)
 
bool DiscMenuHandleAction (const QStringList &Actions) const
 
int StartTimer (int Interval, int Line)
 
void KillTimer (int Id)
 
void SetSpeedChangeTimer (int When, int Line)
 
void HandleEndOfPlaybackTimerEvent ()
 
void HandleEndOfRecordingExitPromptTimerEvent ()
 
void HandleVideoExitDialogTimerEvent ()
 
void HandlePseudoLiveTVTimerEvent ()
 
void HandleSpeedChangeTimerEvent ()
 
void ToggleSleepTimer ()
 
void ToggleSleepTimer (const QString &Time)
 
bool HandleLCDTimerEvent ()
 
void HandleLCDVolumeTimerEvent ()
 
void HandleSaveLastPlayPosEvent ()
 
void EditSchedule (int EditType=kScheduleProgramGuide)
 
bool IsTunablePriv (uint ChanId)
 
void ChangeChannel (const ChannelInfoList &Options)
 
void DoEditSchedule (int EditType=kScheduleProgramGuide)
 
QString GetRecordingGroup () const
 
void UpdateChannelList (int GroupID)
 update the channel list with channels from the selected channel group More...
 
OSDGetOSDL ()
 
void ReturnOSDLock ()
 
void GetPlayerWriteLock ()
 
void GetPlayerReadLock ()
 
void GetPlayerReadLock () const
 
void ReturnPlayerLock ()
 
void ReturnPlayerLock () const
 
void ToggleAutoExpire ()
 
void QuickRecord ()
 
TVState GetState () const
 
void HandleStateChange ()
 Changes the state to the state on the front of the state change queue. More...
 
void GetStatus ()
 
void ForceNextStateNone ()
 
void ScheduleStateChange ()
 
void ScheduleInputChange ()
 
void SetErrored ()
 
void SetInPlayList (bool InPlayList)
 
void setUnderNetworkControl (bool setting)
 
void PrepToSwitchToRecordedProgram (const ProgramInfo &ProgInfo)
 
void PrepareToExitPlayer (int Line, BookmarkAction Bookmark=kBookmarkAuto)
 
void SetExitPlayer (bool SetIt, bool WantsTo)
 
bool RequestNextRecorder (bool ShowDialogs, const ChannelInfoList &Selection=ChannelInfoList())
 
void DeleteRecorder ()
 
bool StartRecorder (int MaxWait=-1)
 Starts recorder, must be called before StartPlayer(). More...
 
void StopStuff (bool StopRingBuffer, bool StopPlayer, bool StopRecorder)
 Can shut down the ringbuffers, the players, and in LiveTV it can shut down the recorders. More...
 
bool StartPlayer (TVState desiredState)
 
bool IsSwitchingCards () const
 Returns true if we are currently in the process of switching recorders. More...
 
bool GetAllowRerecord () const
 Returns true if the user told Mythtv to allow re-recording of the show. More...
 
bool GetEndOfRecording () const
 This is set to true if the player reaches the end of the recording without the user explicitly exiting the player. More...
 
bool GetJumpToProgram () const
 This is set if the user asked MythTV to jump to the previous recording in the playlist. More...
 
bool IsDeleteAllowed ()
 
void ToggleChannelFavorite (const QString &ChangroupName) const
 
void ChangeChannel (ChannelChangeDirection Direction)
 
void ChangeChannel (uint Chanid, const QString &Channum)
 
void ShowPreviousChannel ()
 
void PopPreviousChannel (bool ImmediateChange)
 
void AddKeyToInputQueue (char Key)
 
void ClearInputQueues (bool Hideosd)
 Clear channel key buffer of input keys. More...
 
bool CommitQueuedInput ()
 
bool ProcessSmartChannel (QString &InputStr)
 
bool HasQueuedInput () const
 
bool HasQueuedChannel () const
 
QString GetQueuedInput () const
 
int GetQueuedInputAsInt (bool *OK=nullptr, int Base=10) const
 
QString GetQueuedChanNum () const
 
uint GetQueuedChanID () const
 
void SwitchSource (uint Direction)
 
void SwitchInputs (uint ChanID=0, QString ChanNum="", uint InputID=0)
 
void PauseLiveTV ()
 Used in ChangeChannel() to temporarily stop video output. More...
 
void UnpauseLiveTV (bool Quietly=false)
 Used in ChangeChannel() to restart video output. More...
 
void DoPlay ()
 
float DoTogglePauseStart ()
 
void DoTogglePauseFinish (float Time, bool ShowOSD)
 
void DoTogglePause (bool ShowOSD)
 
bool DoSetPauseState (bool Pause)
 
bool ContextIsPaused (const char *File, int Location)
 
void SetLastProgram (const ProgramInfo *ProgInfo)
 
ProgramInfoGetLastProgram () const
 
void DoSeek (float Time, const QString &Msg, bool TimeIsOffset, bool HonorCutlist)
 
bool DoPlayerSeek (float Time)
 
bool DoPlayerSeekToFrame (uint64_t FrameNum)
 
void DoSeekAbsolute (long long Seconds, bool HonorCutlist)
 
void DoArbSeek (ArbSeekWhence Whence, bool HonorCutlist)
 
void DoJumpFFWD ()
 
void DoJumpRWND ()
 
void DoSeekFFWD ()
 
void DoSeekRWND ()
 
void NormalSpeed ()
 
void ChangeSpeed (int Direction)
 
void ToggleTimeStretch ()
 
void ChangeTimeStretch (int Dir, bool AllowEdit=true)
 
void DVDJumpBack ()
 
void DVDJumpForward ()
 
float StopFFRew ()
 
void ChangeFFRew (int Direction)
 
void SetFFRew (int Index)
 
bool AudioSyncHandleAction (const QStringList &Actions)
 
int GetNumChapters ()
 
void GetChapterTimes (QList< long long > &Times)
 
int GetCurrentChapter ()
 
int GetNumTitles ()
 
int GetCurrentTitle ()
 
int GetTitleDuration (int Title)
 
QString GetTitleName (int Title)
 
void DoSwitchTitle (int Title)
 
int GetNumAngles ()
 
int GetCurrentAngle ()
 
QString GetAngleName (int Angle)
 
void DoSwitchAngle (int Angle)
 
void DoJumpChapter (int Chapter)
 
void DoSkipCommercials (int Direction)
 
void SetAutoCommercialSkip (CommSkipMode SkipMode=kCommSkipOff)
 
void DoQueueTranscode (const QString &Profile)
 
bool IsBookmarkAllowed ()
 
void SetBookmark (bool Clear=false)
 
bool ClearOSD ()
 
void ToggleOSD (bool IncludeStatusOSD)
 Cycle through the available Info OSDs. More...
 
void UpdateOSDProgInfo (const char *WhichInfo)
 Update and display the passed OSD set with programinfo. More...
 
void UpdateOSDStatus (const QString &Title, const QString &Desc, const QString &Value, int Type, const QString &Units, int Position=0, enum OSDTimeout Timeout=kOSDTimeout_Med)
 
void UpdateOSDStatus (osdInfo &Info, int Type, enum OSDTimeout Timeout)
 
void UpdateOSDSeekMessage (const QString &Msg, enum OSDTimeout Timeout)
 
void UpdateOSDInput ()
 
void UpdateOSDSignal (const QStringList &List)
 Updates Signal portion of OSD... More...
 
void UpdateOSDTimeoutMessage ()
 
bool CalcPlayerSliderPosition (osdInfo &info, bool paddedFields=false) const
 
bool SubtitleZoomHandleAction (const QStringList &Actions)
 
bool SubtitleDelayHandleAction (const QStringList &Actions)
 
void DoTogglePictureAttribute (PictureAdjustType Type)
 
bool PictureAttributeHandleAction (const QStringList &Actions)
 
PictureAttribute NextPictureAdjustType (PictureAdjustType Type, PictureAttribute Attr)
 
void OverrideScan (FrameScanType Scan)
 
void ITVRestart (bool IsLive)
 Restart the MHEG/MHP engine. More...
 
void SetManualZoom (bool ZoomON, const QString &Desc)
 
bool ManualZoomHandleAction (const QStringList &Actions)
 
void StartChannelEditMode ()
 Starts channel editing mode. More...
 
bool HandleOSDChannelEdit (const QString &Action)
 Processes channel editing key. More...
 
void ChannelEditAutoFill (InfoMap &Info)
 Automatically fills in as much information as possible. More...
 
void ChannelEditXDSFill (InfoMap &Info)
 
bool DialogIsVisible (const QString &Dialog)
 
void HandleOSDInfo (const QString &Action)
 
void ShowNoRecorderDialog (NoRecorderMsg MsgType=kNoRecorders)
 
void ShowOSDAskAllow ()
 
void HandleOSDAskAllow (const QString &Action)
 
void AskAllowRecording (const QStringList &Msg, int Timeuntil, bool HasRec, bool HasLater)
 
void ShowOSDCutpoint (const QString &Type)
 
bool HandleOSDCutpoint (const QString &Action)
 
void StartProgramEditMode ()
 Starts Program Cut Map Editing mode. More...
 
void ShowOSDAlreadyEditing ()
 
void HandleOSDAlreadyEditing (const QString &Action, bool WasPaused)
 
void ShowOSDSleep ()
 
void HandleOSDSleep (const QString &Action)
 
void SleepDialogTimeout ()
 
void ShowOSDIdle ()
 After idleTimer has expired, display a dialogue warning the user that we will exit LiveTV unless they take action. We change idleTimer, to 45 seconds and when it expires for a second time we quit the player. If the user so decides, they may hit ok and we reset the timer back to the default expiry period. More...
 
void HandleOSDIdle (const QString &Action)
 
void IdleDialogTimeout ()
 
void ShowOSDStopWatchingRecording ()
 
void ShowOSDPromptDeleteRecording (const QString &Title, bool Force=false)
 
bool HandleOSDVideoExit (const QString &Action)
 
void StartOsdNavigation ()
 
void ShowOSDMenu (bool isCompact=false)
 
void FillOSDMenuJumpRec (const QString &Category="", int Level=0, const QString &Selected="")
 
void PlaybackMenuShow (const MythTVMenu &Menu, const QDomNode &Node, const QDomNode &Selected)
 
bool MenuItemDisplay (const MythTVMenuItemContext &Context, MythOSDDialogData *Menu) override
 
bool MenuItemDisplayPlayback (const MythTVMenuItemContext &Context, MythOSDDialogData *Menu)
 
bool MenuItemDisplayCutlist (const MythTVMenuItemContext &Context, MythOSDDialogData *Menu)
 
void PlaybackMenuInit (const MythTVMenu &Menu)
 
void PlaybackMenuDeinit (const MythTVMenu &Menu)
 
void MenuLazyInit (void *Field)
 
void UpdateLCD ()
 
void ShowLCDChannelInfo ()
 
void ShowLCDDVDInfo ()
 

Static Private Member Functions

static TVAcquireRelease (int &RefCount, bool Acquire, bool Create=false)
 Statically create, destroy or check the existence of the TV instance. More...
 
static QList< QKeyEvent > ConvertScreenPressKeyMap (const QString &KeyList)
 
static QSet< uintIsTunableOn (PlayerContext *Context, uint ChanId)
 
static bool StateIsRecording (TVState State)
 
static bool StateIsPlaying (TVState State)
 
static bool StateIsLiveTV (TVState State)
 
static void ToggleChannelFavorite ()
 
static void MenuStrings ()
 

Private Attributes

MythMainWindowm_mainWindow { nullptr }
 
QString m_baseFilters
 
QString m_dbChannelFormat {"<num> <sign>"}
 
uint m_dbIdleTimeout {0}
 
int m_dbPlaybackExitPrompt {0}
 
uint m_dbAutoexpireDefault {0}
 
bool m_dbAutoSetWatched {false}
 
bool m_dbEndOfRecExitPrompt {false}
 
bool m_dbJumpPreferOsd {true}
 
bool m_dbUseGuiSizeForTv {false}
 
bool m_dbUseVideoModes {false}
 
bool m_dbClearSavedPosition {false}
 
bool m_dbRunJobsOnRemote {false}
 
bool m_dbContinueEmbedded {false}
 
bool m_dbRunFrontendInWindow {false}
 
bool m_dbBrowseAlways {false}
 
bool m_dbBrowseAllTuners {false}
 
bool m_dbUseChannelGroups {false}
 
bool m_dbRememberLastChannelGroup {false}
 
ChannelGroupList m_dbChannelGroups
 
bool m_tryUnflaggedSkip {false}
 
bool m_smartForward {false}
 
float m_ffRewRepos {1.0F}
 
bool m_ffRewReverse {false}
 
std::vector< int > m_ffRewSpeeds
 
uint m_vbimode {VBIMode::None}
 
QElapsedTimer m_ctorTime
 
uint m_switchToInputId {0}
 
bool m_wantsToQuit {true}
 True if the user told MythTV to stop plaback. More...
 
bool m_stretchAdjustment {false}
 True if time stretch is turned on. More...
 
bool m_audiosyncAdjustment {false}
 True if audiosync is turned on. More...
 
bool m_subtitleZoomAdjustment {false}
 True if subtitle zoom is turned on. More...
 
bool m_subtitleDelayAdjustment {false}
 True if subtitle delay is turned on. More...
 
bool m_zoomMode {false}
 
bool m_sigMonMode {false}
 Are we in signal monitoring mode? More...
 
bool m_endOfRecording {false}
 !player->IsPlaying() && StateIsPlaying() More...
 
bool m_requestDelete {false}
 User wants last video deleted. More...
 
bool m_allowRerecord {false}
 User wants to rerecord the last video if deleted. More...
 
bool m_doSmartForward {false}
 
bool m_queuedTranscode {false}
 
PictureAdjustType m_adjustingPicture {kAdjustingPicture_None}
 Picture attribute type to modify. More...
 
PictureAttribute m_adjustingPictureAttribute {kPictureAttribute_None}
 Picture attribute to modify (on arrow left or right) More...
 
QMap< QString, AskProgramInfom_askAllowPrograms
 
QMutex m_askAllowLock {QMutex::Recursive}
 
QMutex m_progListsLock
 
QMap< QString, ProgramListm_progLists
 
QMutex m_chanEditMapLock {QMutex::Recursive}
 Lock for chanEditMap and ddMap. More...
 
InfoMap m_chanEditMap
 Channel Editing initial map. More...
 
uint m_sleepIndex {0}
 Index into sleep_times. More...
 
uint m_sleepTimerTimeout {0}
 Current sleep timeout in msec. More...
 
int m_sleepTimerId {0}
 Timer for turning off playback. More...
 
int m_sleepDialogTimerId {0}
 Timer for sleep dialog. More...
 
int m_idleTimerId {0}
 Timer for turning off playback after idle period. More...
 
int m_idleDialogTimerId {0}
 Timer for idle dialog. More...
 
MythTimer m_keyRepeatTimer
 Queue of unprocessed key presses. More...
 
bool m_ccInputMode {false}
 Are we in CC/Teletext page/stream selection mode? More...
 
bool m_asInputMode {false}
 Are we in Arbitrary seek input mode? More...
 
QString m_queuedInput
 Input key presses queued up so far... More...
 
QString m_queuedChanNum
 Input key presses queued up so far to form a valid ChanNum. More...
 
uint m_queuedChanID {0}
 Queued ChanID (from EPG channel selector) More...
 
uint m_initialChanID {0}
 Initial chanid override for Live TV. More...
 
QList< QKeyEvent > m_screenPressKeyMapPlayback
 
QList< QKeyEvent > m_screenPressKeyMapLiveTV
 
QElapsedTimer m_lockTimer
 
bool m_lockTimerOn {false}
 
QDateTime m_lastLockSeenTime
 
QMutex m_lastProgramLock
 
ProgramInfom_lastProgram {nullptr}
 last program played with this player More...
 
bool m_inPlaylist {false}
 show is part of a playlist More...
 
bool m_underNetworkControl {false}
 initial show started via by the network control interface More...
 
bool m_jumpToProgram {false}
 
PlayerContext m_playerContext { kPlayerInUseID }
 
MythPlayerUIm_player { nullptr }
 
QReadWriteLock m_playerLock
 lock on player and playerActive changes More...
 
bool m_noHardwareDecoders {false}
 
RemoteEncoderm_switchToRec {nullptr}
 Main recorder to use after a successful SwitchCards() call. More...
 
QString m_lcdTitle
 
QString m_lcdSubtitle
 
QString m_lcdCallsign
 
TvPlayWindowm_myWindow {nullptr}
 Our screen, if it exists. More...
 
QRect m_playerBounds
 Prior GUI window bounds, for DoEditSchedule() and player exit(). More...
 
QRect m_savedGuiBounds
 
bool m_weDisabledGUI {false}
 true if this instance disabled MythUI drawing. More...
 
bool m_ignoreKeyPresses {false}
 should we ignore keypresses More...
 
bool m_savedPause {false}
 saved pause state before embedding More...
 
QMutex m_channelGroupLock
 Lock necessary when modifying channel group variables. More...
 
volatile int m_channelGroupId {-1}
 
ChannelInfoList m_channelGroupChannelList
 
MythDeque< QString > m_networkControlCommands
 
volatile int m_lcdTimerId {0}
 
volatile int m_lcdVolumeTimerId {0}
 
volatile int m_networkControlTimerId {0}
 
volatile int m_ccInputTimerId {0}
 
volatile int m_asInputTimerId {0}
 
volatile int m_queueInputTimerId {0}
 
volatile int m_endOfPlaybackTimerId {0}
 
volatile int m_endOfRecPromptTimerId {0}
 
volatile int m_videoExitDialogTimerId {0}
 
volatile int m_pseudoChangeChanTimerId {0}
 
volatile int m_speedChangeTimerId {0}
 
volatile int m_errorRecoveryTimerId {0}
 
volatile int m_exitPlayerTimerId {0}
 
volatile int m_saveLastPlayPosTimerId {0}
 
volatile int m_signalMonitorTimerId {0}
 
QStringList m_tvmTracks [kTrackTypeCount]
 
int m_tvmCurtrack [kTrackTypeCount] {}
 
bool m_tvmAvsync {true}
 
bool m_tvmUpmixing {false}
 
bool m_tvmCanUpmix {false}
 
bool m_tvmFillAutoDetect {false}
 
uint m_tvmSup {kPictureAttributeSupported_None}
 
StereoscopicMode m_tvmStereoMode {kStereoscopicModeAuto}
 
int m_tvmSpeedX100 {100}
 
TVState m_tvmState {kState_None}
 
bool m_tvmIsRecording {false}
 
bool m_tvmIsRecorded {false}
 
bool m_tvmIsVideo {false}
 
CommSkipMode m_tvmCurSkip {kCommSkipOff}
 
bool m_tvmIsPaused {false}
 
int m_tvmFreeRecorderCount {-1}
 
bool m_tvmIsDvd {false}
 
bool m_tvmIsBd {false}
 
bool m_tvmJump {false}
 
bool m_tvmIsLiveTv {false}
 
bool m_tvmPreviousChan {false}
 
int m_tvmNumChapters {0}
 
int m_tvmCurrentChapter {0}
 
QList< long long > m_tvmChapterTimes
 
int m_tvmNumAngles {0}
 
int m_tvmCurrentAngle {0}
 
int m_tvmNumTitles {0}
 
int m_tvmCurrentTitle {0}
 
uint m_tvmSubsCapMode {0}
 
bool m_tvmSubsHaveText {false}
 
bool m_tvmSubsForcedOn {true}
 
bool m_tvmSubsEnabled {false}
 
bool m_tvmSubsHaveSubs {false}
 
bool m_tvmIsOn {false}
 
bool m_tvmTranscoding {false}
 
QVariant m_tvmJumprecBackHack
 
MythTVMenu m_playbackMenu
 
MythTVMenu m_playbackCompactMenu
 
MythTVMenu m_cutlistMenu
 
MythTVMenu m_cutlistCompactMenu
 

Static Private Attributes

static QStringList lastProgramStringList = QStringList()
 stores last program info. More...
 
static EMBEDRETURNVOID RunPlaybackBoxPtr = nullptr
 function pointer for RunPlaybackBox in playbackbox.cpp More...
 
static EMBEDRETURNVOID RunViewScheduledPtr = nullptr
 function pointer for RunViewScheduled in viewscheduled.cpp More...
 
static EMBEDRETURNVOIDEPG RunProgramGuidePtr = nullptr
 function pointer for RunProgramGuide in guidegrid.cpp More...
 
static EMBEDRETURNVOIDFINDER RunProgramFinderPtr = nullptr
 function pointer for RunProgramFinder in progfind.cpp More...
 
static EMBEDRETURNVOIDSCHEDIT RunScheduleEditorPtr = nullptr
 function pointer for RunScheduleEditor in scheduleeditor.cpp More...
 
static const std::vector< SleepTimerInfos_sleepTimes
 
static const int kScreenPressRegionCount = 12
 screen area to keypress translation region is now 0..11 0 1 2 3 4 5 6 7 8 9 10 11 More...
 

Friends

class PlaybackBox
 
class GuideGrid
 
class TVBrowseHelper
 

Additional Inherited Members

- Protected Member Functions inherited from ReferenceCounter
virtual ~ReferenceCounter (void)
 Called on destruction, will warn if object deleted with references in place. More...
 
- Protected Member Functions inherited from TVBrowseHelper
 TVBrowseHelper (TV *Parent)
 
 ~TVBrowseHelper () override
 
void BrowseInit (uint BrowseMaxForward, bool BrowseAllTuners, bool UseChannelGroups, const QString &DBChannelOrdering)
 
void BrowseStop ()
 
void BrowseWait ()
 
bool BrowseStart (bool SkipBrowse=false)
 Begins channel browsing. More...
 
void BrowseEnd (bool ChangeChannel)
 Ends channel browsing. More...
 
void BrowseDispInfo (const BrowseInfo &Browseinfo)
 
void BrowseDispInfo (BrowseDirection Direction)
 
void BrowseChannel (const QString &Channum)
 
BrowseInfo GetBrowsedInfo () const
 
uint GetBrowseChanId (const QString &Channum, uint PrefCardid, uint PrefSourceid) const
 Returns a chanid for the channum, or 0 if none is available. More...
 
- Protected Member Functions inherited from MThread
int exec (void)
 Enters the qt event loop. call exit or quit to exit thread. More...
 
 MThread (const QString &objectName)
 Standard constructor. More...
 
 MThread (const QString &objectName, QRunnable *runnable)
 Use this constructor if you want the default run() method to run the QRunnable's run() method instead of entering the Qt event loop. More...
 
virtual ~MThread ()
 
 MThread (const MThread &)=delete
 
MThreadoperator= (const MThread &)=delete
 
void RunProlog (void)
 Sets up a thread, call this if you reimplement run(). More...
 
void RunEpilog (void)
 Cleans up a thread's resources, call this if you reimplement run(). More...
 
QThread * qthread (void)
 Returns the thread, this will always return the same pointer no matter how often you restart the thread. More...
 
void setObjectName (const QString &name)
 
QString objectName (void) const
 
void setPriority (QThread::Priority priority)
 
QThread::Priority priority (void) const
 
bool isFinished (void) const
 
bool isRunning (void) const
 
void setStackSize (uint stackSize)
 
uint stackSize (void) const
 
void exit (int retcode=0)
 Use this to exit from the thread if you are using a Qt event loop. More...
 
void start (QThread::Priority p=QThread::InheritPriority)
 Tell MThread to start running the thread in the near future. More...
 
void terminate (void)
 Kill a thread unsafely. More...
 
void quit (void)
 calls exit(0) More...
 
bool wait (unsigned long time=ULONG_MAX)
 Wait for the MThread to exit, with a maximum timeout. More...
 
- Static Protected Member Functions inherited from MThread
static void setTerminationEnabled (bool enabled=true)
 
static void sleep (unsigned long time)
 
static void msleep (unsigned long time)
 
static void usleep (unsigned long time)
 
static void ThreadSetup (const QString &name)
 This is to be called on startup in those few threads that haven't been ported to MThread. More...
 
static void ThreadCleanup (void)
 This is to be called on exit in those few threads that haven't been ported to MThread. More...
 
static void Cleanup (void)
 This will print out all the running threads, call exit(1) on each and then wait up to 5 seconds total for all the threads to exit. More...
 
static void GetAllThreadNames (QStringList &list)
 
static void GetAllRunningThreadNames (QStringList &list)
 
- Protected Attributes inherited from TVPlaybackState
MythOverlayState m_overlayState { }
 
MythAudioPlayerState m_audioPlayerState { }
 
MythAudioState m_audioState { }
 
MythCaptionsState m_captionsState { }
 
MythVideoBoundsState m_videoBoundsState { }
 
MythVisualiserState m_visualiserState { }
 
- Protected Attributes inherited from ReferenceCounter
bool m_logDebug
 This is used to suppress creating LoggingItem classes for LoggingItem reference count changes. More...
 
QAtomicInt m_referenceCount {1}
 
- Protected Attributes inherited from TVBrowseHelper
int m_browseTimerId { 0 }
 
- Protected Attributes inherited from MThread
MThreadInternalm_thread {nullptr}
 
QRunnable * m_runnable {nullptr}
 
bool m_prologExecuted {true}
 
bool m_epilogExecuted {true}
 
- Static Protected Attributes inherited from MThread
static const int kDefaultStartTimeout
 

Detailed Description

Control TV playback.

Signals Emitted:\n TVPlaybackAborted()
TV playback failed to start (typically, TV playback was started when another playback is currently going)
Signals Emitted:\n TVPlaybackStarted()
TV playback has started, video is now playing
Signals Emitted:\n TVPlaybackStopped()
TV playback has stopped and playback has exited
Signals Emitted:\n TVPlaybackUnpaused()
TV playback has resumed, following a Pause action
Signals Emitted:\n TVPlaybackPaused()
TV playback has been paused
Signals Emitted:\n TVPlaybackSought(qint position_seconds)
Absolute seek has completed to position_seconds

Definition at line 152 of file tv_play.h.

Member Enumeration Documentation

◆ BookmarkAction

enum TV::BookmarkAction
private
Enumerator
kBookmarkAlways 
kBookmarkNever 
kBookmarkAuto 

Definition at line 289 of file tv_play.h.

◆ ArbSeekWhence

enum TV::ArbSeekWhence
private
Enumerator
ARBSEEK_SET 
ARBSEEK_REWIND 
ARBSEEK_FORWARD 
ARBSEEK_END 

Definition at line 363 of file tv_play.h.

Constructor & Destructor Documentation

◆ TV()

TV::TV ( MythMainWindow MainWindow)
explicitprivate
See also
Init()

This list is not complete:)

Todo:
Remove m_playerLock. m_playerContext is always present and we should be using the lower level locks in PlayerContext (around player etc)
Todo:
Move TV only state currently held in PlayerContext into TV
Todo:
Try and remove friend class usage. This is a blunt tool and allows potentially unsafe calls into TV

Definition at line 1037 of file tv_play.cpp.

◆ ~TV()

TV::~TV ( )
overrideprivate

Definition at line 1262 of file tv_play.cpp.

Member Function Documentation

◆ IsTVRunning()

bool TV::IsTVRunning ( )
static

◆ StartTV()

bool TV::StartTV ( ProgramInfo TVRec,
uint  Flags,
const ChannelInfoList Selection = ChannelInfoList() 
)
static

Start playback of media.

This is the single global entry point for playing media.

This is a 'blocking' call i.e. we do not actually return to the main event loop until this function returns. Playback is handled manually from this function with regular calls to QCoreApplication::processEvents from within PlaybackLoop.

Returns
true if the recording completed when exiting.

Definition at line 323 of file tv_play.cpp.

Referenced by GuideGrid::customEvent(), internal_play_media(), main(), PlaybackBox::Play(), and startTVNormal().

◆ IsPaused()

bool TV::IsPaused ( void  )
static

Check whether playback is paused.

This is currently used by MythAirplayServer.

Returns
true if a TV playback is currently going and is paused; otherwise returns false

Definition at line 4856 of file tv_play.cpp.

Referenced by MythAirplayServer::PausePlayback().

◆ InitKeys()

void TV::InitKeys ( )
static

Definition at line 526 of file tv_play.cpp.

Referenced by main(), and ReloadKeys().

◆ SetFuncPtr()

void TV::SetFuncPtr ( const char *  Name,
void *  Pointer 
)
static

Import pointers to functions used to embed the TV window into other containers e.g.

playbackbox

Definition at line 511 of file tv_play.cpp.

Referenced by SetFuncPtrs().

◆ ConfiguredTunerCards()

int TV::ConfiguredTunerCards ( )
static

If any cards are configured, return the number.

Definition at line 154 of file tv_play.cpp.

Referenced by isLiveTVAvailable(), and StartTV().

◆ IsTunable()

bool TV::IsTunable ( uint  ChanId)
static

◆ ReloadKeys()

void TV::ReloadKeys ( )

Definition at line 997 of file tv_play.cpp.

◆ IsSameProgram()

bool TV::IsSameProgram ( const ProgramInfo ProgInfo) const

◆ event

bool TV::event ( QEvent *  Event)
overrideslot

This handles all standard events.

Definition at line 3044 of file tv_play.cpp.

Referenced by eventFilter().

◆ eventFilter

bool TV::eventFilter ( QObject *  Object,
QEvent *  Event 
)
overrideslot

This selectively blocks KeyPress and Resize events.

Definition at line 2997 of file tv_play.cpp.

◆ timerEvent

void TV::timerEvent ( QTimerEvent *  Event)
overrideslot

Definition at line 2435 of file tv_play.cpp.

◆ StopPlayback

void TV::StopPlayback ( void  )
slot

Definition at line 304 of file tv_play.cpp.

Referenced by InitFromDB(), and onApplicationStateChange().

◆ HandleOSDClosed

void TV::HandleOSDClosed ( int  OSDType)
slot

Definition at line 7707 of file tv_play.cpp.

Referenced by OSD::OSD().

◆ PlaybackExiting

void TV::PlaybackExiting ( TV Player)
signal

Referenced by GuideGrid::GuideGrid(), and StopStuff().

◆ onApplicationStateChange

void TV::onApplicationStateChange ( Qt::ApplicationState  State)
protectedslot

Definition at line 10282 of file tv_play.cpp.

Referenced by TV().

◆ customEvent

void TV::customEvent ( QEvent *  Event)
overrideprotectedslot

This handles all custom events.

Definition at line 7219 of file tv_play.cpp.

Referenced by eventFilter().

◆ VolumeChange

void TV::VolumeChange ( bool  Up,
int  NewVolume = -1 
)
protectedslot

◆ Embed

void TV::Embed ( bool  Embed,
QRect  Rect = {},
const QStringList &  Data = {} 
)
privateslot

Definition at line 6812 of file tv_play.cpp.

Referenced by TV().

◆ GetPlayerContext()

PlayerContext * TV::GetPlayerContext ( )
private

Return a pointer to TV::m_playerContext.

Note
This should NOT be called from anything other than the main thread and GetPlayerReadLock or GetPlayerWriteLock should be called first (and ReleasePlayerLock called when finished).
This method is likely to be changed and/or removed.

Definition at line 229 of file tv_play.cpp.

Referenced by TVBrowseHelper::BrowseChannel(), TVBrowseHelper::BrowseStart(), GuideGrid::GetAlternateChannelIndex(), TVBrowseHelper::GetNextProgram(), IsPaused(), IsTunable(), StartTV(), and GuideGrid::updateChannelsNonUI().

◆ CreatePlayer()

bool TV::CreatePlayer ( TVState  State,
bool  Muted = false 
)
private

Definition at line 234 of file tv_play.cpp.

Referenced by StartPlayer(), and SwitchInputs().

◆ StartPlaying()

bool TV::StartPlaying ( int  MaxWait = -1)
private

Definition at line 270 of file tv_play.cpp.

Referenced by CreatePlayer().

◆ AcquireRelease()

TV * TV::AcquireRelease ( int &  RefCount,
bool  Acquire,
bool  Create = false 
)
staticprivate

Statically create, destroy or check the existence of the TV instance.

Parameters
RefCountWill be set to the reference count for the return object
AcquireIncrease refcount (or create) if true; reduce refcount (and possibly delete) for false
CreateIf false (default) do not create TV if it does not exist and retun nullptr

Definition at line 176 of file tv_play.cpp.

Referenced by IsPaused(), IsTunable(), IsTVRunning(), and StartTV().

◆ Init()

bool TV::Init ( void  )
private

Performs instance initialization, returns true on success.

Returns
Returns true on success, false on failure.

Definition at line 1180 of file tv_play.cpp.

Referenced by StartTV().

◆ InitFromDB()

void TV::InitFromDB ( )
private

Definition at line 1066 of file tv_play.cpp.

Referenced by TV().

◆ ConvertScreenPressKeyMap()

QList< QKeyEvent > TV::ConvertScreenPressKeyMap ( const QString &  KeyList)
staticprivate

Definition at line 3221 of file tv_play.cpp.

Referenced by InitFromDB().

◆ LiveTV()

bool TV::LiveTV ( bool  ShowDialogs,
const ChannelInfoList Selection 
)
private

Starts LiveTV.

Parameters
ShowDialogsif true error dialogs are shown, if false they are not
SelectionWhat channel to tune.

Definition at line 1558 of file tv_play.cpp.

Referenced by StartTV().

◆ Playback()

int TV::Playback ( const ProgramInfo ProgInfo)
private

Definition at line 1936 of file tv_play.cpp.

Referenced by StartTV().

◆ PlaybackLoop()

void TV::PlaybackLoop ( )
private

The main playback loop.

Definition at line 1330 of file tv_play.cpp.

Referenced by StartTV().

◆ ProcessKeypressOrGesture()

bool TV::ProcessKeypressOrGesture ( QEvent *  Event)
private

Definition at line 3293 of file tv_play.cpp.

Referenced by event().

◆ TranslateKeyPressOrGesture()

bool TV::TranslateKeyPressOrGesture ( const QString &  Context,
QEvent *  Event,
QStringList &  Actions,
bool  IsLiveTV,
bool  AllowJumps = true 
)
private

Definition at line 3280 of file tv_play.cpp.

Referenced by ProcessKeypressOrGesture().

◆ TranslateGesture()

bool TV::TranslateGesture ( const QString &  Context,
MythGestureEvent Event,
QStringList &  Actions,
bool  IsLiveTV 
)
private

Definition at line 3249 of file tv_play.cpp.

Referenced by TranslateKeyPressOrGesture().

◆ ProcessNetworkControlCommand()

void TV::ProcessNetworkControlCommand ( const QString &  Command)
private

Definition at line 4258 of file tv_play.cpp.

Referenced by timerEvent().

◆ HandleTrackAction()

bool TV::HandleTrackAction ( const QString &  Action)
private

Definition at line 3102 of file tv_play.cpp.

Referenced by ActiveHandleAction(), CommitQueuedInput(), and OSDDialogEvent().

◆ ActiveHandleAction()

bool TV::ActiveHandleAction ( const QStringList &  Actions,
bool  IsDVD,
bool  IsDVDStillFrame 
)
private

Definition at line 3796 of file tv_play.cpp.

Referenced by OSDDialogEvent(), and ProcessKeypressOrGesture().

◆ BrowseHandleAction()

bool TV::BrowseHandleAction ( const QStringList &  Actions)
private

Definition at line 3535 of file tv_play.cpp.

Referenced by ProcessKeypressOrGesture().

◆ OSDDialogEvent()

void TV::OSDDialogEvent ( int  Result,
const QString &  Text,
QString  Action 
)
private

Definition at line 8071 of file tv_play.cpp.

Referenced by customEvent().

◆ ToggleHandleAction()

bool TV::ToggleHandleAction ( const QStringList &  Actions,
bool  IsDVD 
)
private

Definition at line 4065 of file tv_play.cpp.

Referenced by ProcessKeypressOrGesture().

◆ FFRewHandleAction()

bool TV::FFRewHandleAction ( const QStringList &  Actions)
private

Definition at line 4028 of file tv_play.cpp.

Referenced by ProcessKeypressOrGesture().

◆ ActivePostQHandleAction()

bool TV::ActivePostQHandleAction ( const QStringList &  Actions)
private

Definition at line 4152 of file tv_play.cpp.

Referenced by OSDDialogEvent(), and ProcessKeypressOrGesture().

◆ HandleJumpToProgramAction()

bool TV::HandleJumpToProgramAction ( const QStringList &  Actions)
private

Definition at line 9535 of file tv_play.cpp.

Referenced by ActiveHandleAction(), and OSDDialogEvent().

◆ SeekHandleAction()

bool TV::SeekHandleAction ( const QStringList &  Actions,
bool  IsDVD 
)
private

Definition at line 4966 of file tv_play.cpp.

Referenced by ActiveHandleAction().

◆ TimeStretchHandleAction()

bool TV::TimeStretchHandleAction ( const QStringList &  Actions)
private

Definition at line 3686 of file tv_play.cpp.

Referenced by ProcessKeypressOrGesture().

◆ DiscMenuHandleAction()

bool TV::DiscMenuHandleAction ( const QStringList &  Actions) const
private

Definition at line 3780 of file tv_play.cpp.

Referenced by ProcessKeypressOrGesture().

◆ StartTimer()

int TV::StartTimer ( int  Interval,
int  Line 
)
private

◆ KillTimer()

void TV::KillTimer ( int  Id)
private

◆ SetSpeedChangeTimer()

void TV::SetSpeedChangeTimer ( int  When,
int  Line 
)
private

◆ HandleEndOfPlaybackTimerEvent()

void TV::HandleEndOfPlaybackTimerEvent ( )
private

Definition at line 2855 of file tv_play.cpp.

Referenced by timerEvent().

◆ HandleEndOfRecordingExitPromptTimerEvent()

void TV::HandleEndOfRecordingExitPromptTimerEvent ( )
private

Definition at line 2886 of file tv_play.cpp.

Referenced by timerEvent().

◆ HandleVideoExitDialogTimerEvent()

void TV::HandleVideoExitDialogTimerEvent ( )
private

Definition at line 2916 of file tv_play.cpp.

Referenced by timerEvent().

◆ HandlePseudoLiveTVTimerEvent()

void TV::HandlePseudoLiveTVTimerEvent ( )
private

Definition at line 2941 of file tv_play.cpp.

Referenced by timerEvent().

◆ HandleSpeedChangeTimerEvent()

void TV::HandleSpeedChangeTimerEvent ( )
private

Definition at line 2982 of file tv_play.cpp.

Referenced by timerEvent().

◆ ToggleSleepTimer() [1/2]

void TV::ToggleSleepTimer ( )
private

Definition at line 7084 of file tv_play.cpp.

Referenced by OSDDialogEvent(), and ToggleHandleAction().

◆ ToggleSleepTimer() [2/2]

void TV::ToggleSleepTimer ( const QString &  Time)
private

Definition at line 9609 of file tv_play.cpp.

◆ HandleLCDTimerEvent()

bool TV::HandleLCDTimerEvent ( )
private

Definition at line 2655 of file tv_play.cpp.

Referenced by timerEvent().

◆ HandleLCDVolumeTimerEvent()

void TV::HandleLCDVolumeTimerEvent ( )
private

Definition at line 2696 of file tv_play.cpp.

Referenced by timerEvent().

◆ HandleSaveLastPlayPosEvent()

void TV::HandleSaveLastPlayPosEvent ( )
private

Definition at line 10131 of file tv_play.cpp.

Referenced by timerEvent().

◆ EditSchedule()

void TV::EditSchedule ( int  EditType = kScheduleProgramGuide)
private

◆ IsTunablePriv()

bool TV::IsTunablePriv ( uint  ChanId)
private

Definition at line 6751 of file tv_play.cpp.

Referenced by ChangeChannel(), and HandleStateChange().

◆ IsTunableOn()

QSet< uint > TV::IsTunableOn ( PlayerContext Context,
uint  ChanId 
)
staticprivate

Definition at line 6768 of file tv_play.cpp.

Referenced by ChangeChannel(), IsTunable(), IsTunablePriv(), and RequestNextRecorder().

◆ ChangeChannel() [1/3]

void TV::ChangeChannel ( const ChannelInfoList Options)
private

◆ DoEditSchedule()

void TV::DoEditSchedule ( int  EditType = kScheduleProgramGuide)
private

Definition at line 6861 of file tv_play.cpp.

Referenced by customEvent().

◆ GetRecordingGroup()

QString TV::GetRecordingGroup ( void  ) const
private

Definition at line 10194 of file tv_play.cpp.

Referenced by FillOSDMenuJumpRec(), and PlaybackBox::PlaybackBox().

◆ UpdateChannelList()

void TV::UpdateChannelList ( int  GroupID)
private

update the channel list with channels from the selected channel group

Definition at line 1366 of file tv_play.cpp.

Referenced by OSDDialogEvent(), and GuideGrid::~GuideGrid().

◆ GetOSDL()

OSD * TV::GetOSDL ( )
private

◆ ReturnOSDLock()

void TV::ReturnOSDLock ( )
private

◆ GetPlayerWriteLock()

void TV::GetPlayerWriteLock ( )
private

Definition at line 10257 of file tv_play.cpp.

Referenced by customEvent(), and ScheduleStateChange().

◆ GetPlayerReadLock() [1/2]

void TV::GetPlayerReadLock ( )
private

◆ GetPlayerReadLock() [2/2]

void TV::GetPlayerReadLock ( ) const
private

Definition at line 10267 of file tv_play.cpp.

◆ ReturnPlayerLock() [1/2]

void TV::ReturnPlayerLock ( )
private

◆ ReturnPlayerLock() [2/2]

void TV::ReturnPlayerLock ( ) const
private

Definition at line 10277 of file tv_play.cpp.

◆ ToggleAutoExpire()

void TV::ToggleAutoExpire ( )
private

Definition at line 9487 of file tv_play.cpp.

Referenced by OSDDialogEvent().

◆ QuickRecord()

void TV::QuickRecord ( void  )
private

Definition at line 7632 of file tv_play.cpp.

Referenced by BrowseHandleAction(), and ToggleHandleAction().

◆ StateIsRecording()

bool TV::StateIsRecording ( TVState  State)
staticprivate

Definition at line 1966 of file tv_play.cpp.

Referenced by PrepareToExitPlayer().

◆ StateIsPlaying()

bool TV::StateIsPlaying ( TVState  State)
staticprivate

◆ StateIsLiveTV()

bool TV::StateIsLiveTV ( TVState  State)
staticprivate

◆ GetState()

TVState TV::GetState ( void  ) const
private

◆ HandleStateChange()

void TV::HandleStateChange ( )
private

Changes the state to the state on the front of the state change queue.

Note: There must exist a state transition from any state we can enter to the kState_None state, as this is used to shutdown TV in RunTV.

Definition at line 2006 of file tv_play.cpp.

Referenced by LiveTV(), Playback(), and ScheduleStateChange().

◆ GetStatus()

void TV::GetStatus ( void  )
private

Definition at line 1398 of file tv_play.cpp.

Referenced by customEvent().

◆ ForceNextStateNone()

void TV::ForceNextStateNone ( void  )
private

Definition at line 2724 of file tv_play.cpp.

Referenced by HandleEndOfPlaybackTimerEvent(), and timerEvent().

◆ ScheduleStateChange()

void TV::ScheduleStateChange ( )
private

Definition at line 2730 of file tv_play.cpp.

Referenced by customEvent(), ForceNextStateNone(), StartPlayer(), and SwitchInputs().

◆ ScheduleInputChange()

void TV::ScheduleInputChange ( )
private

Definition at line 2753 of file tv_play.cpp.

Referenced by OSDDialogEvent(), and SwitchSource().

◆ SetErrored()

void TV::SetErrored ( )
private

Definition at line 2770 of file tv_play.cpp.

Referenced by HandleStateChange(), StartRecorder(), and SwitchInputs().

◆ SetInPlayList()

void TV::SetInPlayList ( bool  InPlayList)
inlineprivate

Definition at line 286 of file tv_play.h.

Referenced by OSDDialogEvent(), and StartTV().

◆ setUnderNetworkControl()

void TV::setUnderNetworkControl ( bool  setting)
inlineprivate

Definition at line 287 of file tv_play.h.

Referenced by StartTV().

◆ PrepToSwitchToRecordedProgram()

void TV::PrepToSwitchToRecordedProgram ( const ProgramInfo ProgInfo)
private

Definition at line 2777 of file tv_play.cpp.

Referenced by Embed(), and HandleJumpToProgramAction().

◆ PrepareToExitPlayer()

void TV::PrepareToExitPlayer ( int  Line,
BookmarkAction  Bookmark = kBookmarkAuto 
)
private

◆ SetExitPlayer()

void TV::SetExitPlayer ( bool  SetIt,
bool  WantsTo 
)
private

◆ RequestNextRecorder()

bool TV::RequestNextRecorder ( bool  ShowDialogs,
const ChannelInfoList Selection = ChannelInfoList() 
)
private

Definition at line 1585 of file tv_play.cpp.

Referenced by LiveTV().

◆ DeleteRecorder()

void TV::DeleteRecorder ( )
private

◆ StartRecorder()

bool TV::StartRecorder ( int  MaxWait = -1)
private

Starts recorder, must be called before StartPlayer().

Parameters
MaxWaitHow long to wait for RecorderBase to start recording. If not provided, this defaults to 40 seconds.
Returns
true when successful, false otherwise.

Definition at line 2351 of file tv_play.cpp.

Referenced by HandleStateChange(), and SwitchInputs().

◆ StopStuff()

void TV::StopStuff ( bool  StopRingBuffer,
bool  StopPlayer,
bool  StopRecorder 
)
private

Can shut down the ringbuffers, the players, and in LiveTV it can shut down the recorders.

The player needs to be partially shutdown before the recorder, and partially shutdown after the recorder. Hence these are shutdown from within the same method. Also, shutting down things in the right order avoids spewing error messages...

Parameters
StopRingBufferSet to true if ringbuffer must be shut down.
StopPlayerSet to true if player must be shut down.
StopRecorderSet to true if recorder must be shut down.

Definition at line 2400 of file tv_play.cpp.

Referenced by HandleStateChange(), and SwitchInputs().

◆ StartPlayer()

bool TV::StartPlayer ( TVState  desiredState)
private

Definition at line 4733 of file tv_play.cpp.

Referenced by HandleStateChange().

◆ IsSwitchingCards()

bool TV::IsSwitchingCards ( ) const
inlineprivate

Returns true if we are currently in the process of switching recorders.

Definition at line 305 of file tv_play.h.

◆ GetAllowRerecord()

bool TV::GetAllowRerecord ( ) const
inlineprivate

Returns true if the user told Mythtv to allow re-recording of the show.

Definition at line 307 of file tv_play.h.

Referenced by StartTV().

◆ GetEndOfRecording()

bool TV::GetEndOfRecording ( ) const
inlineprivate

This is set to true if the player reaches the end of the recording without the user explicitly exiting the player.

Definition at line 310 of file tv_play.h.

Referenced by PrepareToExitPlayer(), and StartTV().

◆ GetJumpToProgram()

bool TV::GetJumpToProgram ( ) const
inlineprivate

This is set if the user asked MythTV to jump to the previous recording in the playlist.

Definition at line 313 of file tv_play.h.

Referenced by StartTV().

◆ IsDeleteAllowed()

bool TV::IsDeleteAllowed ( )
private

Definition at line 9927 of file tv_play.cpp.

Referenced by HandleOSDVideoExit(), and ShowOSDStopWatchingRecording().

◆ ToggleChannelFavorite() [1/2]

void TV::ToggleChannelFavorite ( )
staticprivate

Definition at line 5734 of file tv_play.cpp.

Referenced by ToggleHandleAction().

◆ ToggleChannelFavorite() [2/2]

void TV::ToggleChannelFavorite ( const QString &  ChangroupName) const
private

Definition at line 5741 of file tv_play.cpp.

◆ ChangeChannel() [2/3]

void TV::ChangeChannel ( ChannelChangeDirection  Direction)
private

Definition at line 5964 of file tv_play.cpp.

◆ ChangeChannel() [3/3]

void TV::ChangeChannel ( uint  Chanid,
const QString &  Channum 
)
private

Definition at line 6057 of file tv_play.cpp.

◆ ShowPreviousChannel()

void TV::ShowPreviousChannel ( )
private

Definition at line 6219 of file tv_play.cpp.

Referenced by PopPreviousChannel().

◆ PopPreviousChannel()

void TV::PopPreviousChannel ( bool  ImmediateChange)
private

Definition at line 6228 of file tv_play.cpp.

Referenced by ActivePostQHandleAction(), and OSDDialogEvent().

◆ AddKeyToInputQueue()

void TV::AddKeyToInputQueue ( char  Key)
private

◆ ClearInputQueues()

void TV::ClearInputQueues ( bool  Hideosd)
private

Clear channel key buffer of input keys.

Parameters
Hideosdif true, hides "channel_number" OSDSet.

Definition at line 5781 of file tv_play.cpp.

Referenced by ActiveHandleAction(), ChangeChannel(), ClearOSD(), CommitQueuedInput(), DoArbSeek(), HandleTrackAction(), Init(), and timerEvent().

◆ CommitQueuedInput()

bool TV::CommitQueuedInput ( )
private

◆ ProcessSmartChannel()

bool TV::ProcessSmartChannel ( QString &  InputStr)
private

Definition at line 5843 of file tv_play.cpp.

Referenced by AddKeyToInputQueue().

◆ HasQueuedInput()

bool TV::HasQueuedInput ( ) const
inlineprivate

◆ HasQueuedChannel()

bool TV::HasQueuedChannel ( ) const
inlineprivate

Definition at line 333 of file tv_play.h.

Referenced by ClearOSD(), and timerEvent().

◆ GetQueuedInput()

QString TV::GetQueuedInput ( ) const
private

Definition at line 5747 of file tv_play.cpp.

Referenced by AddKeyToInputQueue().

◆ GetQueuedInputAsInt()

int TV::GetQueuedInputAsInt ( bool OK = nullptr,
int  Base = 10 
) const
private

Definition at line 5752 of file tv_play.cpp.

Referenced by DoArbSeek(), and HandleTrackAction().

◆ GetQueuedChanNum()

QString TV::GetQueuedChanNum ( ) const
private

Definition at line 5757 of file tv_play.cpp.

Referenced by CommitQueuedInput(), and ProcessSmartChannel().

◆ GetQueuedChanID()

uint TV::GetQueuedChanID ( ) const
inlineprivate

Definition at line 339 of file tv_play.h.

Referenced by ChangeChannel(), and CommitQueuedInput().

◆ SwitchSource()

void TV::SwitchSource ( uint  Direction)
private

Definition at line 5519 of file tv_play.cpp.

Referenced by ActivePostQHandleAction().

◆ SwitchInputs()

void TV::SwitchInputs ( uint  ChanID = 0,
QString  ChanNum = "",
uint  InputID = 0 
)
private

Definition at line 5575 of file tv_play.cpp.

Referenced by ActivePostQHandleAction(), ChangeChannel(), and ScheduleInputChange().

◆ PauseLiveTV()

void TV::PauseLiveTV ( )
private

Used in ChangeChannel() to temporarily stop video output.

Definition at line 9705 of file tv_play.cpp.

Referenced by ActiveHandleAction(), and ChangeChannel().

◆ UnpauseLiveTV()

void TV::UnpauseLiveTV ( bool  Quietly = false)
private

Used in ChangeChannel() to restart video output.

Definition at line 9742 of file tv_play.cpp.

Referenced by ActiveHandleAction(), ChangeChannel(), and SwitchInputs().

◆ DoPlay()

void TV::DoPlay ( )
private

Definition at line 4758 of file tv_play.cpp.

Referenced by ActiveHandleAction(), and OSDDialogEvent().

◆ DoTogglePauseStart()

float TV::DoTogglePauseStart ( )
private

Definition at line 4792 of file tv_play.cpp.

Referenced by DoSetPauseState(), and DoTogglePause().

◆ DoTogglePauseFinish()

void TV::DoTogglePauseFinish ( float  Time,
bool  ShowOSD 
)
private

Definition at line 4821 of file tv_play.cpp.

Referenced by DoSetPauseState(), and DoTogglePause().

◆ DoTogglePause()

void TV::DoTogglePause ( bool  ShowOSD)
private

◆ DoSetPauseState()

bool TV::DoSetPauseState ( bool  Pause)
private

Definition at line 6850 of file tv_play.cpp.

Referenced by DoEditSchedule(), and Embed().

◆ ContextIsPaused()

bool TV::ContextIsPaused ( const char *  File,
int  Location 
)
private

◆ SetLastProgram()

void TV::SetLastProgram ( const ProgramInfo ProgInfo)
private

◆ GetLastProgram()

ProgramInfo * TV::GetLastProgram ( ) const
private

Definition at line 10186 of file tv_play.cpp.

Referenced by FillOSDMenuJumpRec(), and StartTV().

◆ DoSeek()

void TV::DoSeek ( float  Time,
const QString &  Msg,
bool  TimeIsOffset,
bool  HonorCutlist 
)
private

◆ DoPlayerSeek()

bool TV::DoPlayerSeek ( float  Time)
private

◆ DoPlayerSeekToFrame()

bool TV::DoPlayerSeekToFrame ( uint64_t  FrameNum)
private

Definition at line 4937 of file tv_play.cpp.

Referenced by ActiveHandleAction(), DoSeek(), and SeekHandleAction().

◆ DoSeekAbsolute()

void TV::DoSeekAbsolute ( long long  Seconds,
bool  HonorCutlist 
)
private

Definition at line 5086 of file tv_play.cpp.

Referenced by customEvent(), DoArbSeek(), and ProcessNetworkControlCommand().

◆ DoArbSeek()

void TV::DoArbSeek ( ArbSeekWhence  Whence,
bool  HonorCutlist 
)
private

Definition at line 5100 of file tv_play.cpp.

Referenced by ActiveHandleAction(), CommitQueuedInput(), and SeekHandleAction().

◆ DoJumpFFWD()

void TV::DoJumpFFWD ( )
private

Definition at line 9789 of file tv_play.cpp.

Referenced by ActiveHandleAction(), ActivePostQHandleAction(), and OSDDialogEvent().

◆ DoJumpRWND()

void TV::DoJumpRWND ( )
private

Definition at line 9804 of file tv_play.cpp.

Referenced by ActiveHandleAction(), ActivePostQHandleAction(), and OSDDialogEvent().

◆ DoSeekFFWD()

void TV::DoSeekFFWD ( )
private

Definition at line 9799 of file tv_play.cpp.

Referenced by OSDDialogEvent().

◆ DoSeekRWND()

void TV::DoSeekRWND ( )
private

Definition at line 9814 of file tv_play.cpp.

Referenced by OSDDialogEvent().

◆ NormalSpeed()

void TV::NormalSpeed ( )
private

◆ ChangeSpeed()

void TV::ChangeSpeed ( int  Direction)
private

Definition at line 5152 of file tv_play.cpp.

Referenced by ActiveHandleAction().

◆ ToggleTimeStretch()

void TV::ToggleTimeStretch ( )
private

Definition at line 7018 of file tv_play.cpp.

Referenced by OSDDialogEvent(), TimeStretchHandleAction(), and ToggleHandleAction().

◆ ChangeTimeStretch()

void TV::ChangeTimeStretch ( int  Dir,
bool  AllowEdit = true 
)
private

◆ DVDJumpBack()

void TV::DVDJumpBack ( )
private

Definition at line 9822 of file tv_play.cpp.

Referenced by DoJumpRWND().

◆ DVDJumpForward()

void TV::DVDJumpForward ( )
private

Definition at line 9859 of file tv_play.cpp.

Referenced by DoJumpFFWD().

◆ StopFFRew()

float TV::StopFFRew ( )
private

◆ ChangeFFRew()

void TV::ChangeFFRew ( int  Direction)
private

Definition at line 5223 of file tv_play.cpp.

Referenced by SeekHandleAction().

◆ SetFFRew()

void TV::SetFFRew ( int  Index)
private

Definition at line 5256 of file tv_play.cpp.

Referenced by ChangeFFRew(), FFRewHandleAction(), and ProcessNetworkControlCommand().

◆ AudioSyncHandleAction()

bool TV::AudioSyncHandleAction ( const QStringList &  Actions)
private

Definition at line 3711 of file tv_play.cpp.

Referenced by ProcessKeypressOrGesture().

◆ GetNumChapters()

int TV::GetNumChapters ( void  )
private

Definition at line 5350 of file tv_play.cpp.

Referenced by DoJumpFFWD(), DoJumpRWND(), and PlaybackMenuInit().

◆ GetChapterTimes()

void TV::GetChapterTimes ( QList< long long > &  Times)
private

Definition at line 5360 of file tv_play.cpp.

Referenced by PlaybackMenuInit().

◆ GetCurrentChapter()

int TV::GetCurrentChapter ( void  )
private

Definition at line 5368 of file tv_play.cpp.

Referenced by PlaybackMenuInit().

◆ GetNumTitles()

int TV::GetNumTitles ( void  )
private

Definition at line 5393 of file tv_play.cpp.

Referenced by PlaybackMenuInit().

◆ GetCurrentTitle()

int TV::GetCurrentTitle ( void  )
private

Definition at line 5403 of file tv_play.cpp.

Referenced by PlaybackMenuInit().

◆ GetTitleDuration()

int TV::GetTitleDuration ( int  Title)
private

Definition at line 5443 of file tv_play.cpp.

Referenced by MenuItemDisplayPlayback().

◆ GetTitleName()

QString TV::GetTitleName ( int  Title)
private

Definition at line 5454 of file tv_play.cpp.

Referenced by MenuItemDisplayPlayback().

◆ DoSwitchTitle()

void TV::DoSwitchTitle ( int  Title)
private

Definition at line 5464 of file tv_play.cpp.

Referenced by customEvent(), and OSDDialogEvent().

◆ GetNumAngles()

int TV::GetNumAngles ( void  )
private

Definition at line 5413 of file tv_play.cpp.

Referenced by PlaybackMenuInit().

◆ GetCurrentAngle()

int TV::GetCurrentAngle ( void  )
private

Definition at line 5423 of file tv_play.cpp.

Referenced by PlaybackMenuInit().

◆ GetAngleName()

QString TV::GetAngleName ( int  Angle)
private

Definition at line 5433 of file tv_play.cpp.

Referenced by MenuItemDisplayPlayback().

◆ DoSwitchAngle()

void TV::DoSwitchAngle ( int  Angle)
private

Definition at line 5480 of file tv_play.cpp.

Referenced by customEvent(), and OSDDialogEvent().

◆ DoJumpChapter()

void TV::DoJumpChapter ( int  Chapter)
private

◆ DoSkipCommercials()

void TV::DoSkipCommercials ( int  Direction)
private

Definition at line 5496 of file tv_play.cpp.

Referenced by ActiveHandleAction().

◆ SetAutoCommercialSkip()

void TV::SetAutoCommercialSkip ( CommSkipMode  SkipMode = kCommSkipOff)
private

Definition at line 9510 of file tv_play.cpp.

Referenced by ActiveHandleAction(), and OSDDialogEvent().

◆ DoQueueTranscode()

void TV::DoQueueTranscode ( const QString &  Profile)
private

Definition at line 5301 of file tv_play.cpp.

Referenced by ActiveHandleAction(), and OSDDialogEvent().

◆ IsBookmarkAllowed()

bool TV::IsBookmarkAllowed ( void  )
private

◆ SetBookmark()

void TV::SetBookmark ( bool  Clear = false)
private

◆ ClearOSD()

bool TV::ClearOSD ( )
private

◆ ToggleOSD()

void TV::ToggleOSD ( bool  IncludeStatusOSD)
private

Cycle through the available Info OSDs.

Definition at line 6287 of file tv_play.cpp.

Referenced by ActiveHandleAction(), and StartOsdNavigation().

◆ UpdateOSDProgInfo()

void TV::UpdateOSDProgInfo ( const char *  WhichInfo)
private

Update and display the passed OSD set with programinfo.

Definition at line 6358 of file tv_play.cpp.

Referenced by ToggleOSD(), and UnpauseLiveTV().

◆ UpdateOSDStatus() [1/2]

void TV::UpdateOSDStatus ( const QString &  Title,
const QString &  Desc,
const QString &  Value,
int  Type,
const QString &  Units,
int  Position = 0,
enum OSDTimeout  Timeout = kOSDTimeout_Med 
)
private

◆ UpdateOSDStatus() [2/2]

void TV::UpdateOSDStatus ( osdInfo Info,
int  Type,
enum OSDTimeout  Timeout 
)
private

Definition at line 6375 of file tv_play.cpp.

◆ UpdateOSDSeekMessage()

void TV::UpdateOSDSeekMessage ( const QString &  Msg,
enum OSDTimeout  Timeout 
)
private

◆ UpdateOSDInput()

void TV::UpdateOSDInput ( )
private

Definition at line 6417 of file tv_play.cpp.

Referenced by ChangeChannel(), HandleStateChange(), and SwitchInputs().

◆ UpdateOSDSignal()

void TV::UpdateOSDSignal ( const QStringList &  List)
private

Updates Signal portion of OSD...

Definition at line 6428 of file tv_play.cpp.

Referenced by customEvent(), and timerEvent().

◆ UpdateOSDTimeoutMessage()

void TV::UpdateOSDTimeoutMessage ( )
private

Definition at line 6585 of file tv_play.cpp.

Referenced by customEvent(), and timerEvent().

◆ CalcPlayerSliderPosition()

bool TV::CalcPlayerSliderPosition ( osdInfo info,
bool  paddedFields = false 
) const
private

◆ SubtitleZoomHandleAction()

bool TV::SubtitleZoomHandleAction ( const QStringList &  Actions)
private

Definition at line 3734 of file tv_play.cpp.

Referenced by ProcessKeypressOrGesture().

◆ SubtitleDelayHandleAction()

bool TV::SubtitleDelayHandleAction ( const QStringList &  Actions)
private

Definition at line 3757 of file tv_play.cpp.

Referenced by ProcessKeypressOrGesture().

◆ DoTogglePictureAttribute()

void TV::DoTogglePictureAttribute ( PictureAdjustType  Type)
private

Definition at line 7762 of file tv_play.cpp.

Referenced by OSDDialogEvent(), and ToggleHandleAction().

◆ PictureAttributeHandleAction()

bool TV::PictureAttributeHandleAction ( const QStringList &  Actions)
private

Definition at line 3657 of file tv_play.cpp.

Referenced by ProcessKeypressOrGesture().

◆ NextPictureAdjustType()

PictureAttribute TV::NextPictureAdjustType ( PictureAdjustType  Type,
PictureAttribute  Attr 
)
private

Definition at line 7736 of file tv_play.cpp.

Referenced by DoTogglePictureAttribute().

◆ OverrideScan()

void TV::OverrideScan ( FrameScanType  Scan)
private

Definition at line 9471 of file tv_play.cpp.

Referenced by ActiveHandleAction(), and OSDDialogEvent().

◆ ITVRestart()

void TV::ITVRestart ( bool  IsLive)
private

Restart the MHEG/MHP engine.

Definition at line 9770 of file tv_play.cpp.

Referenced by HandleStateChange(), SwitchInputs(), and UnpauseLiveTV().

◆ SetManualZoom()

void TV::SetManualZoom ( bool  ZoomON,
const QString &  Desc 
)
private

Definition at line 9526 of file tv_play.cpp.

Referenced by ManualZoomHandleAction(), and OSDDialogEvent().

◆ ManualZoomHandleAction()

bool TV::ManualZoomHandleAction ( const QStringList &  Actions)
private

Definition at line 3580 of file tv_play.cpp.

Referenced by ProcessKeypressOrGesture().

◆ StartChannelEditMode()

void TV::StartChannelEditMode ( )
private

Starts channel editing mode.

Definition at line 7945 of file tv_play.cpp.

Referenced by OSDDialogEvent(), and ToggleHandleAction().

◆ HandleOSDChannelEdit()

bool TV::HandleOSDChannelEdit ( const QString &  Action)
private

Processes channel editing key.

Definition at line 7989 of file tv_play.cpp.

Referenced by OSDDialogEvent().

◆ ChannelEditAutoFill()

void TV::ChannelEditAutoFill ( InfoMap Info)
private

Automatically fills in as much information as possible.

Definition at line 8025 of file tv_play.cpp.

Referenced by HandleOSDChannelEdit(), and StartChannelEditMode().

◆ ChannelEditXDSFill()

void TV::ChannelEditXDSFill ( InfoMap Info)
private

Definition at line 8035 of file tv_play.cpp.

Referenced by ChannelEditAutoFill().

◆ DialogIsVisible()

bool TV::DialogIsVisible ( const QString &  Dialog)
private

◆ HandleOSDInfo()

void TV::HandleOSDInfo ( const QString &  Action)
private

Definition at line 8435 of file tv_play.cpp.

Referenced by OSDDialogEvent().

◆ ShowNoRecorderDialog()

void TV::ShowNoRecorderDialog ( NoRecorderMsg  MsgType = kNoRecorders)
private

Definition at line 9674 of file tv_play.cpp.

Referenced by ChangeChannel(), and RequestNextRecorder().

◆ ShowOSDAskAllow()

void TV::ShowOSDAskAllow ( )
private

Definition at line 1679 of file tv_play.cpp.

Referenced by AskAllowRecording().

◆ HandleOSDAskAllow()

void TV::HandleOSDAskAllow ( const QString &  Action)
private

Definition at line 1898 of file tv_play.cpp.

Referenced by OSDDialogEvent().

◆ AskAllowRecording()

void TV::AskAllowRecording ( const QStringList &  Msg,
int  Timeuntil,
bool  HasRec,
bool  HasLater 
)
private

Definition at line 1638 of file tv_play.cpp.

Referenced by customEvent().

◆ ShowOSDCutpoint()

void TV::ShowOSDCutpoint ( const QString &  Type)
private

Definition at line 7808 of file tv_play.cpp.

Referenced by ProcessKeypressOrGesture().

◆ HandleOSDCutpoint()

bool TV::HandleOSDCutpoint ( const QString &  Action)
private

Definition at line 7850 of file tv_play.cpp.

Referenced by OSDDialogEvent().

◆ StartProgramEditMode()

void TV::StartProgramEditMode ( )
private

Starts Program Cut Map Editing mode.

Definition at line 7873 of file tv_play.cpp.

Referenced by OSDDialogEvent(), and ToggleHandleAction().

◆ ShowOSDAlreadyEditing()

void TV::ShowOSDAlreadyEditing ( )
private

Definition at line 7891 of file tv_play.cpp.

Referenced by StartProgramEditMode().

◆ HandleOSDAlreadyEditing()

void TV::HandleOSDAlreadyEditing ( const QString &  Action,
bool  WasPaused 
)
private

Definition at line 7905 of file tv_play.cpp.

Referenced by OSDDialogEvent().

◆ ShowOSDSleep()

void TV::ShowOSDSleep ( )
private

Definition at line 7110 of file tv_play.cpp.

Referenced by timerEvent().

◆ HandleOSDSleep()

void TV::HandleOSDSleep ( const QString &  Action)
private

Definition at line 7126 of file tv_play.cpp.

Referenced by OSDDialogEvent().

◆ SleepDialogTimeout()

void TV::SleepDialogTimeout ( )
private

Definition at line 7147 of file tv_play.cpp.

Referenced by timerEvent().

◆ ShowOSDIdle()

void TV::ShowOSDIdle ( )
private

After idleTimer has expired, display a dialogue warning the user that we will exit LiveTV unless they take action. We change idleTimer, to 45 seconds and when it expires for a second time we quit the player. If the user so decides, they may hit ok and we reset the timer back to the default expiry period.

Definition at line 7165 of file tv_play.cpp.

Referenced by timerEvent().

◆ HandleOSDIdle()

void TV::HandleOSDIdle ( const QString &  Action)
private

Definition at line 7181 of file tv_play.cpp.

Referenced by OSDDialogEvent().

◆ IdleDialogTimeout()

void TV::IdleDialogTimeout ( )
private

Definition at line 7204 of file tv_play.cpp.

Referenced by timerEvent().

◆ ShowOSDStopWatchingRecording()

void TV::ShowOSDStopWatchingRecording ( )
private

Definition at line 9942 of file tv_play.cpp.

Referenced by ActiveHandleAction().

◆ ShowOSDPromptDeleteRecording()

void TV::ShowOSDPromptDeleteRecording ( const QString &  Title,
bool  Force = false 
)
private

◆ HandleOSDVideoExit()

bool TV::HandleOSDVideoExit ( const QString &  Action)
private

Definition at line 10089 of file tv_play.cpp.

Referenced by OSDDialogEvent().

◆ StartOsdNavigation()

void TV::StartOsdNavigation ( )
private

Definition at line 7974 of file tv_play.cpp.

Referenced by ToggleHandleAction().

◆ ShowOSDMenu()

void TV::ShowOSDMenu ( bool  isCompact = false)
private

Definition at line 9348 of file tv_play.cpp.

Referenced by ActiveHandleAction(), OSDDialogEvent(), and ToggleHandleAction().

◆ FillOSDMenuJumpRec()

void TV::FillOSDMenuJumpRec ( const QString &  Category = "",
int  Level = 0,
const QString &  Selected = "" 
)
private

Definition at line 9364 of file tv_play.cpp.

Referenced by HandleJumpToProgramAction(), and OSDDialogEvent().

◆ PlaybackMenuShow()

void TV::PlaybackMenuShow ( const MythTVMenu Menu,
const QDomNode &  Node,
const QDomNode &  Selected 
)
private

Definition at line 9274 of file tv_play.cpp.

Referenced by customEvent(), ShowOSDCutpoint(), and ShowOSDMenu().

◆ MenuItemDisplay()

bool TV::MenuItemDisplay ( const MythTVMenuItemContext Context,
MythOSDDialogData Menu 
)
overrideprivatevirtual

Implements MythTVMenuItemDisplayer.

Definition at line 8451 of file tv_play.cpp.

◆ MenuItemDisplayPlayback()

bool TV::MenuItemDisplayPlayback ( const MythTVMenuItemContext Context,
MythOSDDialogData Menu 
)
private

Definition at line 8604 of file tv_play.cpp.

Referenced by MenuItemDisplay().

◆ MenuItemDisplayCutlist()

bool TV::MenuItemDisplayCutlist ( const MythTVMenuItemContext Context,
MythOSDDialogData Menu 
)
private

Definition at line 8460 of file tv_play.cpp.

Referenced by MenuItemDisplay().

◆ PlaybackMenuInit()

void TV::PlaybackMenuInit ( const MythTVMenu Menu)
private

Definition at line 9165 of file tv_play.cpp.

Referenced by PlaybackMenuShow().

◆ PlaybackMenuDeinit()

void TV::PlaybackMenuDeinit ( const MythTVMenu Menu)
private

Definition at line 9269 of file tv_play.cpp.

Referenced by PlaybackMenuShow().

◆ MenuStrings()

void TV::MenuStrings ( )
staticprivate

Definition at line 9302 of file tv_play.cpp.

◆ MenuLazyInit()

void TV::MenuLazyInit ( void *  Field)
private

Definition at line 9158 of file tv_play.cpp.

◆ UpdateLCD()

void TV::UpdateLCD ( )
private

Definition at line 6657 of file tv_play.cpp.

Referenced by HandleStateChange(), and UnpauseLiveTV().

◆ ShowLCDChannelInfo()

void TV::ShowLCDChannelInfo ( )
private

Definition at line 6665 of file tv_play.cpp.

Referenced by HandleLCDTimerEvent(), and HandleLCDVolumeTimerEvent().

◆ ShowLCDDVDInfo()

void TV::ShowLCDDVDInfo ( )
private

Definition at line 6691 of file tv_play.cpp.

Referenced by HandleLCDTimerEvent().

Friends And Related Function Documentation

◆ PlaybackBox

friend class PlaybackBox
friend

Definition at line 154 of file tv_play.h.

◆ GuideGrid

friend class GuideGrid
friend

Definition at line 155 of file tv_play.h.

◆ TVBrowseHelper

friend class TVBrowseHelper
friend

Definition at line 156 of file tv_play.h.

Member Data Documentation

◆ lastProgramStringList

QStringList TV::lastProgramStringList = QStringList()
staticprivate

stores last program info.

maintains info so long as mythfrontend is active

Definition at line 191 of file tv_play.h.

Referenced by StartTV(), and timerEvent().

◆ RunPlaybackBoxPtr

EMBEDRETURNVOID TV::RunPlaybackBoxPtr = nullptr
staticprivate

function pointer for RunPlaybackBox in playbackbox.cpp

Definition at line 192 of file tv_play.h.

Referenced by DoEditSchedule(), HandleJumpToProgramAction(), and SetFuncPtr().

◆ RunViewScheduledPtr

EMBEDRETURNVOID TV::RunViewScheduledPtr = nullptr
staticprivate

function pointer for RunViewScheduled in viewscheduled.cpp

Definition at line 193 of file tv_play.h.

Referenced by DoEditSchedule(), and SetFuncPtr().

◆ RunProgramGuidePtr

EMBEDRETURNVOIDEPG TV::RunProgramGuidePtr = nullptr
staticprivate

function pointer for RunProgramGuide in guidegrid.cpp

Definition at line 194 of file tv_play.h.

Referenced by DoEditSchedule(), and SetFuncPtr().

◆ RunProgramFinderPtr

EMBEDRETURNVOIDFINDER TV::RunProgramFinderPtr = nullptr
staticprivate

function pointer for RunProgramFinder in progfind.cpp

Definition at line 195 of file tv_play.h.

Referenced by DoEditSchedule(), and SetFuncPtr().

◆ RunScheduleEditorPtr

EMBEDRETURNVOIDSCHEDIT TV::RunScheduleEditorPtr = nullptr
staticprivate

function pointer for RunScheduleEditor in scheduleeditor.cpp

Definition at line 196 of file tv_play.h.

Referenced by DoEditSchedule(), and SetFuncPtr().

◆ m_mainWindow

MythMainWindow* TV::m_mainWindow { nullptr }
private

◆ m_baseFilters

QString TV::m_baseFilters
private

Definition at line 504 of file tv_play.h.

Referenced by InitFromDB().

◆ m_dbChannelFormat

QString TV::m_dbChannelFormat {"<num> <sign>"}
private

Definition at line 505 of file tv_play.h.

Referenced by InitFromDB(), and ShowOSDAskAllow().

◆ m_dbIdleTimeout

uint TV::m_dbIdleTimeout {0}
private

Definition at line 506 of file tv_play.h.

Referenced by HandleOSDIdle(), InitFromDB(), LiveTV(), ProcessKeypressOrGesture(), and ShowOSDIdle().

◆ m_dbPlaybackExitPrompt

int TV::m_dbPlaybackExitPrompt {0}
private

Definition at line 507 of file tv_play.h.

Referenced by ActiveHandleAction(), InitFromDB(), and PrepareToExitPlayer().

◆ m_dbAutoexpireDefault

uint TV::m_dbAutoexpireDefault {0}
private

Definition at line 508 of file tv_play.h.

Referenced by InitFromDB(), and QuickRecord().

◆ m_dbAutoSetWatched

bool TV::m_dbAutoSetWatched {false}
private

Definition at line 509 of file tv_play.h.

Referenced by InitFromDB(), PrepareToExitPlayer(), and ProcessNetworkControlCommand().

◆ m_dbEndOfRecExitPrompt

bool TV::m_dbEndOfRecExitPrompt {false}
private

Definition at line 510 of file tv_play.h.

Referenced by HandleEndOfPlaybackTimerEvent(), HandleStateChange(), and InitFromDB().

◆ m_dbJumpPreferOsd

bool TV::m_dbJumpPreferOsd {true}
private

Definition at line 511 of file tv_play.h.

Referenced by HandleJumpToProgramAction(), and InitFromDB().

◆ m_dbUseGuiSizeForTv

bool TV::m_dbUseGuiSizeForTv {false}
private

Definition at line 512 of file tv_play.h.

Referenced by DoEditSchedule(), Init(), and InitFromDB().

◆ m_dbUseVideoModes

bool TV::m_dbUseVideoModes {false}
private

Definition at line 513 of file tv_play.h.

Referenced by Embed(), HandleStateChange(), and InitFromDB().

◆ m_dbClearSavedPosition

bool TV::m_dbClearSavedPosition {false}
private

Definition at line 514 of file tv_play.h.

Referenced by InitFromDB(), and PrepareToExitPlayer().

◆ m_dbRunJobsOnRemote

bool TV::m_dbRunJobsOnRemote {false}
private

Definition at line 515 of file tv_play.h.

Referenced by DoQueueTranscode(), and InitFromDB().

◆ m_dbContinueEmbedded

bool TV::m_dbContinueEmbedded {false}
private

Definition at line 516 of file tv_play.h.

Referenced by DoEditSchedule(), and InitFromDB().

◆ m_dbRunFrontendInWindow

bool TV::m_dbRunFrontendInWindow {false}
private

Definition at line 517 of file tv_play.h.

Referenced by InitFromDB().

◆ m_dbBrowseAlways

bool TV::m_dbBrowseAlways {false}
private

Definition at line 518 of file tv_play.h.

Referenced by ActivePostQHandleAction(), and InitFromDB().

◆ m_dbBrowseAllTuners

bool TV::m_dbBrowseAllTuners {false}
private

Definition at line 519 of file tv_play.h.

Referenced by InitFromDB().

◆ m_dbUseChannelGroups

bool TV::m_dbUseChannelGroups {false}
private

◆ m_dbRememberLastChannelGroup

bool TV::m_dbRememberLastChannelGroup {false}
private

Definition at line 521 of file tv_play.h.

Referenced by InitFromDB(), and UpdateChannelList().

◆ m_dbChannelGroups

ChannelGroupList TV::m_dbChannelGroups
private

Definition at line 522 of file tv_play.h.

Referenced by InitFromDB(), and MenuItemDisplayPlayback().

◆ m_tryUnflaggedSkip

bool TV::m_tryUnflaggedSkip {false}
private

Definition at line 524 of file tv_play.h.

Referenced by InitFromDB().

◆ m_smartForward

bool TV::m_smartForward {false}
private

Definition at line 526 of file tv_play.h.

Referenced by InitFromDB(), and SeekHandleAction().

◆ m_ffRewRepos

float TV::m_ffRewRepos {1.0F}
private

Definition at line 527 of file tv_play.h.

Referenced by InitFromDB(), and StopFFRew().

◆ m_ffRewReverse

bool TV::m_ffRewReverse {false}
private

Definition at line 528 of file tv_play.h.

Referenced by ChangeFFRew(), and InitFromDB().

◆ m_ffRewSpeeds

std::vector<int> TV::m_ffRewSpeeds
private

◆ m_vbimode

uint TV::m_vbimode {VBIMode::None}
private

Definition at line 531 of file tv_play.h.

Referenced by AddKeyToInputQueue(), HandleTrackAction(), and InitFromDB().

◆ m_ctorTime

QElapsedTimer TV::m_ctorTime
private

Definition at line 533 of file tv_play.h.

Referenced by StartPlayer(), and TV().

◆ m_switchToInputId

uint TV::m_switchToInputId {0}
private

Definition at line 534 of file tv_play.h.

Referenced by OSDDialogEvent(), ScheduleInputChange(), and SwitchSource().

◆ m_wantsToQuit

bool TV::m_wantsToQuit {true}
mutableprivate

True if the user told MythTV to stop plaback.

If this is false when we exit the player, we display an error screen.

Definition at line 538 of file tv_play.h.

Referenced by Playback(), PlaybackLoop(), SetExitPlayer(), and StartTV().

◆ m_stretchAdjustment

bool TV::m_stretchAdjustment {false}
private

True if time stretch is turned on.

Definition at line 539 of file tv_play.h.

Referenced by ChangeTimeStretch(), HandleOSDClosed(), and TimeStretchHandleAction().

◆ m_audiosyncAdjustment

bool TV::m_audiosyncAdjustment {false}
private

True if audiosync is turned on.

Definition at line 540 of file tv_play.h.

Referenced by AudioSyncHandleAction(), HandleOSDClosed(), and TV().

◆ m_subtitleZoomAdjustment

bool TV::m_subtitleZoomAdjustment {false}
private

True if subtitle zoom is turned on.

Definition at line 541 of file tv_play.h.

Referenced by HandleOSDClosed(), SubtitleZoomHandleAction(), and TV().

◆ m_subtitleDelayAdjustment

bool TV::m_subtitleDelayAdjustment {false}
private

True if subtitle delay is turned on.

Definition at line 542 of file tv_play.h.

Referenced by HandleOSDClosed(), SubtitleDelayHandleAction(), and TV().

◆ m_zoomMode

bool TV::m_zoomMode {false}
private

Definition at line 543 of file tv_play.h.

Referenced by ManualZoomHandleAction(), and SetManualZoom().

◆ m_sigMonMode

bool TV::m_sigMonMode {false}
private

Are we in signal monitoring mode?

Definition at line 544 of file tv_play.h.

Referenced by ActiveHandleAction().

◆ m_endOfRecording

bool TV::m_endOfRecording {false}
private

!player->IsPlaying() && StateIsPlaying()

Definition at line 545 of file tv_play.h.

Referenced by HandleEndOfPlaybackTimerEvent(), and HandleEndOfRecordingExitPromptTimerEvent().

◆ m_requestDelete

bool TV::m_requestDelete {false}
private

User wants last video deleted.

Definition at line 546 of file tv_play.h.

Referenced by ActiveHandleAction(), HandleOSDVideoExit(), HandleVideoExitDialogTimerEvent(), LiveTV(), Playback(), and StartTV().

◆ m_allowRerecord

bool TV::m_allowRerecord {false}
private

User wants to rerecord the last video if deleted.

Definition at line 547 of file tv_play.h.

Referenced by HandleOSDVideoExit(), LiveTV(), and Playback().

◆ m_doSmartForward

bool TV::m_doSmartForward {false}
private

Definition at line 548 of file tv_play.h.

Referenced by HandleOSDClosed(), SeekHandleAction(), and UpdateOSDSeekMessage().

◆ m_queuedTranscode

bool TV::m_queuedTranscode {false}
private

Definition at line 549 of file tv_play.h.

Referenced by DoQueueTranscode().

◆ m_adjustingPicture

PictureAdjustType TV::m_adjustingPicture {kAdjustingPicture_None}
private

Picture attribute type to modify.

Definition at line 551 of file tv_play.h.

Referenced by DoTogglePictureAttribute(), HandleOSDClosed(), and PictureAttributeHandleAction().

◆ m_adjustingPictureAttribute

PictureAttribute TV::m_adjustingPictureAttribute {kPictureAttribute_None}
private

Picture attribute to modify (on arrow left or right)

Definition at line 553 of file tv_play.h.

Referenced by DoTogglePictureAttribute(), HandleOSDClosed(), OSDDialogEvent(), and PictureAttributeHandleAction().

◆ m_askAllowPrograms

QMap<QString,AskProgramInfo> TV::m_askAllowPrograms
private

Definition at line 556 of file tv_play.h.

Referenced by AskAllowRecording(), HandleOSDAskAllow(), and ShowOSDAskAllow().

◆ m_askAllowLock

QMutex TV::m_askAllowLock {QMutex::Recursive}
private

Definition at line 557 of file tv_play.h.

Referenced by AskAllowRecording(), HandleOSDAskAllow(), and ShowOSDAskAllow().

◆ m_progListsLock

QMutex TV::m_progListsLock
private

Definition at line 559 of file tv_play.h.

Referenced by FillOSDMenuJumpRec(), and HandleJumpToProgramAction().

◆ m_progLists

QMap<QString,ProgramList> TV::m_progLists
private

Definition at line 560 of file tv_play.h.

Referenced by FillOSDMenuJumpRec(), and HandleJumpToProgramAction().

◆ m_chanEditMapLock

QMutex TV::m_chanEditMapLock {QMutex::Recursive}
mutableprivate

Lock for chanEditMap and ddMap.

Definition at line 562 of file tv_play.h.

Referenced by HandleOSDChannelEdit(), and StartChannelEditMode().

◆ m_chanEditMap

InfoMap TV::m_chanEditMap
private

Channel Editing initial map.

Definition at line 563 of file tv_play.h.

Referenced by HandleOSDChannelEdit(), and StartChannelEditMode().

◆ s_sleepTimes

const vector< TV::SleepTimerInfo > TV::s_sleepTimes
staticprivate
Initial value:
=
{
{ tr("Off", "Sleep timer"), 0 },
{ tr("30m", "Sleep timer"), 30*60 },
{ tr("1h", "Sleep timer"), 60*60 },
{ tr("1h30m", "Sleep timer"), 90*60 },
{ tr("2h", "Sleep timer"), 120*60}
}

Definition at line 566 of file tv_play.h.

Referenced by ToggleSleepTimer().

◆ m_sleepIndex

uint TV::m_sleepIndex {0}
private

Index into sleep_times.

Definition at line 567 of file tv_play.h.

Referenced by Init(), and ToggleSleepTimer().

◆ m_sleepTimerTimeout

uint TV::m_sleepTimerTimeout {0}
private

Current sleep timeout in msec.

Definition at line 568 of file tv_play.h.

Referenced by HandleOSDSleep(), ShowOSDSleep(), and ToggleSleepTimer().

◆ m_sleepTimerId

int TV::m_sleepTimerId {0}
private

Timer for turning off playback.

Definition at line 569 of file tv_play.h.

Referenced by HandleOSDSleep(), MenuItemDisplayPlayback(), ShowOSDSleep(), timerEvent(), and ToggleSleepTimer().

◆ m_sleepDialogTimerId

int TV::m_sleepDialogTimerId {0}
private

Timer for sleep dialog.

Definition at line 570 of file tv_play.h.

Referenced by HandleOSDSleep(), ShowOSDSleep(), SleepDialogTimeout(), and timerEvent().

◆ m_idleTimerId

int TV::m_idleTimerId {0}
private

Timer for turning off playback after idle period.

Definition at line 572 of file tv_play.h.

Referenced by HandleOSDIdle(), LiveTV(), ProcessKeypressOrGesture(), ShowOSDIdle(), and timerEvent().

◆ m_idleDialogTimerId

int TV::m_idleDialogTimerId {0}
private

Timer for idle dialog.

Definition at line 573 of file tv_play.h.

Referenced by HandleOSDIdle(), IdleDialogTimeout(), ShowOSDIdle(), and timerEvent().

◆ m_keyRepeatTimer

MythTimer TV::m_keyRepeatTimer
private

Queue of unprocessed key presses.

Timeout timer for repeat key filtering

Definition at line 576 of file tv_play.h.

Referenced by DoSeek(), and TV().

◆ m_ccInputMode

bool TV::m_ccInputMode {false}
private

Are we in CC/Teletext page/stream selection mode?

Definition at line 580 of file tv_play.h.

Referenced by ActiveHandleAction(), AddKeyToInputQueue(), CommitQueuedInput(), HandleTrackAction(), and timerEvent().

◆ m_asInputMode

bool TV::m_asInputMode {false}
private

Are we in Arbitrary seek input mode?

Definition at line 584 of file tv_play.h.

Referenced by ActiveHandleAction(), AddKeyToInputQueue(), CommitQueuedInput(), HandleTrackAction(), and timerEvent().

◆ m_queuedInput

QString TV::m_queuedInput
private

Input key presses queued up so far...

Definition at line 588 of file tv_play.h.

Referenced by AddKeyToInputQueue(), ChangeChannel(), ClearInputQueues(), GetQueuedInput(), GetQueuedInputAsInt(), OSDDialogEvent(), and PopPreviousChannel().

◆ m_queuedChanNum

QString TV::m_queuedChanNum
mutableprivate

◆ m_queuedChanID

uint TV::m_queuedChanID {0}
private

Queued ChanID (from EPG channel selector)

Definition at line 592 of file tv_play.h.

Referenced by ChangeChannel(), ClearInputQueues(), OSDDialogEvent(), PopPreviousChannel(), ProcessNetworkControlCommand(), and timerEvent().

◆ m_initialChanID

uint TV::m_initialChanID {0}
private

Initial chanid override for Live TV.

Definition at line 594 of file tv_play.h.

Referenced by HandleStateChange(), and RequestNextRecorder().

◆ kScreenPressRegionCount

const int TV::kScreenPressRegionCount = 12
staticprivate

screen area to keypress translation region is now 0..11 0 1 2 3 4 5 6 7 8 9 10 11

Definition at line 601 of file tv_play.h.

Referenced by ConvertScreenPressKeyMap().

◆ m_screenPressKeyMapPlayback

QList<QKeyEvent> TV::m_screenPressKeyMapPlayback
private

Definition at line 602 of file tv_play.h.

Referenced by InitFromDB(), and TranslateGesture().

◆ m_screenPressKeyMapLiveTV

QList<QKeyEvent> TV::m_screenPressKeyMapLiveTV
private

Definition at line 603 of file tv_play.h.

Referenced by InitFromDB(), and TranslateGesture().

◆ m_lockTimer

QElapsedTimer TV::m_lockTimer
private

Definition at line 606 of file tv_play.h.

Referenced by HandleStateChange(), PauseLiveTV(), SwitchInputs(), and UpdateOSDTimeoutMessage().

◆ m_lockTimerOn

bool TV::m_lockTimerOn {false}
private

◆ m_lastLockSeenTime

QDateTime TV::m_lastLockSeenTime
private

Definition at line 608 of file tv_play.h.

Referenced by HandleStateChange(), and UpdateOSDSignal().

◆ m_lastProgramLock

QMutex TV::m_lastProgramLock
mutableprivate

Definition at line 612 of file tv_play.h.

Referenced by GetLastProgram(), and SetLastProgram().

◆ m_lastProgram

ProgramInfo* TV::m_lastProgram {nullptr}
private

last program played with this player

Definition at line 613 of file tv_play.h.

Referenced by GetLastProgram(), MenuItemDisplayPlayback(), SetLastProgram(), timerEvent(), and ~TV().

◆ m_inPlaylist

bool TV::m_inPlaylist {false}
private

◆ m_underNetworkControl

bool TV::m_underNetworkControl {false}
private

initial show started via by the network control interface

Definition at line 615 of file tv_play.h.

Referenced by ActiveHandleAction(), HandleEndOfPlaybackTimerEvent(), HandleEndOfRecordingExitPromptTimerEvent(), and HandleStateChange().

◆ m_jumpToProgram

bool TV::m_jumpToProgram {false}
private

◆ m_playerContext

PlayerContext TV::m_playerContext { kPlayerInUseID }
private

Definition at line 621 of file tv_play.h.

Referenced by ActiveHandleAction(), ActivePostQHandleAction(), ChangeChannel(), ChangeFFRew(), ChangeSpeed(), ChangeTimeStretch(), ChannelEditXDSFill(), CommitQueuedInput(), ContextIsPaused(), CreatePlayer(), customEvent(), DiscMenuHandleAction(), DoArbSeek(), DoEditSchedule(), DoJumpChapter(), DoJumpFFWD(), DoJumpRWND(), DoPlay(), DoPlayerSeek(), DoPlayerSeekToFrame(), DoQueueTranscode(), DoSeek(), DoSeekAbsolute(), DoSeekFFWD(), DoSeekRWND(), DoSkipCommercials(), DoSwitchAngle(), DoSwitchTitle(), DoTogglePause(), DoTogglePauseFinish(), DoTogglePauseStart(), DoTogglePictureAttribute(), DVDJumpBack(), DVDJumpForward(), Embed(), event(), FFRewHandleAction(), FillOSDMenuJumpRec(), ForceNextStateNone(), GetAngleName(), GetChapterTimes(), GetCurrentAngle(), GetCurrentChapter(), GetCurrentTitle(), GetNumAngles(), GetNumChapters(), GetNumTitles(), GetOSDL(), GetPlayerContext(), GetRecordingGroup(), GetState(), GetStatus(), GetTitleDuration(), GetTitleName(), HandleEndOfPlaybackTimerEvent(), HandleEndOfRecordingExitPromptTimerEvent(), HandleLCDTimerEvent(), HandleOSDAlreadyEditing(), HandleOSDAskAllow(), HandleOSDChannelEdit(), HandleOSDVideoExit(), HandlePseudoLiveTVTimerEvent(), HandleSaveLastPlayPosEvent(), HandleSpeedChangeTimerEvent(), HandleStateChange(), IdleDialogTimeout(), Init(), IsBookmarkAllowed(), IsDeleteAllowed(), IsSameProgram(), IsTunablePriv(), ITVRestart(), LiveTV(), MenuItemDisplayCutlist(), MenuItemDisplayPlayback(), NormalSpeed(), OSDDialogEvent(), OverrideScan(), PauseLiveTV(), PictureAttributeHandleAction(), Playback(), PlaybackLoop(), PlaybackMenuInit(), PopPreviousChannel(), PrepareToExitPlayer(), ProcessKeypressOrGesture(), ProcessNetworkControlCommand(), ProcessSmartChannel(), QuickRecord(), RequestNextRecorder(), ReturnOSDLock(), ScheduleStateChange(), SeekHandleAction(), SetAutoCommercialSkip(), SetErrored(), SetFFRew(), ShowLCDChannelInfo(), ShowLCDDVDInfo(), ShowOSDAskAllow(), ShowOSDPromptDeleteRecording(), ShowOSDStopWatchingRecording(), ShowPreviousChannel(), StartChannelEditMode(), StartPlaying(), StartProgramEditMode(), StartRecorder(), StopFFRew(), StopStuff(), SwitchInputs(), SwitchSource(), timerEvent(), ToggleAutoExpire(), ToggleChannelFavorite(), ToggleTimeStretch(), UnpauseLiveTV(), UpdateOSDInput(), UpdateOSDProgInfo(), UpdateOSDSignal(), UpdateOSDTimeoutMessage(), VolumeChange(), and ~TV().

◆ m_player

MythPlayerUI* TV::m_player { nullptr }
private

◆ m_playerLock

QReadWriteLock TV::m_playerLock
mutableprivate

lock on player and playerActive changes

Definition at line 626 of file tv_play.h.

Referenced by GetPlayerReadLock(), GetPlayerWriteLock(), ReturnPlayerLock(), and ~TV().

◆ m_noHardwareDecoders

bool TV::m_noHardwareDecoders {false}
private

Definition at line 628 of file tv_play.h.

◆ m_switchToRec

RemoteEncoder* TV::m_switchToRec {nullptr}
private

Main recorder to use after a successful SwitchCards() call.

Definition at line 632 of file tv_play.h.

Referenced by Init(), LiveTV(), and RequestNextRecorder().

◆ m_lcdTitle

QString TV::m_lcdTitle
private

Definition at line 635 of file tv_play.h.

Referenced by HandleLCDVolumeTimerEvent(), ShowLCDChannelInfo(), and ShowLCDDVDInfo().

◆ m_lcdSubtitle

QString TV::m_lcdSubtitle
private

Definition at line 636 of file tv_play.h.

Referenced by HandleLCDVolumeTimerEvent(), ShowLCDChannelInfo(), and ShowLCDDVDInfo().

◆ m_lcdCallsign

QString TV::m_lcdCallsign
private

Definition at line 637 of file tv_play.h.

Referenced by HandleLCDVolumeTimerEvent(), ShowLCDChannelInfo(), and ShowLCDDVDInfo().

◆ m_myWindow

TvPlayWindow* TV::m_myWindow {nullptr}
private

Our screen, if it exists.

player bounds, for after DoEditSchedule() returns to normal playing.

Definition at line 640 of file tv_play.h.

Referenced by customEvent(), HandleStateChange(), Init(), and ~TV().

◆ m_playerBounds

QRect TV::m_playerBounds
private

Prior GUI window bounds, for DoEditSchedule() and player exit().

Definition at line 642 of file tv_play.h.

Referenced by Embed(), HandleStateChange(), and Init().

◆ m_savedGuiBounds

QRect TV::m_savedGuiBounds
private

Definition at line 644 of file tv_play.h.

Referenced by DoEditSchedule(), Init(), and ~TV().

◆ m_weDisabledGUI

bool TV::m_weDisabledGUI {false}
private

true if this instance disabled MythUI drawing.

Definition at line 646 of file tv_play.h.

Referenced by DoEditSchedule(), Embed(), HandleStateChange(), and ~TV().

◆ m_ignoreKeyPresses

bool TV::m_ignoreKeyPresses {false}
private

should we ignore keypresses

Definition at line 649 of file tv_play.h.

Referenced by DoEditSchedule(), Embed(), and eventFilter().

◆ m_savedPause

bool TV::m_savedPause {false}
private

saved pause state before embedding

Definition at line 650 of file tv_play.h.

Referenced by DoEditSchedule(), and Embed().

◆ m_channelGroupLock

QMutex TV::m_channelGroupLock
mutableprivate

Lock necessary when modifying channel group variables.

These are only modified in UI thread, so no lock is needed to read this value in the UI thread.

Definition at line 656 of file tv_play.h.

Referenced by ChangeChannel(), OSDDialogEvent(), TVBrowseHelper::run(), and UpdateChannelList().

◆ m_channelGroupId

volatile int TV::m_channelGroupId {-1}
private

◆ m_channelGroupChannelList

ChannelInfoList TV::m_channelGroupChannelList
private

◆ m_networkControlCommands

MythDeque<QString> TV::m_networkControlCommands
private

Definition at line 661 of file tv_play.h.

Referenced by customEvent(), and timerEvent().

◆ m_lcdTimerId

volatile int TV::m_lcdTimerId {0}
private

Definition at line 664 of file tv_play.h.

Referenced by HandleLCDTimerEvent(), Init(), timerEvent(), and UpdateLCD().

◆ m_lcdVolumeTimerId

volatile int TV::m_lcdVolumeTimerId {0}
private

Definition at line 665 of file tv_play.h.

Referenced by HandleLCDVolumeTimerEvent(), timerEvent(), and VolumeChange().

◆ m_networkControlTimerId

volatile int TV::m_networkControlTimerId {0}
private

Definition at line 666 of file tv_play.h.

Referenced by customEvent(), and timerEvent().

◆ m_ccInputTimerId

volatile int TV::m_ccInputTimerId {0}
private

Definition at line 667 of file tv_play.h.

Referenced by ActiveHandleAction(), HandleTrackAction(), and timerEvent().

◆ m_asInputTimerId

volatile int TV::m_asInputTimerId {0}
private

Definition at line 668 of file tv_play.h.

Referenced by ActiveHandleAction(), HandleTrackAction(), and timerEvent().

◆ m_queueInputTimerId

volatile int TV::m_queueInputTimerId {0}
private

◆ m_endOfPlaybackTimerId

volatile int TV::m_endOfPlaybackTimerId {0}
private

Definition at line 670 of file tv_play.h.

Referenced by HandleEndOfPlaybackTimerEvent(), HandleStateChange(), and timerEvent().

◆ m_endOfRecPromptTimerId

volatile int TV::m_endOfRecPromptTimerId {0}
private

Definition at line 671 of file tv_play.h.

Referenced by HandleStateChange(), and timerEvent().

◆ m_videoExitDialogTimerId

volatile int TV::m_videoExitDialogTimerId {0}
private

◆ m_pseudoChangeChanTimerId

volatile int TV::m_pseudoChangeChanTimerId {0}
private

Definition at line 673 of file tv_play.h.

Referenced by customEvent(), HandlePseudoLiveTVTimerEvent(), and timerEvent().

◆ m_speedChangeTimerId

volatile int TV::m_speedChangeTimerId {0}
private

Definition at line 674 of file tv_play.h.

Referenced by HandleSpeedChangeTimerEvent(), Init(), SetSpeedChangeTimer(), and timerEvent().

◆ m_errorRecoveryTimerId

volatile int TV::m_errorRecoveryTimerId {0}
private

Definition at line 675 of file tv_play.h.

Referenced by Init(), SetErrored(), and timerEvent().

◆ m_exitPlayerTimerId

volatile int TV::m_exitPlayerTimerId {0}
mutableprivate

◆ m_saveLastPlayPosTimerId

volatile int TV::m_saveLastPlayPosTimerId {0}
private

Definition at line 677 of file tv_play.h.

Referenced by HandleSaveLastPlayPosEvent(), Init(), and timerEvent().

◆ m_signalMonitorTimerId

volatile int TV::m_signalMonitorTimerId {0}
private

Definition at line 678 of file tv_play.h.

Referenced by timerEvent(), and UpdateOSDSignal().

◆ m_tvmTracks

QStringList TV::m_tvmTracks[kTrackTypeCount]
private

Definition at line 684 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmCurtrack

int TV::m_tvmCurtrack[kTrackTypeCount] {}
private

Definition at line 685 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmAvsync

bool TV::m_tvmAvsync {true}
private

Definition at line 688 of file tv_play.h.

Referenced by PlaybackMenuInit().

◆ m_tvmUpmixing

bool TV::m_tvmUpmixing {false}
private

Definition at line 689 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmCanUpmix

bool TV::m_tvmCanUpmix {false}
private

Definition at line 690 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmFillAutoDetect

bool TV::m_tvmFillAutoDetect {false}
private

Definition at line 693 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmSup

uint TV::m_tvmSup {kPictureAttributeSupported_None}
private

Definition at line 694 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmStereoMode

StereoscopicMode TV::m_tvmStereoMode {kStereoscopicModeAuto}
private

Definition at line 695 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmSpeedX100

int TV::m_tvmSpeedX100 {100}
private

Definition at line 698 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmState

TVState TV::m_tvmState {kState_None}
private

Definition at line 699 of file tv_play.h.

Referenced by PlaybackMenuInit().

◆ m_tvmIsRecording

bool TV::m_tvmIsRecording {false}
private

Definition at line 700 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmIsRecorded

bool TV::m_tvmIsRecorded {false}
private

Definition at line 701 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmIsVideo

bool TV::m_tvmIsVideo {false}
private

Definition at line 702 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmCurSkip

CommSkipMode TV::m_tvmCurSkip {kCommSkipOff}
private

Definition at line 703 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmIsPaused

bool TV::m_tvmIsPaused {false}
private

Definition at line 704 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmFreeRecorderCount

int TV::m_tvmFreeRecorderCount {-1}
private

Definition at line 705 of file tv_play.h.

Referenced by MenuLazyInit(), and PlaybackMenuInit().

◆ m_tvmIsDvd

bool TV::m_tvmIsDvd {false}
private

Definition at line 706 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmIsBd

bool TV::m_tvmIsBd {false}
private

Definition at line 707 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmJump

bool TV::m_tvmJump {false}
private

Definition at line 708 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmIsLiveTv

bool TV::m_tvmIsLiveTv {false}
private

Definition at line 709 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmPreviousChan

bool TV::m_tvmPreviousChan {false}
private

Definition at line 710 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmNumChapters

int TV::m_tvmNumChapters {0}
private

Definition at line 713 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmCurrentChapter

int TV::m_tvmCurrentChapter {0}
private

Definition at line 714 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmChapterTimes

QList<long long> TV::m_tvmChapterTimes
private

Definition at line 715 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmNumAngles

int TV::m_tvmNumAngles {0}
private

Definition at line 716 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmCurrentAngle

int TV::m_tvmCurrentAngle {0}
private

Definition at line 717 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmNumTitles

int TV::m_tvmNumTitles {0}
private

Definition at line 718 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmCurrentTitle

int TV::m_tvmCurrentTitle {0}
private

Definition at line 719 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmSubsCapMode

uint TV::m_tvmSubsCapMode {0}
private

Definition at line 721 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmSubsHaveText

bool TV::m_tvmSubsHaveText {false}
private

Definition at line 722 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmSubsForcedOn

bool TV::m_tvmSubsForcedOn {true}
private

Definition at line 723 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmSubsEnabled

bool TV::m_tvmSubsEnabled {false}
private

Definition at line 724 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmSubsHaveSubs

bool TV::m_tvmSubsHaveSubs {false}
private

Definition at line 725 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmIsOn

bool TV::m_tvmIsOn {false}
private

Definition at line 727 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmTranscoding

bool TV::m_tvmTranscoding {false}
private

Definition at line 728 of file tv_play.h.

Referenced by MenuItemDisplayPlayback(), and PlaybackMenuInit().

◆ m_tvmJumprecBackHack

QVariant TV::m_tvmJumprecBackHack
private

Definition at line 730 of file tv_play.h.

Referenced by FillOSDMenuJumpRec(), and MenuItemDisplayPlayback().

◆ m_playbackMenu

MythTVMenu TV::m_playbackMenu
private

Definition at line 733 of file tv_play.h.

Referenced by MenuItemDisplay(), PlaybackMenuInit(), PlaybackMenuShow(), and ShowOSDMenu().

◆ m_playbackCompactMenu

MythTVMenu TV::m_playbackCompactMenu
private

Definition at line 734 of file tv_play.h.

Referenced by MenuItemDisplay(), PlaybackMenuInit(), PlaybackMenuShow(), and ShowOSDMenu().

◆ m_cutlistMenu

MythTVMenu TV::m_cutlistMenu
private

Definition at line 735 of file tv_play.h.

Referenced by MenuItemDisplay(), PlaybackMenuShow(), and ShowOSDCutpoint().

◆ m_cutlistCompactMenu

MythTVMenu TV::m_cutlistCompactMenu
private

Definition at line 736 of file tv_play.h.

Referenced by MenuItemDisplay(), PlaybackMenuShow(), and ShowOSDCutpoint().

◆ kInitFFRWSpeed

const int TV::kInitFFRWSpeed = 0
static

1x, default to normal speed

Definition at line 740 of file tv_play.h.

Referenced by ChangeFFRew(), PlayerContext::HandlePlayerSpeedChangeFFRew(), Init(), ProcessNetworkControlCommand(), and StopFFRew().

◆ kInputKeysMax

const uint TV::kInputKeysMax = 6
static

When to start discarding early keys.

Definition at line 741 of file tv_play.h.

Referenced by AddKeyToInputQueue().

◆ kNextSource

const uint TV::kNextSource = 1
static

Definition at line 742 of file tv_play.h.

Referenced by ActivePostQHandleAction(), and SwitchSource().

◆ kPreviousSource

const uint TV::kPreviousSource = 2
static

Timeout for entry modes in msec.

Definition at line 743 of file tv_play.h.

Referenced by ActivePostQHandleAction(), and SwitchSource().

◆ kInputModeTimeout

const uint TV::kInputModeTimeout = 5000
static

Definition at line 746 of file tv_play.h.

Referenced by ActiveHandleAction(), and HandleTrackAction().

◆ kLCDTimeout

const uint TV::kLCDTimeout = 1000
static

Timeout for updating LCD info in msec.

Definition at line 748 of file tv_play.h.

Referenced by HandleLCDTimerEvent().

◆ kBrowseTimeout

const uint TV::kBrowseTimeout = 30000
static

Timeout for browse mode exit in msec.

Definition at line 750 of file tv_play.h.

Referenced by TVBrowseHelper::BrowseDispInfo().

◆ kKeyRepeatTimeout

const uint TV::kKeyRepeatTimeout = 300
static

Seek key repeat timeout in msec.

Definition at line 752 of file tv_play.h.

Referenced by DoSeek().

◆ kPrevChanTimeout

const uint TV::kPrevChanTimeout = 750
static

How long to wait before applying all previous channel keypresses in msec.

Definition at line 754 of file tv_play.h.

◆ kSleepTimerDialogTimeout

const uint TV::kSleepTimerDialogTimeout = 45000
static

How long to display sleep timer dialog in msec.

Definition at line 756 of file tv_play.h.

Referenced by ShowOSDSleep().

◆ kIdleTimerDialogTimeout

const uint TV::kIdleTimerDialogTimeout = 45000
static

How long to display idle timer dialog in seconds.

Definition at line 758 of file tv_play.h.

Referenced by ShowOSDIdle().

◆ kVideoExitDialogTimeout

const uint TV::kVideoExitDialogTimeout = 120000
static

How long to display idle timer dialog in msec.

Definition at line 760 of file tv_play.h.

Referenced by ShowOSDPromptDeleteRecording().

◆ kEndOfPlaybackCheckFrequency

const uint TV::kEndOfPlaybackCheckFrequency = 250
static

Definition at line 762 of file tv_play.h.

Referenced by HandleEndOfPlaybackTimerEvent().

◆ kEmbedCheckFrequency

const uint TV::kEmbedCheckFrequency = 250
static

Definition at line 763 of file tv_play.h.

◆ kSpeedChangeCheckFrequency

const uint TV::kSpeedChangeCheckFrequency = 250
static

Definition at line 764 of file tv_play.h.

Referenced by HandleSpeedChangeTimerEvent(), and Init().

◆ kErrorRecoveryCheckFrequency

const uint TV::kErrorRecoveryCheckFrequency = 250
static

Definition at line 765 of file tv_play.h.

Referenced by Init(), and timerEvent().

◆ kEndOfRecPromptCheckFrequency

const uint TV::kEndOfRecPromptCheckFrequency = 250
static

Definition at line 766 of file tv_play.h.

Referenced by HandleStateChange().

◆ kEndOfPlaybackFirstCheckTimer

const uint TV::kEndOfPlaybackFirstCheckTimer = 5000
static

Definition at line 767 of file tv_play.h.

Referenced by HandleStateChange().

◆ kSaveLastPlayPosTimeout

const uint TV::kSaveLastPlayPosTimeout = 30000
static

Definition at line 768 of file tv_play.h.

Referenced by HandleSaveLastPlayPosEvent(), and Init().


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