Kodi Documentation 22.0
Kodi is an open source media player and entertainment hub.
Loading...
Searching...
No Matches
CDVDInputStreamBluray Class Reference

#include <DVDInputStreamBluray.h>

Inheritance diagram for CDVDInputStreamBluray:
CDVDInputStream CDVDInputStream::IDisplayTime CDVDInputStream::IChapter CDVDInputStream::IPosTime CDVDInputStream::IMenus

Classes

struct  SPlane
 

Public Member Functions

 CDVDInputStreamBluray ()=delete
 
 CDVDInputStreamBluray (IVideoPlayer *player, const CFileItem &fileitem)
 
 ~CDVDInputStreamBluray () override
 
bool Open () override
 
void Close () override
 
int Read (uint8_t *buf, int buf_size) override
 
int64_t Seek (int64_t offset, int whence) override
 
void Abort () override
 
bool IsEOF () override
 
int64_t GetLength () override
 
int GetBlockSize () override
 
ENextStream NextStream () override
 
void ActivateButton () override
 
void SelectButton (int iButton) override
 
int GetCurrentButton () override
 
int GetTotalButtons () override
 
void OnUp () override
 
void OnDown () override
 
void OnLeft () override
 
void OnRight () override
 
bool OnMenu () override
 Open the Menu.
 
void OnBack () override
 
void OnNext () override
 
void OnPrevious () override
 
MenuType GetSupportedMenuType () override
 Get the supported menu type.
 
bool IsInMenu () override
 
bool OnMouseMove (const CPoint &point) override
 
bool OnMouseClick (const CPoint &point) override
 
void SkipStill () override
 
bool GetState (std::string &xmlstate) override
 
bool SetState (const std::string &xmlstate) override
 
bool CanSeek () override
 
void UserInput (bd_vk_key_e vk)
 
bool MouseMove (const CPoint &point)
 
bool MouseClick (const CPoint &point)
 
int GetChapter () override
 
int GetChapterCount () override
 
void GetChapterName (std::string &name, int ch=-1) override
 
int64_t GetChapterPos (int ch) override
 
bool SeekChapter (int ch) override
 
CDVDInputStream::IDisplayTimeGetIDisplayTime () override
 
int GetTotalTime () override
 
int GetTime () override
 
CDVDInputStream::IPosTimeGetIPosTime () override
 
bool PosTime (int ms) override
 
void GetStreamInfo (int pid, std::string &language)
 
void OverlayCallback (const BD_OVERLAY *const)
 
BLURAY_TITLE_INFOGetTitleLongest ()
 
BLURAY_TITLE_INFOGetTitleFile (const std::string &name)
 
void ProcessEvent ()
 
- Public Member Functions inherited from CDVDInputStream
 CDVDInputStream (DVDStreamType m_streamType, const CFileItem &fileitem)
 
virtual ~CDVDInputStream ()
 
virtual std::string & GetContent ()
 
virtual std::string GetFileName ()
 
virtual CURL GetURL ()
 
virtual bool CanPause ()
 
virtual void SetReadRate (uint32_t rate)
 Indicate expected read rate in bytes per second. This could be used to throttle caching rate. Should be seen as only a hint.
 
virtual bool GetCacheStatus (XFILE::SCacheStatus *status)
 Get the cache status.
 
bool IsStreamType (DVDStreamType type) const
 
virtual BitstreamStats GetBitstreamStats () const
 
bool ContentLookup ()
 
virtual bool IsRealtime ()
 
void SetRealtime (bool realtime)
 
virtual IDemuxGetIDemux ()
 
virtual ITimesGetITimes ()
 
virtual IChapterGetIChapter ()
 
const CVariantGetProperty (const std::string &key)
 
- Public Member Functions inherited from CDVDInputStream::IDisplayTime
virtual ~IDisplayTime ()=default
 
- Public Member Functions inherited from CDVDInputStream::IChapter
virtual ~IChapter ()=default
 
- Public Member Functions inherited from CDVDInputStream::IPosTime
virtual ~IPosTime ()=default
 
- Public Member Functions inherited from CDVDInputStream::IMenus
virtual ~IMenus ()=default
 
virtual double GetTimeStampCorrection ()
 

Protected Types

enum  EHoldState {
  HOLD_NONE = 0 , HOLD_HELD , HOLD_DATA , HOLD_STILL ,
  HOLD_ERROR , HOLD_EXIT
}
 
typedef std::shared_ptr< CDVDOverlayImageSOverlay
 
typedef std::list< SOverlaySOverlays
 

Protected Member Functions

void OverlayFlush (int64_t pts)
 
void OverlayClose ()
 

Static Protected Member Functions

static void OverlayClear (SPlane &plane, int x, int y, int w, int h)
 
static void OverlayInit (SPlane &plane, int w, int h)
 

Protected Attributes

IVideoPlayerm_player = nullptr
 
BLURAYm_bd = nullptr
 
const BLURAY_TITLE * m_title = nullptr
 
BLURAY_TITLE_INFOm_titleInfo = nullptr
 
uint32_t m_playlist = MAX_PLAYLIST_ID + 1
 
