MythTV  master
mythbdplayer.h
Go to the documentation of this file.
1 #ifndef MYTHBDPLAYER_H
2 #define MYTHBDPLAYER_H
3 
4 // Qt
5 #include <QCoreApplication>
6 
7 // MythTV
8 #include "mythplayer.h"
9 
10 class MythBDPlayer : public MythPlayer
11 {
12  Q_DECLARE_TR_FUNCTIONS(MythBDPlayer)
13 
14  public:
15  explicit MythBDPlayer(PlayerFlags Flags = kNoFlags);
16  bool HasReachedEof (void) const override;
17  bool GoToMenu (const QString& Menu) override;
18  int GetNumChapters (void) override;
19  int GetCurrentChapter (void) override;
20  void GetChapterTimes (QList<long long> &ChapterTimes) override;
21  int64_t GetChapter (int Chapter) override;
22  int GetNumTitles (void) const override;
23  int GetNumAngles (void) const override;
24  int GetCurrentTitle (void) const override;
25  int GetCurrentAngle (void) const override;
26  int GetTitleDuration (int Title) const override;
27  QString GetTitleName (int Title) const override;
28  QString GetAngleName (int Angle) const override;
29  bool SwitchTitle (int Title) override;
30  bool PrevTitle (void) override;
31  bool NextTitle (void) override;
32  bool SwitchAngle (int Angle) override;
33  bool PrevAngle (void) override;
34  bool NextAngle (void) override;
35  void SetBookmark (bool Clear) override;
36  uint64_t GetBookmark (void) override;
37 
38  // Disable screen grabs for Bluray
39  char *GetScreenGrabAtFrame(uint64_t /*FrameNum*/, bool /*Absolute*/, int &/*BufferSize*/,
40  int &/*FrameWidth*/, int &/*FrameHeight*/, float &/*AspectRatio*/) override
41  { return nullptr; }
42  char *GetScreenGrab(int /*SecondsIn*/, int &/*BufferSize*/, int &/*FrameWidth*/,
43  int &/*FrameHeight*/, float &/*AspectRatio*/) override
44  { return nullptr; }
45 
46  protected:
47  void VideoStart (void) override;
48  bool VideoLoop (void) override;
49  void EventStart (void) override;
50  void DisplayPauseFrame (void) override;
51  void PreProcessNormalFrame(void) override;
52  bool JumpToFrame (uint64_t Frame) override;
53  void CreateDecoder (char *TestBuffer, int TestReadSize) override;
54  void SeekForScreenGrab (uint64_t &/*Number*/, uint64_t /*FrameNumber*/,
55  bool /*Absolute*/) override {}
56 
57  private:
58  Q_DISABLE_COPY(MythBDPlayer)
59  void DisplayMenu(void);
60 
61  bool m_stillFrameShowing { false };
63 };
64 
65 #endif
MythBDPlayer::GetScreenGrabAtFrame
char * GetScreenGrabAtFrame(uint64_t, bool, int &, int &, int &, float &) override
Returns a one RGB frame grab from a video.
Definition: mythbdplayer.h:39
MythBDPlayer::GetScreenGrab
char * GetScreenGrab(int, int &, int &, int &, float &) override
Returns a one RGB frame grab from a video.
Definition: mythbdplayer.h:42
MythBDPlayer::GetChapter
int64_t GetChapter(int Chapter) override
Definition: mythbdplayer.cpp:182
MythBDPlayer::GetChapterTimes
void GetChapterTimes(QList< long long > &ChapterTimes) override
Definition: mythbdplayer.cpp:190
MythBDPlayer::EventStart
void EventStart(void) override
Definition: mythbdplayer.cpp:150
MythBDPlayer::CreateDecoder
void CreateDecoder(char *TestBuffer, int TestReadSize) override
Definition: mythbdplayer.cpp:423
MythBDPlayer::PrevAngle
bool PrevAngle(void) override
Definition: mythbdplayer.cpp:336
MythBDPlayer::SetBookmark
void SetBookmark(bool Clear) override
Definition: mythbdplayer.cpp:347
MythBDPlayer::GetNumTitles
int GetNumTitles(void) const override
Definition: mythbdplayer.cpp:197
Frame
Definition: zmdefines.h:94
MythBDPlayer::DisplayPauseFrame
void DisplayPauseFrame(void) override
Definition: mythbdplayer.cpp:53
MythBDPlayer::m_stillFrameShowing
bool m_stillFrameShowing
Definition: mythbdplayer.h:61
MythBDPlayer::GetCurrentAngle
int GetCurrentAngle(void) const override
Definition: mythbdplayer.cpp:221
mythplayer.h
MythBDPlayer::NextTitle
bool NextTitle(void) override
Definition: mythbdplayer.cpp:287
PlayerFlags
PlayerFlags
Definition: mythplayer.h:88
MythPlayer
Definition: mythplayer.h:165
MythBDPlayer::DisplayMenu
void DisplayMenu(void)
Definition: mythbdplayer.cpp:41
MythBDPlayer::NextAngle
bool NextAngle(void) override
Definition: mythbdplayer.cpp:325
MythBDPlayer::VideoStart
void VideoStart(void) override
Definition: mythbdplayer.cpp:61
MythBDPlayer::PrevTitle
bool PrevTitle(void) override
Definition: mythbdplayer.cpp:300
MythBDPlayer::m_initialBDState
QString m_initialBDState
Definition: mythbdplayer.h:62
MythBDPlayer::GetNumAngles
int GetNumAngles(void) const override
Definition: mythbdplayer.cpp:207
MythBDPlayer::GetTitleDuration
int GetTitleDuration(int Title) const override
Definition: mythbdplayer.cpp:228
MythBDPlayer::GoToMenu
bool GoToMenu(const QString &Menu) override
Definition: mythbdplayer.cpp:29
MythBDPlayer::SwitchAngle
bool SwitchAngle(int Angle) override
Definition: mythbdplayer.cpp:313
MythBDPlayer::SwitchTitle
bool SwitchTitle(int Title) override
Definition: mythbdplayer.cpp:257
MythBDPlayer::VideoLoop
bool VideoLoop(void) override
Definition: mythbdplayer.cpp:69
MythBDPlayer
Definition: mythbdplayer.h:11
kNoFlags
@ kNoFlags
Definition: mythplayer.h:89
MythBDPlayer::GetAngleName
QString GetAngleName(int Angle) const override
Definition: mythbdplayer.cpp:250
Clear
#define Clear(a)
Definition: audiooutputopensles.cpp:49
MythBDPlayer::GetCurrentChapter
int GetCurrentChapter(void) override
Definition: mythbdplayer.cpp:175
MythBDPlayer::HasReachedEof
bool HasReachedEof(void) const override
Definition: mythbdplayer.cpp:16
MythBDPlayer::MythBDPlayer
MythBDPlayer(PlayerFlags Flags=kNoFlags)
Definition: mythbdplayer.cpp:11
MythBDPlayer::PreProcessNormalFrame
void PreProcessNormalFrame(void) override
Definition: mythbdplayer.cpp:24
MythBDPlayer::GetCurrentTitle
int GetCurrentTitle(void) const override
Definition: mythbdplayer.cpp:214
MythBDPlayer::GetBookmark
uint64_t GetBookmark(void) override
Definition: mythbdplayer.cpp:391
MythBDPlayer::SeekForScreenGrab
void SeekForScreenGrab(uint64_t &, uint64_t, bool) override
Definition: mythbdplayer.h:54
MythBDPlayer::GetTitleName
QString GetTitleName(int Title) const override
Definition: mythbdplayer.cpp:238
MythBDPlayer::JumpToFrame
bool JumpToFrame(uint64_t Frame) override
Definition: mythbdplayer.cpp:143
MythBDPlayer::GetNumChapters
int GetNumChapters(void) override
Definition: mythbdplayer.cpp:168