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

#include <mythdvdplayer.h>

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

Public Member Functions

 MythDVDPlayer (PlayerFlags flags=kNoFlags)
 
void ReleaseNextVideoFrame (VideoFrame *buffer, int64_t timecode, bool wrap=true) override
 
bool HasReachedEof (void) const override
 
bool PrepareAudioSample (int64_t &timecode) override
 
uint64_t GetBookmark (void) override
 
int64_t GetSecondsPlayed (bool honorCutList, int divisor=1000) const override
 
int64_t GetTotalSeconds (bool honorCutList, int divisor=1000) const override
 
bool GoToMenu (QString str) override
 
void GoToDVDProgram (bool direction) override
 
bool IsInStillFrame () const override
 
void ResetStillFrameTimer (void)
 
void SetStillFrameTimeout (int length)
 
void StillFrameCheck (void)
 
int GetNumAngles (void) const override
 
int GetCurrentAngle (void) const override
 
QString GetAngleName (int angle) const override
 
bool SwitchAngle (int angle) override
 
int GetNumChapters (void) override
 
int GetCurrentChapter (void) override
 
void GetChapterTimes (QList< long long > &times) override
 
- Public Member Functions inherited from MythPlayer
 MythPlayer (PlayerFlags flags=kNoFlags)
 
 MythPlayer (const MythPlayer &rhs)
 
virtual ~MythPlayer ()
 
virtual int OpenFile (uint retries=4)
 
bool InitVideo (void)
 
void SetPlayerInfo (TV *tv, QWidget *widget, PlayerContext *ctx)
 
void SetLength (int len)
 
void SetFramesPlayed (uint64_t played)
 
void SetVideoFilters (const QString &overridefilter)
 
void SetEof (EofState eof)
 
void SetPIPActive (bool is_active)
 
void SetPIPVisible (bool is_visible)
 
void SetTranscoding (bool value)
 
void SetWatchingRecording (bool mode)
 
void SetWatched (bool forceWatched=false)
 Determines if the recording should be considered watched. More...
 
void SetKeyframeDistance (int keyframedistance)
 
void SetVideoParams (int w, int h, double fps, FrameScanType scan=kScan_Ignore, const QString &codecName=QString())
 
void SetFileLength (int total, int frames)
 
void SetDuration (int duration)
 
void SetVideoResize (const QRect &videoRect)
 
void EnableFrameRateMonitor (bool enable=false)
 
void ForceDeinterlacer (const QString &override=QString())
 
void SetFrameRate (double fps)
 
QSize GetVideoBufferSize (void) const
 
QSize GetVideoSize (void) const
 
float GetVideoAspect (void) const
 
float GetFrameRate (void) const
 
void GetPlaybackData (InfoMap &infoMap)
 
bool IsAudioNeeded (void)
 
uint GetVolume (void)
 
int GetSecondsBehind (void) const
 
int GetFreeVideoFrames (void) const
 Returns the number of frames available for decoding onto. More...
 
AspectOverrideMode GetAspectOverride (void) const
 
AdjustFillMode GetAdjustFill (void) const
 
MuteState GetMuteState (void)
 
int GetFFRewSkip (void) const
 
float GetPlaySpeed (void) const
 
AudioPlayerGetAudio (void)
 
const AudioOutputGraphGetAudioGraph () const
 
float GetAudioStretchFactor (void)
 
float GetNextPlaySpeed (void) const
 
int GetLength (void) const
 
uint64_t GetTotalFrameCount (void) const
 
uint64_t GetCurrentFrameCount (void) const
 
uint64_t GetFramesPlayed (void) const
 
int64_t GetLatestVideoTimecode () const
 
QString GetError (void) const
 
bool IsErrorRecoverable (void) const
 
bool IsDecoderErrored (void) const
 
QString GetEncodingType (void) const
 
void GetCodecDescription (InfoMap &infoMap)
 
QString GetXDS (const QString &key) const
 
PIPLocation GetNextPIPLocation (void) const
 
bool IsPaused (void) const
 
bool GetRawAudioState (void) const
 
bool GetLimitKeyRepeat (void) const
 
EofState GetEof (void) const
 
bool IsErrored (void) const
 
bool IsPlaying (uint wait_in_msec=0, bool wait_for=true) const
 
bool AtNormalSpeed (void) const
 
bool IsReallyNearEnd (void) const
 Returns true iff really near end of recording. More...
 
bool IsNearEnd (void)
 Returns true iff near end of recording. More...
 
bool HasAudioOut (void) const
 
bool IsPIPActive (void) const
 
bool IsPIPVisible (void) const
 
bool IsMuted (void)
 
bool PlayerControlsVolume (void) const
 
bool UsingNullVideo (void) const
 
bool HasTVChainNext (void) const
 
bool CanSupportDoubleRate (void)
 
bool GetScreenShot (int width=0, int height=0, QString filename="")
 
bool IsWatchingInprogress (void) const
 