BLURAY_CLIP_INFO * m_clip = nullptr
 
uint32_t m_angle = 0
 
bool m_menu = false
 
bool m_isInMainMenu = false
 
bool m_hasOverlay = false
 
bool m_navmode = false
 
int m_dispTimeBeforeRead = 0
 
SPlane m_planes [2]
 
enum CDVDInputStreamBluray::EHoldState m_hold = HOLD_NONE
 
BD_EVENT m_event
 
- Protected Attributes inherited from CDVDInputStream
DVDStreamType m_streamType
 
BitstreamStats m_stats
 
std::string m_content
 
CFileItem m_item
 
bool m_contentLookup
 
bool m_realtime
 

Additional Inherited Members

- Public Types inherited from CDVDInputStream
enum  ENextStream { NEXTSTREAM_NONE , NEXTSTREAM_OPEN , NEXTSTREAM_RETRY }
 

Member Typedef Documentation

◆ SOverlay

typedef std::shared_ptr<CDVDOverlayImage> CDVDInputStreamBluray::SOverlay
protected

◆ SOverlays

typedef std::list<SOverlay> CDVDInputStreamBluray::SOverlays
protected

Member Enumeration Documentation

◆ EHoldState

Enumerator
HOLD_NONE 
HOLD_HELD 
HOLD_DATA 
HOLD_STILL 
HOLD_ERROR 
HOLD_EXIT 

Constructor & Destructor Documentation

◆ CDVDInputStreamBluray() [1/2]

CDVDInputStreamBluray::CDVDInputStreamBluray ( )
delete

◆ CDVDInputStreamBluray() [2/2]

CDVDInputStreamBluray::CDVDInputStreamBluray ( IVideoPlayer * player,
const CFileItem & fileitem )

◆ ~CDVDInputStreamBluray()

CDVDInputStreamBluray::~CDVDInputStreamBluray ( )
override

Member Function Documentation

◆ Abort()

void CDVDInputStreamBluray::Abort ( )
overridevirtual

Reimplemented from CDVDInputStream.

◆ ActivateButton()

void CDVDInputStreamBluray::ActivateButton ( )
inlineoverridevirtual

◆ CanSeek()

bool CDVDInputStreamBluray::CanSeek ( )
overridevirtual

Reimplemented from CDVDInputStream.

◆ Close()

void CDVDInputStreamBluray::Close ( )
overridevirtual

Reimplemented from CDVDInputStream.

◆ GetBlockSize()

int CDVDInputStreamBluray::GetBlockSize ( )
inlineoverridevirtual

Reimplemented from CDVDInputStream.

◆ GetChapter()

int CDVDInputStreamBluray::GetChapter ( )
overridevirtual

◆ GetChapterCount()

int CDVDInputStreamBluray::GetChapterCount ( )
overridevirtual

◆ GetChapterName()

void CDVDInputStreamBluray::GetChapterName ( std::string & name,
int ch = -1 )
inlineoverridevirtual

◆ GetChapterPos()

int64_t CDVDInputStreamBluray::GetChapterPos ( int ch)
overridevirtual

◆ GetCurrentButton()

int CDVDInputStreamBluray::GetCurrentButton ( )
inlineoverridevirtual

◆ GetIDisplayTime()

CDVDInputStream::IDisplayTime * CDVDInputStreamBluray::GetIDisplayTime ( )
inlineoverridevirtual

Reimplemented from CDVDInputStream.

◆ GetIPosTime()

CDVDInputStream::IPosTime * CDVDInputStreamBluray::GetIPosTime ( )
inlineoverridevirtual

Reimplemented from CDVDInputStream.

◆ GetLength()

int64_t CDVDInputStreamBluray::GetLength ( )
overridevirtual

Implements CDVDInputStream.

◆ GetState()

bool CDVDInputStreamBluray::GetState ( std::string & xmlstate)
overridevirtual

◆ GetStreamInfo()

void CDVDInputStreamBluray::GetStreamInfo ( int pid,
std::string & language )

◆ GetSupportedMenuType()

MenuType CDVDInputStreamBluray::GetSupportedMenuType ( )
overridevirtual

Get the supported menu type.

Returns
The supported menu type

Implements CDVDInputStream::IMenus.

◆ GetTime()

int CDVDInputStreamBluray::GetTime ( )
overridevirtual

◆ GetTitleFile()

BLURAY_TITLE_INFO * CDVDInputStreamBluray::GetTitleFile ( const std::string & name)

◆ GetTitleLongest()

BLURAY_TITLE_INFO * CDVDInputStreamBluray::GetTitleLongest ( )

◆ GetTotalButtons()

int CDVDInputStreamBluray::GetTotalButtons ( )
inlineoverridevirtual

◆ GetTotalTime()

int CDVDInputStreamBluray::GetTotalTime ( )
overridevirtual

◆ IsEOF()

bool CDVDInputStreamBluray::IsEOF ( )
overridevirtual

Implements CDVDInputStream.

◆ IsInMenu()

bool CDVDInputStreamBluray::IsInMenu ( )
overridevirtual

◆ MouseClick()

