MythTV
master
libs
libmythtv
mythplayerui.h
Go to the documentation of this file.
1
#ifndef MYTHPLAYERUI_H
2
#define MYTHPLAYERUI_H
3
4
// MythTV
5
#include "
mythplayereditorui.h
"
6
#include "
mythvideoscantracker.h
"
7
#include "
jitterometer.h
"
8
#include "
mythplayer.h
"
9
10
class
MTV_PUBLIC
MythPlayerUI
:
public
MythPlayerEditorUI
,
public
MythVideoScanTracker
11
{
12
Q_OBJECT
13
14
public
slots:
15
void
OSDDebugVisibilityChanged(
bool
Visible
);
16
17
protected
slots:
18
void
InitialiseState
()
override
;
19
void
ChangeOSDDebug();
20
void
UpdateOSDDebug();
21
virtual
void
SetBookmark(
bool
Clear
=
false
);
22
virtual
void
SetLastPlayPosition(uint64_t frame = 0);
23
24
public
:
25
MythPlayerUI
(
MythMainWindow
* MainWindow,
TV
* Tv,
PlayerContext
* Context,
PlayerFlags
Flags);
26
27
bool
StartPlaying();
28
virtual
void
InitialSeek();
29
virtual
void
EventLoop();
30
void
ReinitVideo
(
bool
ForceUpdate)
override
;
31
virtual
void
VideoStart();
32
virtual
void
EventStart();
33
virtual
bool
VideoLoop();
34
virtual
void
PreProcessNormalFrame();
35
void
ChangeSpeed
()
override
;
36
void
SetVideoParams
(
int
Width,
int
Height,
double
FrameRate
,
float
Aspect,
37
bool
ForceUpdate,
int
ReferenceFrames,
38
FrameScanType
Scan =
kScan_Ignore
,
39
const
QString& CodecName = QString())
override
;
40
void
GetPlaybackData(
InfoMap
& Map);
41
void
GetCodecDescription(
InfoMap
& Map);
42
bool
CanSupportDoubleRate();
43
void
SetWatched(
bool
ForceWatched =
false
);
44
45
protected
:
46
void
InitFrameInterval
()
override
;
47
virtual
void
DisplayPauseFrame();
48
virtual
bool
DisplayNormalFrame(
bool
CheckPrebuffer =
true
);
49
50
void
FileChanged();
51
void
RefreshPauseFrame();
52
void
RenderVideoFrame(
MythVideoFrame
*
Frame
,
FrameScanType
Scan,
bool
Prepare, std::chrono::microseconds Wait);
53
void
DoDisplayVideoFrame(
MythVideoFrame
*
Frame
, std::chrono::microseconds Due);
54
void
EnableFrameRateMonitor(
bool
Enable =
false
);
55
void
EnableBitrateMonitor(
bool
Enable =
false
);
56
57
Jitterometer
m_outputJmeter {
"Player"
};
58
std::chrono::microseconds m_refreshInterval { 0us };
59
60
private
:
61
Q_DISABLE_COPY(
MythPlayerUI
)
62
63
void
SwitchToProgram();
64
void
JumpToProgram();
65
void
JumpToStream(
const
QString &stream);
66
67
bool
m_osdDebug {
false
};
68
QTimer
m_osdDebugTimer
;
69
};
70
71
#endif
mythplayereditorui.h
MythPlayer::ChangeSpeed
virtual void ChangeSpeed(void)
Definition:
mythplayer.cpp:1371
Frame
Definition:
zmdefines.h:93
FrameScanType
FrameScanType
Definition:
videoouttypes.h:94
mythplayer.h
PlayerFlags
PlayerFlags
Definition:
mythplayer.h:65
MythPlayerUI::m_osdDebugTimer
QTimer m_osdDebugTimer
Definition:
mythplayerui.h:68
Visible
Definition:
channelsettings.cpp:416
InfoMap
QHash< QString, QString > InfoMap
Definition:
mythtypes.h:15
MythPlayerUI
Definition:
mythplayerui.h:10
mythvideoscantracker.h
FrameRate
Definition:
recorderbase.h:37
jitterometer.h
Jitterometer
Definition:
jitterometer.h:43
MythPlayerEditorUI::InitialiseState
void InitialiseState() override
Definition:
mythplayereditorui.cpp:26
MythPlayer::ReinitVideo
virtual void ReinitVideo(bool ForceUpdate)
Definition:
mythplayer.cpp:298
MythPlayer::SetVideoParams
virtual void SetVideoParams(int w, int h, double fps, float aspect, bool ForceUpdate, int ReferenceFrames, FrameScanType=kScan_Ignore, const QString &codecName=QString())
Definition:
mythplayer.cpp:325
MTV_PUBLIC
#define MTV_PUBLIC
Definition:
mythtvexp.h:15
MythPlayer::InitFrameInterval
virtual void InitFrameInterval()
Definition:
mythplayer.cpp:698
MythPlayerEditorUI
Definition:
mythplayereditorui.h:7
Clear
#define Clear(a)
Definition:
audiooutputopensles.cpp:54
PlayerContext
Definition:
playercontext.h:53
MythVideoScanTracker
Definition:
mythvideoscantracker.h:12
MythVideoFrame
Definition:
mythframe.h:88
MythMainWindow
Definition:
mythmainwindow.h:28
kScan_Ignore
@ kScan_Ignore
Definition:
videoouttypes.h:96
TV
Control TV playback.
Definition:
tv_play.h:154
Generated on Sat Dec 2 2023 03:22:25 for MythTV by
1.8.17