virtual char * GetScreenGrabAtFrame (uint64_t frameNum, bool absolute, int &bufflen, int &vw, int &vh, float &ar)
 Returns a one RGB frame grab from a video. More...
 
virtual char * GetScreenGrab (int secondsin, int &bufflen, int &vw, int &vh, float &ar)
 Returns a one RGB frame grab from a video. More...
 
InteractiveTVGetInteractiveTV (void)
 
VideoOutputGetVideoOutput (void)
 
MythCodecContextGetMythCodecContext (void)
 
virtual bool SwitchTitle (int)
 
virtual bool NextTitle (void)
 
virtual bool PrevTitle (void)
 
virtual bool NextAngle (void)
 
virtual bool PrevAngle (void)
 
void InitForTranscode (bool copyaudio, bool copyvideo)
 
bool TranscodeGetNextFrame (int &did_ff, bool &is_key, bool honorCutList)
 
bool WriteStoredData (RingBuffer *outRingBuffer, bool writevideo, long timecodeOffset)
 
long UpdateStoredFrameNum (long curFrameNum)
 
void SetCutList (const frm_dir_map_t &newCutList)
 
VideoFrameGetNextVideoFrame (void)
 Removes a frame from the available queue for decoding onto. More...
 
VideoFrameGetRawVideoFrame (long long frameNumber=-1)
 Returns a specific frame from the video. More...
 
VideoFrameGetCurrentFrame (int &w, int &h)
 
void DeLimboFrame (VideoFrame *frame)
 
void ReleaseCurrentFrame (VideoFrame *frame)
 
void ClearDummyVideoFrame (VideoFrame *frame)
 Instructs VideoOutput to clear the frame to black. More...
 
void DiscardVideoFrame (VideoFrame *buffer)
 Places frame in the available frames queue. More...
 
void DiscardVideoFrames (bool next_frame_keyframe)
 Places frames in the available frames queue. More...
 
void DrawSlice (VideoFrame *frame, int x, int y, int w, int h)
 
DecoderBaseGetDecoder (void)
 Returns the stream decoder currently in use. More...
 
void * GetDecoderContext (unsigned char *buf, uint8_t *&id)
 
void SetDisablePassThrough (bool disabled)
 
void ForceSetupAudioStream (void)
 
void SaveScreenshot (void)
 
void ReinitVideo (void)
 
uint GetCaptionMode (void) const
 
virtual CC708ReaderGetCC708Reader (uint=0)
 
virtual CC608ReaderGetCC608Reader (uint=0)
 
virtual SubtitleReaderGetSubReader (uint=0)
 
virtual TeletextReaderGetTeletextReader (uint=0)
 
void TracksChanged (uint trackType)
 This tries to re-enable captions/subtitles if the user wants them and one of the captions/subtitles tracks has changed. More...
 
void EnableSubtitles (bool enable)
 
void EnableForcedSubtitles (bool enable)
 
bool ForcedSubtitlesFavored (void) const
 
void SetAllowForcedSubtitles (bool allow)
 
bool GetAllowForcedSubtitles (void) const
 
bool SetAudioByComponentTag (int tag)
 Selects the audio stream using the DVB component tag. More...
 
bool SetVideoByComponentTag (int tag)
 Selects the video stream using the DVB component tag. More...
 
bool SetStream (const QString &)
 
long GetStreamPos ()
 
long GetStreamMaxPos ()
 
long SetStreamPos (long)
 
void StreamPlay (bool play=true)
 
void CheckTVChain ()
 
void FileChangedCallback ()
 
virtual int GetNumTitles (void) const
 
virtual int GetCurrentTitle (void) const
 
virtual int GetTitleDuration (int) const
 
virtual QString GetTitleName (int) const
 
bool PosMapFromEnc (uint64_t start, frm_pos_map_t &posMap, frm_pos_map_t &durMap)
 
bool TryLockOSD (void)
 
void LockOSD (void)
 
void UnlockOSD (void)
 
void ToggleStudioLevels (void)
 
void ToggleNightMode (void)
 
bool CanVisualise (void)
 
bool IsVisualising (void)
 
QString GetVisualiserName (void)
 
QStringList GetVisualiserList (void)
 
bool EnableVisualisation (bool enable, const QString &name=QString(""))
 
void SaveTotalDuration (void)
 
void ResetTotalDuration (void)
 
void SaveTotalFrames (void)
 
void SetErrored (const QString &reason)
 

Protected Member Functions

void SetBookmark (bool clear=false) override
 
void ResetPlaying (bool resetframes=true) override
 
bool PrebufferEnoughFrames (int min_buffers=0) override
 
void DecoderPauseCheck (void) override
 
bool DecoderGetFrameFFREW (void) override
 
bool DecoderGetFrameREW (void) override
 
void ChangeSpeed (void) override
 
void AVSync (VideoFrame *frame, bool limit_delay=false) override
 
void DisplayPauseFrame (void) override
 
void PreProcessNormalFrame (void) override
 