bool CDVDInputStreamBluray::MouseClick ( const CPoint & point)

◆ MouseMove()

bool CDVDInputStreamBluray::MouseMove ( const CPoint & point)

◆ NextStream()

CDVDInputStream::ENextStream CDVDInputStreamBluray::NextStream ( )
overridevirtual

Reimplemented from CDVDInputStream.

◆ OnBack()

void CDVDInputStreamBluray::OnBack ( )
inlineoverridevirtual

◆ OnDown()

void CDVDInputStreamBluray::OnDown ( )
inlineoverridevirtual

◆ OnLeft()

void CDVDInputStreamBluray::OnLeft ( )
inlineoverridevirtual

◆ OnMenu()

bool CDVDInputStreamBluray::OnMenu ( )
overridevirtual

Open the Menu.

Returns
true if the menu is successfully opened, false otherwise

Implements CDVDInputStream::IMenus.

◆ OnMouseClick()

bool CDVDInputStreamBluray::OnMouseClick ( const CPoint & point)
inlineoverridevirtual

◆ OnMouseMove()

bool CDVDInputStreamBluray::OnMouseMove ( const CPoint & point)
inlineoverridevirtual

◆ OnNext()

void CDVDInputStreamBluray::OnNext ( )
inlineoverridevirtual

◆ OnPrevious()

void CDVDInputStreamBluray::OnPrevious ( )
inlineoverridevirtual

◆ OnRight()

void CDVDInputStreamBluray::OnRight ( )
inlineoverridevirtual

◆ OnUp()

void CDVDInputStreamBluray::OnUp ( )
inlineoverridevirtual

◆ Open()

bool CDVDInputStreamBluray::Open ( )
overridevirtual

Reimplemented from CDVDInputStream.

◆ OverlayCallback()

void CDVDInputStreamBluray::OverlayCallback ( const BD_OVERLAY * const ov)

◆ OverlayClear()

void CDVDInputStreamBluray::OverlayClear ( SPlane & plane,
int x,
int y,
int w,
int h )
staticprotected

◆ OverlayClose()

void CDVDInputStreamBluray::OverlayClose ( )
protected

◆ OverlayFlush()

void CDVDInputStreamBluray::OverlayFlush ( int64_t pts)
protected

◆ OverlayInit()

void CDVDInputStreamBluray::OverlayInit ( SPlane & plane,
int w,
int h )
staticprotected

◆ PosTime()

bool CDVDInputStreamBluray::PosTime ( int ms)
overridevirtual

◆ ProcessEvent()

void CDVDInputStreamBluray::ProcessEvent ( )

◆ Read()

int CDVDInputStreamBluray::Read ( uint8_t * buf,
int buf_size )
overridevirtual

Implements CDVDInputStream.

◆ Seek()

int64_t CDVDInputStreamBluray::Seek ( int64_t offset,
int whence )
overridevirtual

Implements CDVDInputStream.

◆ SeekChapter()

bool CDVDInputStreamBluray::SeekChapter ( int ch)
overridevirtual

◆ SelectButton()

void CDVDInputStreamBluray::SelectButton ( int iButton)
inlineoverridevirtual

◆ SetState()

bool CDVDInputStreamBluray::SetState ( const std::string & xmlstate)
overridevirtual

◆ SkipStill()

void CDVDInputStreamBluray::SkipStill ( )
overridevirtual

◆ UserInput()

void CDVDInputStreamBluray::UserInput ( bd_vk_key_e vk)

Member Data Documentation

◆ m_angle

uint32_t CDVDInputStreamBluray::m_angle = 0
protected

◆ m_bd

BLURAY* CDVDInputStreamBluray::m_bd = nullptr
protected

◆ m_clip

BLURAY_CLIP_INFO* CDVDInputStreamBluray::m_clip = nullptr
protected

◆ m_dispTimeBeforeRead

int CDVDInputStreamBluray::m_dispTimeBeforeRead = 0
protected

◆ m_event

BD_EVENT CDVDInputStreamBluray::m_event
protected

◆ m_hasOverlay

bool CDVDInputStreamBluray::m_hasOverlay = false
protected

◆ m_hold

enum CDVDInputStreamBluray::EHoldState CDVDInputStreamBluray::m_hold = HOLD_NONE
protected

◆ m_isInMainMenu

bool CDVDInputStreamBluray::m_isInMainMenu = false
protected

◆ m_menu

bool CDVDInputStreamBluray::m_menu = false
protected

◆ m_navmode

bool CDVDInputStreamBluray::m_navmode = false
protected

◆ m_planes

SPlane CDVDInputStreamBluray::m_planes[2]
protected

◆ m_player

IVideoPlayer* CDVDInputStreamBluray::m_player = nullptr
protected

◆ m_playlist

uint32_t CDVDInputStreamBluray::m_playlist = MAX_PLAYLIST_ID + 1
protected

◆ m_title

const BLURAY_TITLE* CDVDInputStreamBluray::m_title = nullptr
protected

◆ m_titleInfo

BLURAY_TITLE_INFO* CDVDInputStreamBluray::m_titleInfo = nullptr
protected

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