void VideoStart (void) override
 
bool VideoLoop (void) override
 
void EventStart (void) override
 
virtual void EventEnd (void)
 
void InitialSeek (void) override
 
void SeekForScreenGrab (uint64_t &number, uint64_t frameNum, bool absolute) override
 
void AutoDeint (VideoFrame *frame, bool allow_lock=true) override
 
long long CalcMaxFFTime (long long ff, bool setjump=true) const override
 CalcMaxFFTime(ffframes): forward ffframes forward. More...
 
bool FastForward (float seconds) override
 
bool Rewind (float seconds) override
 
bool JumpToFrame (uint64_t frame) override
 
void DisableCaptions (uint mode, bool osd_msg=true) override
 
void EnableCaptions (uint mode, bool osd_msg=true) override
 
int SetTrack (uint type, int trackNo) override
 
void CreateDecoder (char *testbuf, int testreadsize) override
 
bool DoJumpChapter (int chapter) override
 
- Protected Member Functions inherited from MythPlayer
void OpenDummy (void)
 
bool AddPIPPlayer (MythPlayer *pip, PIPLocation loc)
 
bool RemovePIPPlayer (MythPlayer *pip)
 
void NextScanType (void)
 
void SetScanType (FrameScanType)
 
FrameScanType GetScanType (void) const
 
bool IsScanTypeLocked (void) const
 
void Zoom (ZoomDirection direction)
 
void ToggleMoveBottomLine (void)
 
void SaveBottomLine (void)
 
void FileChanged (void)
 
void EmbedInWidget (QRect rect)
 
void StopEmbedding (void)
 
void ExposeEvent (void)
 
bool IsEmbedding (void)
 
void WindowResized (const QSize &new_size)
 
uint AdjustVolume (int change)
 
uint SetVolume (int newvolume)
 
bool SetMuted (bool mute)
 
MuteState SetMuteState (MuteState state)
 
MuteState IncrMuteState (void)
 
OSDGetOSD (void)
 
long long CalcRWTime (long long rw) const
 CalcRWTime(rw): rewind rw frames back. More...
 
virtual void calcSliderPos (osdInfo &info, bool paddedFields=false)
 
uint64_t TranslatePositionFrameToMs (uint64_t position, bool use_cutlist) const
 
uint64_t TranslatePositionMsToFrame (uint64_t position, bool use_cutlist) const
 
uint64_t TranslatePositionAbsToRel (uint64_t position) const
 
uint64_t TranslatePositionRelToAbs (uint64_t position) const
 
float ComputeSecs (uint64_t position, bool use_cutlist) const
 
uint64_t FindFrame (float offset, bool use_cutlist) const
 
void SetAutoCommercialSkip (CommSkipMode autoskip)
 
void SkipCommercials (int direction)
 
void SetCommBreakMap (frm_dir_map_t &newMap)
 
CommSkipMode GetAutoCommercialSkip (void)
 
void ToggleAspectOverride (AspectOverrideMode aspectMode=kAspect_Toggle)
 
void ToggleAdjustFill (AdjustFillMode adjustfillMode=kAdjustFill_Toggle)
 
virtual bool StartPlaying (void)
 
virtual void EndPlaying (void)
 
virtual void StopPlaying (void)
 
bool PauseDecoder (void)
 
void UnpauseDecoder (void)
 
bool Pause (void)
 
bool Play (float speed=1.0, bool normal=true, bool unpauseaudio=true)
 
void JumpChapter (int chapter)
 
void SetBuffering (bool new_buffering)
 
void RefreshPauseFrame (void)
 
void CheckAspectRatio (VideoFrame *frame)
 
virtual void DisplayNormalFrame (bool check_prebuffer=true)
 
virtual void VideoEnd (void)
 
virtual void DecoderStart (bool start_paused)
 
virtual void DecoderLoop (bool pause)
 
virtual void DecoderEnd (void)
 
virtual void AudioEnd (void)
 
virtual void EventLoop (void)
 
bool ITVHandleAction (const QString &action)
 
void ITVRestart (uint chanid, uint cardid, bool isLiveTV)
 Restart the MHEG/MHP engine. More...
 
bool EnableEdit (void)
 
bool HandleProgramEditorActions (QStringList &actions)
 
bool GetEditMode (void) const
 
void DisableEdit (int howToSave)
 Leave cutlist edit mode, saving work in 1 of 3 ways. More...
 
bool IsInDelete (uint64_t frame)
 
uint64_t GetNearestMark (uint64_t frame, bool right)
 
bool IsTemporaryMark (uint64_t frame)
 
bool HasTemporaryMark (void)
 
bool IsCutListSaved (void)
 
bool DeleteMapHasUndo (void)
 
bool DeleteMapHasRedo (void)
 
QString DeleteMapGetUndoMessage (void)
 
QString DeleteMapGetRedoMessage (void)
 
void ReinitOSD (void)
 
void SetOSDMessage (const QString &msg, OSDTimeout timeout)
 
void SetOSDStatus (const QString &title, OSDTimeout timeout)
 
void ResetCaptions (void)
 
bool ToggleCaptions (void)
 
bool ToggleCaptions (uint type)
 
bool HasTextSubtitles (void)
 
void SetCaptionsEnabled (bool, bool osd_msg=true)
 
bool GetCaptionsEnabled (void)
 
QStringList GetTracks (uint type)
 
uint GetTrackCount (uint type)
 
int GetTrack (uint type)
 
int ChangeTrack (uint type, int dir)
 
void ChangeCaptionTrack (int dir)
 
bool HasCaptionTrack (int mode)
 
int NextCaptionTrack (int mode)
 
void DoDisableForcedSubtitles (void)
 
void DoEnableForcedSubtitles (void)
 
void EnableTeletext (int page=0x100)
 
void DisableTeletext (void)
 
void ResetTeletext (void)
 
bool HandleTeletextAction (const QString &action)
 
void SetTeletextPage (uint page)
 Set Teletext NUV Caption page. More...
 
int64_t AdjustAudioTimecodeOffset (int64_t v, int newsync=-9999)
 
int64_t GetAudioTimecodeOffset (void) const
 
void InitFilters (void)
 
FrameScanType detectInterlace (FrameScanType newScan, FrameScanType scan, float fps, int video_height)
 
void SetPlayingInfo (const ProgramInfo &pginfo)
 
void SetPlaying (bool is_playing)
 
void ResetErrored (void)
 
int GetStatusbarPos (void) const
 
void PauseVideo (void)
 
void UnpauseVideo (void)
 
void PauseBuffer (void)
 
void UnpauseBuffer (void)
 
void SetDecoder (DecoderBase *dec)
 Sets the stream decoder, deleting any existing recorder. More...
 
const DecoderBaseGetDecoder (void) const
 Returns the stream decoder currently in use. More...
 
bool DecodeFrame (struct rtframeheader *frameheader, unsigned char *strm, unsigned char *outbuf)
 
bool DecoderGetFrame (DecodeType, bool unsafe=false)
 
bool UpdateFFRewSkip (void)
 
bool DoFastForward (uint64_t frames, double inaccuracy)
 
bool DoRewind (uint64_t frames, double inaccuracy)
 
bool DoFastForwardSecs (float secs, double inaccuracy, bool use_cutlist)
 
bool DoRewindSecs (float secs, double inaccuracy, bool use_cutlist)
 
void DoJumpToFrame (uint64_t frame, double inaccuracy)
 
void WaitForSeek (uint64_t frame, uint64_t seeksnap_wanted)
 
void ClearAfterSeek (bool clearvideobuffers=true)
 This is to support seeking... More...
 
virtual int64_t GetChapter (int chapter)
 
void HandleArbSeek (bool right)
 
void WrapTimecode (int64_t &timecode, TCTypes tc_type)
 
void InitAVSync (void)
 
void AVSync2 (VideoFrame *buffer)
 
void ResetAVSync (void)
 
int64_t AVSyncGetAudiotime (void)
 
void SetFrameInterval (FrameScanType scan, double frame_period)
 
void FallbackDeint (void)
 Fallback to non-frame-rate-doubling deinterlacing method. More...
 
void WaitForTime (int64_t framedue)
 
void SwitchToProgram (void)
 
void JumpToProgram (void)
 
void JumpToStream (const QString &)
 

Private Member Functions

 Q_DECLARE_TR_FUNCTIONS (MythDVDPlayer)
 
void DoChangeDVDTrack (void)
 
void DisplayDVDButton (void)
 
void DisplayLastFrame (void)
 

Private Attributes

int m_buttonVersion {0}
 
bool m_dvd_stillframe_showing {false}
 
int m_initial_title {-1}
 
int m_initial_audio_track {-1}
 
int m_initial_subtitle_track {-1}
 
QString m_initial_dvdstate
 
MythTimer m_stillFrameTimer
 
int m_stillFrameLength {0}
 
QMutex m_stillFrameTimerLock
 

Additional Inherited Members

- Static Public Attributes inherited from MythPlayer
static const int kNightModeBrightenssAdjustment = 10
 
static const int kNightModeContrastAdjustment = 10
 
static const double kInaccuracyNone = 0
 
static const double kInaccuracyDefault = 0.1
 
static const double kInaccuracyEditor = 0.5
 
static const double kInaccuracyFull = -1.0
 
- Protected Attributes inherited from MythPlayer
DetectLetterboxdetect_letter_box
 
PlayerFlags playerFlags
 
DecoderBasedecoder
 
QMutex decoder_change_lock
 
VideoOutputvideoOutput
 
PlayerContextplayer_ctx
 
DecoderThreaddecoderThread
 
QThread * playerThread
 
QWidget * parentWidget
 
bool embedding
 
QRect embedRect
 
float defaultDisplayAspect
 
QWaitCondition decoderThreadPause
 
QWaitCondition decoderThreadUnpause
 
QMutex decoderPauseLock
 
QMutex decoderSeekLock
 
bool totalDecoderPause
 
bool decoderPaused
 
bool inJumpToProgramPause
 
bool pauseDecoder
 
bool unpauseDecoder
 
bool volatile killdecoder
 
int64_t decoderSeek
 
bool decodeOneFrame
 
bool needNewPauseFrame
 
QMutex bufferPauseLock
 
QMutex videoPauseLock
 
QMutex pauseLock
 
bool bufferPaused
 
bool videoPaused
 
bool allpaused
 
bool playing
 
QWaitCondition playingWaitCond
 
QMutex vidExitLock
 
QMutex playingLock
 
bool m_double_framerate
 Output fps is double Video (input) rate. More...
 
bool m_double_process
 Output filter must processed at double rate. More...
 
bool m_deint_possible
 
bool livetv
 
bool watchingrecording
 
bool transcoding
 
bool hasFullPositionMap
 
bool limitKeyRepeat
 
QMutex errorLock
 
QString errorMsg
 Reason why NVP exited with a error. More...
 
int errorType
 
int jumpchapter
 
uint64_t bookmarkseek
 
int clearSavedPosition
 
int endExitPrompt
 
long long fftime
 If fftime>0, number of frames to seek forward. More...
 
int videobuf_retries
 How often we have tried to wait for a video output buffer and failed. More...
 
uint64_t framesPlayed
 
uint64_t framesPlayedExtra
 
uint64_t totalFrames
 
long long totalLength
 
int64_t totalDuration
 
long long rewindtime
 
int64_t m_latestVideoTimecode
 
QElapsedTimer m_avTimer
 
QSize video_disp_dim
 Video (input) width & height. More...
 
QSize video_dim
 Video (input) buffer width & height. More...
 
double video_frame_rate
 Video (input) Frame Rate (often inaccurate) More...
 
float video_aspect
 Video (input) Apect Ratio. More...
 
float forced_video_aspect
 
FrameScanType resetScan
 Tell the player thread to set the scan type (and hence deinterlacers) More...
 
FrameScanType m_scan
 Video (input) Scan Type (interlaced, progressive, detect, ignore...) More...
 
bool m_scan_locked
 Set when the user selects a scan type, overriding the detected one. More...
 
int m_scan_tracker
 Used for tracking of scan type for auto-detection of interlacing. More...
 
bool m_scan_initialized
 Set when SetScanType runs the first time. More...
 
uint keyframedist
 Video (input) Number of frames between key frames (often inaccurate) More...
 
QString m_codecName
 Codec Name - used by playback profile. More...
 
bool buffering
 
QTime buffering_start
 
QTime buffering_last_msg
 
uint textDisplayMode
 
uint prevTextDisplayMode
 
uint prevNonzeroTextDisplayMode
 
uint vbimode
 VBI decoder to use. More...
 
int ttPageNum
 VBI page to display when in PAL vbimode. More...
 
SubtitleReader subReader
 
TeletextReader ttxReader
 
bool captionsEnabledbyDefault
 This allows us to enable captions/subtitles later if the streams are not immediately available when the video starts playing. More...
 
bool textDesired
 
bool enableCaptions
 
bool disableCaptions
 
bool enableForcedSubtitles
 
bool disableForcedSubtitles
 
bool allowForcedSubtitles
 
CC608Reader cc608
 
CC708Reader cc708
 
bool itvVisible
 
InteractiveTVinteractiveTV
 
bool itvEnabled
 
QMutex itvLock
 
QMutex streamLock
 
QString m_newStream
 
OSDosd
 
bool reinit_osd
 
QMutex osdLock
 
AudioPlayer audio
 
AudioOutputGraph m_audiograph
 
PIPMap pip_players
 
volatile bool pip_active
 
volatile bool pip_visible
 
PIPLocation pip_default_loc
 
QMutex videofiltersLock
 
QString videoFiltersForProgram
 
QString videoFiltersOverride
 
int postfilt_width
 Post-Filter (output) width. More...
 
int postfilt_height
 Post-Filter (output) height. More...
 
FilterChainvideoFilters
 
FilterManagerFiltMan
 
CommBreakMap commBreakMap
 
bool forcePositionMapSync
 
DeleteMap deleteMap
 
bool pausedBeforeEdit
 
QTime editUpdateTimer
 
float speedBeforeEdit
 
QMutex decoder_lock
 Lock for next_play_speed and next_normal_speed. More...
 
float next_play_speed
 
bool next_normal_speed
 
float play_speed
 
bool normal_speed
 
int frame_interval
 always adjusted for play_speed More...
 
int m_frame_interval
 used to detect changes to frame_interval More...
 
int m_fpsMultiplier
 used to detect changes More...
 
int ffrew_skip
 
int ffrew_adjust
 
bool fileChanged
 
VideoSyncvideosync
 
int avsync_delay
 
int avsync_adjustment
 
int avsync_avg
 
int avsync_predictor
 
bool avsync_predictor_enabled
 
int refreshrate
 
bool lastsync
 
bool decode_extra_audio
 
int repeat_delay
 
int64_t disp_timecode
 
bool avsync_audiopaused
 
float max_diverge
 
int avsync_averaging
 
int avsync_interval
 
int avsync_next
 
int prevtc
 32 bit timecode if last VideoFrame shown More...
 
int prevrp
 repeat_pict of last frame More...
 
int64_t tc_wrap [TCTYPESMAX]
 
int64_t tc_lastval [TCTYPESMAX]
 
int64_t savedAudioTimecodeOffset
 
int64_t rtcbase
 
int64_t maxtcval
 
int maxtcframes
 
int64_t avsync2adjustms
 
int numdroppedframes
 
int64_t prior_audiotimecode
 
int64_t prior_videotimecode
 
int64_t m_timeOffsetBase
 
TVm_tv
 
bool isDummy
 
int bufferingCounter
 
Jitterometeroutput_jmeter
 

Detailed Description

Definition at line 8 of file mythdvdplayer.h.

Constructor & Destructor Documentation

◆ MythDVDPlayer()

MythDVDPlayer::MythDVDPlayer ( PlayerFlags  flags = kNoFlags)
inlineexplicit

Definition at line 13 of file mythdvdplayer.h.

Member Function Documentation

◆ Q_DECLARE_TR_FUNCTIONS()

MythDVDPlayer::Q_DECLARE_TR_FUNCTIONS ( MythDVDPlayer  )
private

◆ ReleaseNextVideoFrame()

void MythDVDPlayer::ReleaseNextVideoFrame ( VideoFrame buffer,
int64_t  timecode,
bool  wrap = true 
)
overridevirtual
Parameters
bufferBuffer
timecodeTimecode
wrapIgnored. This function overrides the callers 'wrap' indication and computes its own based on whether or not video is currently playing.

Reimplemented from MythPlayer.

Definition at line 25 of file mythdvdplayer.cpp.

◆ HasReachedEof()

bool MythDVDPlayer::HasReachedEof ( void  ) const
overridevirtual

Reimplemented from MythPlayer.

Definition at line 32 of file mythdvdplayer.cpp.

◆ PrepareAudioSample()

bool MythDVDPlayer::PrepareAudioSample ( int64_t &  timecode)
overridevirtual

Reimplemented from MythPlayer.

Definition at line 320 of file mythdvdplayer.cpp.

◆ GetBookmark()

uint64_t MythDVDPlayer::GetBookmark ( void  )
overridevirtual

Reimplemented from MythPlayer.

Definition at line 377 of file mythdvdplayer.cpp.

◆ GetSecondsPlayed()

int64_t MythDVDPlayer::GetSecondsPlayed ( bool  honorCutList,
int  divisor = 1000 
) const
overridevirtual

Reimplemented from MythPlayer.

Definition at line 466 of file mythdvdplayer.cpp.

◆ GetTotalSeconds()

int64_t MythDVDPlayer::GetTotalSeconds ( bool  honorCutList,
int  divisor = 1000 
) const
overridevirtual

Reimplemented from MythPlayer.

Definition at line 484 of file mythdvdplayer.cpp.

◆ GoToMenu()

bool MythDVDPlayer::GoToMenu ( QString  str)
overridevirtual

Reimplemented from MythPlayer.

Definition at line 651 of file mythdvdplayer.cpp.

Referenced by SeekForScreenGrab().

◆ GoToDVDProgram()

void MythDVDPlayer::GoToDVDProgram ( bool  direction)
overridevirtual

Reimplemented from MythPlayer.

Definition at line 668 of file mythdvdplayer.cpp.

Referenced by SeekForScreenGrab().

◆ IsInStillFrame()

bool MythDVDPlayer::IsInStillFrame ( void  ) const
overridevirtual

Reimplemented from MythPlayer.

Definition at line 678 of file mythdvdplayer.cpp.

◆ ResetStillFrameTimer()

void MythDVDPlayer::ResetStillFrameTimer ( void  )

Definition at line 719 of file mythdvdplayer.cpp.

◆ SetStillFrameTimeout()

void MythDVDPlayer::SetStillFrameTimeout ( int  length)

Definition at line 726 of file mythdvdplayer.cpp.

Referenced by DVDRingBuffer::safe_read(), and DVDRingBuffer::SkipStillFrame().

◆ StillFrameCheck()

void MythDVDPlayer::StillFrameCheck ( void  )

Definition at line 737 of file mythdvdplayer.cpp.

Referenced by DecoderPauseCheck(), and VideoLoop().

◆ GetNumAngles()

int MythDVDPlayer::GetNumAngles ( void  ) const
overridevirtual

Reimplemented from MythPlayer.

Definition at line 683 of file mythdvdplayer.cpp.

Referenced by GetAngleName(), and SwitchAngle().

◆ GetCurrentAngle()

int MythDVDPlayer::GetCurrentAngle ( void  ) const
overridevirtual

Reimplemented from MythPlayer.

Definition at line 690 of file mythdvdplayer.cpp.

Referenced by SwitchAngle().

◆ GetAngleName()

QString MythDVDPlayer::GetAngleName ( int  angle) const
overridevirtual

Reimplemented from MythPlayer.

Definition at line 697 of file mythdvdplayer.cpp.

◆ SwitchAngle()

bool MythDVDPlayer::SwitchAngle ( int  angle)
overridevirtual

Reimplemented from MythPlayer.

Definition at line 707 of file mythdvdplayer.cpp.

◆ GetNumChapters()

int MythDVDPlayer::GetNumChapters ( void  )
overridevirtual

Reimplemented from MythPlayer.

Definition at line 531 of file mythdvdplayer.cpp.

Referenced by DoJumpChapter().

◆ GetCurrentChapter()

int MythDVDPlayer::GetCurrentChapter ( void  )
overridevirtual

Reimplemented from MythPlayer.

Definition at line 538 of file mythdvdplayer.cpp.

Referenced by DoJumpChapter().

◆ GetChapterTimes()

void MythDVDPlayer::GetChapterTimes ( QList< long long > &  times)
overridevirtual

Reimplemented from MythPlayer.

Definition at line 545 of file mythdvdplayer.cpp.

◆ SetBookmark()

void MythDVDPlayer::SetBookmark ( bool  clear = false)
overrideprotectedvirtual

Reimplemented from MythPlayer.

Definition at line 329 of file mythdvdplayer.cpp.

◆ ResetPlaying()

void MythDVDPlayer::ResetPlaying ( bool  resetframes = true)
overrideprotectedvirtual

Reimplemented from MythPlayer.

Definition at line 309 of file mythdvdplayer.cpp.

◆ PrebufferEnoughFrames()

bool MythDVDPlayer::PrebufferEnoughFrames ( int  min_buffers = 0)
overrideprotectedvirtual

Reimplemented from MythPlayer.

Definition at line 80 of file mythdvdplayer.cpp.

◆ DecoderPauseCheck()

void MythDVDPlayer::DecoderPauseCheck ( void  )
overrideprotectedvirtual

Reimplemented from MythPlayer.

Definition at line 74 of file mythdvdplayer.cpp.

◆ DecoderGetFrameFFREW()

bool MythDVDPlayer::DecoderGetFrameFFREW ( void  )
overrideprotectedvirtual

Reimplemented from MythPlayer.

Definition at line 85 of file mythdvdplayer.cpp.

◆ DecoderGetFrameREW()

bool MythDVDPlayer::DecoderGetFrameREW ( void  )
overrideprotectedvirtual

Reimplemented from MythPlayer.

Definition at line 97 of file mythdvdplayer.cpp.

◆ ChangeSpeed()

void MythDVDPlayer::ChangeSpeed ( void  )
overrideprotectedvirtual

Reimplemented from MythPlayer.

Definition at line 425 of file mythdvdplayer.cpp.

◆ AVSync()

void MythDVDPlayer::AVSync ( VideoFrame frame,
bool  limit_delay = false 
)
overrideprotectedvirtual

Reimplemented from MythPlayer.

Definition at line 453 of file mythdvdplayer.cpp.

Referenced by DisplayLastFrame().

◆ DisplayPauseFrame()

void MythDVDPlayer::DisplayPauseFrame ( void  )
overrideprotectedvirtual

Reimplemented from MythPlayer.

Definition at line 63 of file mythdvdplayer.cpp.

◆ PreProcessNormalFrame()

void MythDVDPlayer::PreProcessNormalFrame ( void  )
overrideprotectedvirtual

Reimplemented from MythPlayer.

Definition at line 104 of file mythdvdplayer.cpp.

◆ VideoStart()

void MythDVDPlayer::VideoStart ( void  )
overrideprotectedvirtual

Reimplemented from MythPlayer.

Definition at line 109 of file mythdvdplayer.cpp.

◆ VideoLoop()

bool MythDVDPlayer::VideoLoop ( void  )
overrideprotectedvirtual

Reimplemented from MythPlayer.

Definition at line 117 of file mythdvdplayer.cpp.

◆ EventStart()

void MythDVDPlayer::EventStart ( void  )
overrideprotectedvirtual

Reimplemented from MythPlayer.

Definition at line 260 of file mythdvdplayer.cpp.

◆ EventEnd()

void MythDVDPlayer::EventEnd ( void  )
protectedvirtual

Definition at line 314 of file mythdvdplayer.cpp.

◆ InitialSeek()

void MythDVDPlayer::InitialSeek ( void  )
overrideprotectedvirtual

Reimplemented from MythPlayer.

Definition at line 282 of file mythdvdplayer.cpp.

◆ SeekForScreenGrab()

void MythDVDPlayer::SeekForScreenGrab ( uint64_t &  number,
uint64_t  frameNum,
bool  absolute 
)
overrideprotectedvirtual

Reimplemented from MythPlayer.

Definition at line 498 of file mythdvdplayer.cpp.

◆ AutoDeint()

void MythDVDPlayer::AutoDeint ( VideoFrame frame,
bool  allow_lock = true 
)
overrideprotectedvirtual

Reimplemented from MythPlayer.

Definition at line 11 of file mythdvdplayer.cpp.

◆ CalcMaxFFTime()

long long MythDVDPlayer::CalcMaxFFTime ( long long  ffframes,
bool  setjump = true 
) const
overrideprotectedvirtual

CalcMaxFFTime(ffframes): forward ffframes forward.

Handle liveTV transitions if necessay

Reimplemented from MythPlayer.

Definition at line 458 of file mythdvdplayer.cpp.

◆ FastForward()

bool MythDVDPlayer::FastForward ( float  seconds)
overrideprotectedvirtual

Reimplemented from MythPlayer.

Definition at line 236 of file mythdvdplayer.cpp.

◆ Rewind()

bool MythDVDPlayer::Rewind ( float  seconds)
overrideprotectedvirtual

Reimplemented from MythPlayer.

Definition at line 243 of file mythdvdplayer.cpp.

◆ JumpToFrame()

bool MythDVDPlayer::JumpToFrame ( uint64_t  frame)
overrideprotectedvirtual

Reimplemented from MythPlayer.

Definition at line 250 of file mythdvdplayer.cpp.

◆ DisableCaptions()

void MythDVDPlayer::DisableCaptions ( uint  mode,
bool  osd_msg = true 
)
overrideprotectedvirtual

Reimplemented from MythPlayer.

Definition at line 40 of file mythdvdplayer.cpp.

◆ EnableCaptions()

void MythDVDPlayer::EnableCaptions ( uint  mode,
bool  osd_msg = true 
)
overrideprotectedvirtual

Reimplemented from MythPlayer.

Definition at line 47 of file mythdvdplayer.cpp.

◆ SetTrack()

int MythDVDPlayer::SetTrack ( uint  type,
int  trackNo 
)
overrideprotectedvirtual

Reimplemented from MythPlayer.

Definition at line 520 of file mythdvdplayer.cpp.

◆ CreateDecoder()

void MythDVDPlayer::CreateDecoder ( char *  testbuf,
int  testreadsize 
)
overrideprotectedvirtual

Reimplemented from MythPlayer.

Definition at line 758 of file mythdvdplayer.cpp.

◆ DoJumpChapter()

bool MythDVDPlayer::DoJumpChapter ( int  chapter)
overrideprotectedvirtual

Reimplemented from MythPlayer.

Definition at line 552 of file mythdvdplayer.cpp.

◆ DoChangeDVDTrack()

void MythDVDPlayer::DoChangeDVDTrack ( void  )
private

◆ DisplayDVDButton()

void MythDVDPlayer::DisplayDVDButton ( void  )
private

Definition at line 590 of file mythdvdplayer.cpp.

Referenced by DisplayLastFrame(), DisplayPauseFrame(), and PreProcessNormalFrame().

◆ DisplayLastFrame()

void MythDVDPlayer::DisplayLastFrame ( void  )
private

Definition at line 225 of file mythdvdplayer.cpp.

Member Data Documentation

◆ m_buttonVersion

int MythDVDPlayer::m_buttonVersion {0}
private

Definition at line 112 of file mythdvdplayer.h.

Referenced by DisplayDVDButton().

◆ m_dvd_stillframe_showing

bool MythDVDPlayer::m_dvd_stillframe_showing {false}
private

Definition at line 113 of file mythdvdplayer.h.

Referenced by VideoLoop().

◆ m_initial_title

int MythDVDPlayer::m_initial_title {-1}
private

Definition at line 116 of file mythdvdplayer.h.

Referenced by GetBookmark(), and InitialSeek().

◆ m_initial_audio_track

int MythDVDPlayer::m_initial_audio_track {-1}
private

Definition at line 117 of file mythdvdplayer.h.

Referenced by GetBookmark(), and InitialSeek().

◆ m_initial_subtitle_track

int MythDVDPlayer::m_initial_subtitle_track {-1}
private

Definition at line 118 of file mythdvdplayer.h.

Referenced by GetBookmark(), and InitialSeek().

◆ m_initial_dvdstate

QString MythDVDPlayer::m_initial_dvdstate
private

Definition at line 119 of file mythdvdplayer.h.

Referenced by GetBookmark(), and VideoStart().

◆ m_stillFrameTimer

MythTimer MythDVDPlayer::m_stillFrameTimer
private

◆ m_stillFrameLength

int MythDVDPlayer::m_stillFrameLength {0}
private

◆ m_stillFrameTimerLock

QMutex MythDVDPlayer::m_stillFrameTimerLock
private

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