DVDRingBufferPriv Class Reference

#include <DVDRingBuffer.h>

List of all members.


Detailed Description

RingBuffer class for DVD's.

A spiffy little class to allow a RingBuffer to read from DVDs.

Definition at line 27 of file DVDRingBuffer.h.


Public Member Functions

 DVDRingBufferPriv ()
virtual ~DVDRingBufferPriv ()
int GetTitle (void) const
int GetPart (void) const
bool IsInMenu (void) const
bool IsOpen (void) const
long long GetReadPosition (void)
 returns current position in the PGC.
long long GetTotalReadPosition (void)
void GetDescForPos (QString &desc) const
void GetPartAndTitle (int &_part, int &_title) const
uint GetTotalTimeOfTitle (void)
 get the total time of the title in seconds 90000 ticks = 1 sec
uint GetChapterLength (void) const
uint GetCellStart (void)
 get the start of the cell in seconds
bool PGCLengthChanged (void)
 check if pgc length has changed
bool CellChanged (void)
 check if dvd cell has changed
bool InStillFrame (void) const
bool AudioStreamsChanged (void) const
bool IsWaiting (void) const
int NumPartsInTitle (void) const
void GetMenuSPUPkt (uint8_t *buf, int len, int stream_id)
 get SPU pkt from dvd menu subtitle stream
QRect GetButtonCoords (void)
 get coordinates of highlighted button
AVSubtitleGetMenuSubtitle (void)
 returns dvd menu button information if available.
void ReleaseMenuButton (void)
bool IgnoringStillorWait (void)
uint GetAudioLanguage (int id)
 get the audio language from the dvd
int GetSubTrackNum (uint key)
 get real dvd track subtitle number
int GetAudioTrackNum (uint key)
 get real dvd track audio number
uint GetSubtitleLanguage (int key)
 get the subtitle language from the dvd
void SetMenuPktPts (long long pts)
long long GetMenuPktPts (void)
bool DecodeSubtitles (AVSubtitle *sub, int *gotSubtitles, const uint8_t *buf, int buf_size)
 generate dvd subtitle bitmap or dvd menu bitmap.
bool GetNameAndSerialNum (QString &_name, QString &_serialnum)
 Get the dvd title and serial num.
bool JumpToTitle (void)
double GetFrameRate (void)
 used by DecoderBase for the total frame number calculation for position map support and ffw/rew.
bool StartOfTitle (void)
bool EndOfTitle (void)
int GetCellID (void)
int GetVobID (void)
bool IsSameChapter (int tmpcellid, int tmpvobid)
 check if the current chapter is the same as the previously accessed chapter.
void RunSeekCellStart (void)
 Run SeekCellStart its okay to run seekcellstart ffmpeg for some reason doesnt' output menu spu if seekcellstart is started too soon after a video codec/resolution change.
bool OpenFile (const QString &filename)
void PlayTitleAndPart (int _title, int _part)
void CloseDVD (void)
bool nextTrack (void)
void prevTrack (void)
int safe_read (void *data, unsigned sz)
long long NormalSeek (long long time)
void SkipStillFrame (void)
void WaitSkip (void)
bool GoToMenu (const QString str)
 jump to a dvd root or chapter menu
void GoToNextProgram (void)
void GoToPreviousProgram (void)
void MoveButtonLeft (void)
void MoveButtonRight (void)
void MoveButtonUp (void)
void MoveButtonDown (void)
void ActivateButton (void)
 action taken when a dvd menu button is selected
int NumMenuButtons (void) const
void IgnoreStillOrWait (bool skip)
void InStillFrame (bool change)
void AudioStreamsChanged (bool change)
uint GetCurrentTime (void)
uint TitleTimeLeft (void)
 returns seconds left in the title
void SetTrack (uint type, int trackNo)
 set the dvd subtitle/audio track used
int GetTrack (uint type)
 get the track the dvd should be playing.
uint8_t GetNumAudioChannels (int id)
void JumpToTitle (bool change)
void SetDVDSpeed (void)
 set dvd speed.
void SetDVDSpeed (int speed)
 set dvd speed.
void SetRunSeekCellStart (bool change)
void SetParent (NuppelVideoPlayer *p)

Protected Member Functions

long long Seek (long long time)
bool DVDButtonUpdate (bool b_mode)
 update the dvd menu button parameters when a user changes the dvd menu button position
void ClearMenuSPUParameters (void)
 clears the menu SPU pkt and parameters.
void ClearMenuButton (void)
 clears the dvd menu button structures
bool MenuButtonChanged (void)
uint ConvertLangCode (uint16_t code)
 converts the subtitle/audio lang code to iso639.
void SelectDefaultButton (void)
 determines the default dvd menu button to show when you initially access the dvd menu.
void ClearSubtitlesOSD (void)
 clear the currently displaying subtitles or dvd menu buttons.
bool SeekCellStart (void)
 seek the beginning of a dvd cell
int get_nibble (const uint8_t *buf, int nibble_offset)
 copied from ffmpeg's dvdsubdec.c
int decode_rle (uint8_t *bitmap, int linesize, int w, int h, const uint8_t *buf, int nibble_offset, int buf_size)
 decodes the bitmap from the subtitle packet.
void guess_palette (uint32_t *rgba_palette, uint8_t *palette, uint8_t *alpha)
 converts palette values from YUV to RGB
int is_transp (const uint8_t *buf, int pitch, int n, const uint8_t *transp_color)
 obtained from ffmpeg dvdsubdec.c used to find smallest bounded rectangle
int find_smallest_bounding_rectangle (AVSubtitle *s)
 obtained from ffmpeg dvdsubdec.c used to find smallest bounded rect.

Protected Attributes

dvdnav_tdvdnav
unsigned char dvdBlockWriteBuf [DVD_BLOCK_SIZE]
unsigned char * dvdBlockReadBuf
const char * dvdFilename
int dvdBlockRPos
int dvdBlockWPos
long long pgLength
long long pgcLength
long long cellStart
bool cellChanged
bool pgcLengthChanged
long long pgStart
long long currentpos
dvdnav_tlastNav
int32_t part
int32_t title
int32_t titleParts
bool gotStop
bool cellHasStillFrame
bool audioStreamsChanged
bool dvdWaiting
long long titleLength
MythTimer stillFrameTimer
uint32_t clut [16]
uint8_t button_color [4]
uint8_t button_alpha [4]
QRect hl_button
uint8_t * menuSpuPkt
int menuBuflength
AVSubtitle dvdMenuButton
bool skipstillorwait
long long cellstartPos
bool buttonSelected
bool buttonExists
int cellid
int lastcellid
int vobid
int lastvobid
bool cellRepeated
int buttonstreamid
bool runningCellStart
bool runSeekCellStart
long long menupktpts
int curAudioTrack
int8_t curSubtitleTrack
bool autoselectaudio
bool autoselectsubtitle
bool jumptotitle
long long seekpos
int seekwhence
QString dvdname
QString serialnumber
bool seeking
uint64_t seektime
uint currentTime
QMap< uint, uintseekSpeedMap
QMap< uint, uintaudioTrackMap
QMap< uint, uintsubTrackMap
NuppelVideoPlayerparent
QMutex menuBtnLock
QMutex seekLock

Constructor & Destructor Documentation

DVDRingBufferPriv::DVDRingBufferPriv (  ) 

Definition at line 27 of file DVDRingBuffer.cpp.

DVDRingBufferPriv::~DVDRingBufferPriv (  )  [virtual]

Definition at line 72 of file DVDRingBuffer.cpp.


Member Function Documentation

int DVDRingBufferPriv::GetTitle ( void   )  const [inline]

Definition at line 34 of file DVDRingBuffer.h.

int DVDRingBufferPriv::GetPart ( void   )  const [inline]

Definition at line 35 of file DVDRingBuffer.h.

bool DVDRingBufferPriv::IsInMenu ( void   )  const

bool DVDRingBufferPriv::IsOpen ( void   )  const [inline]

Definition at line 37 of file DVDRingBuffer.h.

Referenced by RingBuffer::IsOpen().

long long DVDRingBufferPriv::GetReadPosition ( void   ) 

returns current position in the PGC.

Definition at line 219 of file DVDRingBuffer.cpp.

Referenced by RingBuffer::GetReadPosition(), and safe_read().

long long DVDRingBufferPriv::GetTotalReadPosition ( void   )  [inline]

Definition at line 39 of file DVDRingBuffer.h.

Referenced by DecoderBase::PosMapFromDb().

void DVDRingBufferPriv::GetDescForPos ( QString &  desc  )  const

Definition at line 141 of file DVDRingBuffer.cpp.

Referenced by NuppelVideoPlayer::calcSliderPos().

void DVDRingBufferPriv::GetPartAndTitle ( int &  _part,
int &  _title 
) const [inline]

uint DVDRingBufferPriv::GetTotalTimeOfTitle ( void   ) 

uint DVDRingBufferPriv::GetChapterLength ( void   )  const [inline]

uint DVDRingBufferPriv::GetCellStart ( void   ) 

get the start of the cell in seconds

Definition at line 665 of file DVDRingBuffer.cpp.

Referenced by DecoderBase::ChangeDVDTrack().

bool DVDRingBufferPriv::PGCLengthChanged ( void   ) 

check if pgc length has changed

Definition at line 681 of file DVDRingBuffer.cpp.

Referenced by AvFormatDecoder::GetFrame().

bool DVDRingBufferPriv::CellChanged ( void   ) 

check if dvd cell has changed

Definition at line 672 of file DVDRingBuffer.cpp.

Referenced by AvFormatDecoder::GetFrame().

bool DVDRingBufferPriv::InStillFrame ( void   )  const [inline]

bool DVDRingBufferPriv::AudioStreamsChanged ( void   )  const [inline]

Definition at line 49 of file DVDRingBuffer.h.

Referenced by AvFormatDecoder::ScanStreams().

bool DVDRingBufferPriv::IsWaiting ( void   )  const [inline]

Definition at line 50 of file DVDRingBuffer.h.

Referenced by NuppelVideoPlayer::OutputVideoLoop().

int DVDRingBufferPriv::NumPartsInTitle ( void   )  const [inline]

Definition at line 51 of file DVDRingBuffer.h.

Referenced by TV::ShowLCDDVDInfo().

void DVDRingBufferPriv::GetMenuSPUPkt ( uint8_t *  buf,
int  len,
int  stream_id 
)

get SPU pkt from dvd menu subtitle stream

Definition at line 803 of file DVDRingBuffer.cpp.

Referenced by AvFormatDecoder::GetFrame().

QRect DVDRingBufferPriv::GetButtonCoords ( void   ) 

get coordinates of highlighted button

Definition at line 858 of file DVDRingBuffer.cpp.

Referenced by NuppelVideoPlayer::DisplayDVDButton().

AVSubtitle * DVDRingBufferPriv::GetMenuSubtitle ( void   ) 

returns dvd menu button information if available.

used by NVP::DisplayDVDButton

Definition at line 836 of file DVDRingBuffer.cpp.

Referenced by NuppelVideoPlayer::DisplayDVDButton().

void DVDRingBufferPriv::ReleaseMenuButton ( void   ) 

Definition at line 851 of file DVDRingBuffer.cpp.

Referenced by NuppelVideoPlayer::DisplayDVDButton().

bool DVDRingBufferPriv::IgnoringStillorWait ( void   )  [inline]

Definition at line 58 of file DVDRingBuffer.h.

uint DVDRingBufferPriv::GetAudioLanguage ( int  id  ) 

get the audio language from the dvd

Definition at line 1132 of file DVDRingBuffer.cpp.

Referenced by AvFormatDecoder::GetTrackDesc().

int DVDRingBufferPriv::GetSubTrackNum ( uint  stream_id  ) 

get real dvd track subtitle number

Parameters:
stream_id stream_id of dvd track.
Returns:
33 (max track num is 31) if track number not found

Definition at line 1142 of file DVDRingBuffer.cpp.

Referenced by AvFormatDecoder::ScanStreams().

int DVDRingBufferPriv::GetAudioTrackNum ( uint  stream_id  ) 

get real dvd track audio number

Parameters:
key stream_id of dvd track audioTrackMap.
Returns:
10 (max track is 7) if track number not found

Definition at line 1159 of file DVDRingBuffer.cpp.

Referenced by AvFormatDecoder::ScanStreams().

uint DVDRingBufferPriv::GetSubtitleLanguage ( int  key  ) 

get the subtitle language from the dvd

Definition at line 1174 of file DVDRingBuffer.cpp.

Referenced by AvFormatDecoder::GetTrackDesc().

void DVDRingBufferPriv::SetMenuPktPts ( long long  pts  )  [inline]

Definition at line 63 of file DVDRingBuffer.h.

long long DVDRingBufferPriv::GetMenuPktPts ( void   )  [inline]

Definition at line 64 of file DVDRingBuffer.h.

bool DVDRingBufferPriv::DecodeSubtitles ( AVSubtitle sub,
int *  gotSubtitles,
const uint8_t *  spu_pkt,
int  buf_size 
)

generate dvd subtitle bitmap or dvd menu bitmap.

code obtained from ffmpeg project

Definition at line 880 of file DVDRingBuffer.cpp.

Referenced by AvFormatDecoder::GetFrame(), and GetMenuSPUPkt().

bool DVDRingBufferPriv::GetNameAndSerialNum ( QString &  _name,
QString &  _serialnum 
)

Get the dvd title and serial num.

Definition at line 1274 of file DVDRingBuffer.cpp.

Referenced by NuppelVideoPlayer::GetDVDBookmark(), internal_play_media(), NuppelVideoPlayer::SetDVDBookmark(), and TV::ShowLCDDVDInfo().

bool DVDRingBufferPriv::JumpToTitle ( void   )  [inline]

double DVDRingBufferPriv::GetFrameRate ( void   ) 

used by DecoderBase for the total frame number calculation for position map support and ffw/rew.

FPS for a dvd is determined by AFD::normalized_fps

Definition at line 1287 of file DVDRingBuffer.cpp.

Referenced by DecoderBase::PosMapFromDb().

bool DVDRingBufferPriv::StartOfTitle ( void   )  [inline]

Definition at line 70 of file DVDRingBuffer.h.

Referenced by TV::DVDJumpBack().

bool DVDRingBufferPriv::EndOfTitle ( void   )  [inline]

Definition at line 71 of file DVDRingBuffer.h.

Referenced by TV::DVDJumpForward().

int DVDRingBufferPriv::GetCellID ( void   )  [inline]

Definition at line 74 of file DVDRingBuffer.h.

int DVDRingBufferPriv::GetVobID ( void   )  [inline]

Definition at line 75 of file DVDRingBuffer.h.

bool DVDRingBufferPriv::IsSameChapter ( int  tmpcellid,
int  tmpvobid 
)

check if the current chapter is the same as the previously accessed chapter.

Definition at line 1302 of file DVDRingBuffer.cpp.

void DVDRingBufferPriv::RunSeekCellStart ( void   ) 

Run SeekCellStart its okay to run seekcellstart ffmpeg for some reason doesnt' output menu spu if seekcellstart is started too soon after a video codec/resolution change.

Definition at line 1314 of file DVDRingBuffer.cpp.

Referenced by AvFormatDecoder::GetFrame().

bool DVDRingBufferPriv::OpenFile ( const QString &  filename  ) 

Definition at line 156 of file DVDRingBuffer.cpp.

Referenced by RingBuffer::OpenFile().

void DVDRingBufferPriv::PlayTitleAndPart ( int  _title,
int  _part 
) [inline]

Definition at line 81 of file DVDRingBuffer.h.

Referenced by NuppelVideoPlayer::GetDVDBookmark().

void DVDRingBufferPriv::CloseDVD ( void   ) 

Definition at line 78 of file DVDRingBuffer.cpp.

Referenced by ~DVDRingBufferPriv().

bool DVDRingBufferPriv::nextTrack ( void   ) 

Definition at line 629 of file DVDRingBuffer.cpp.

Referenced by DecoderBase::ChangeDVDTrack().

void DVDRingBufferPriv::prevTrack ( void   ) 

Definition at line 643 of file DVDRingBuffer.cpp.

Referenced by DecoderBase::ChangeDVDTrack().

int DVDRingBufferPriv::safe_read ( void *  data,
unsigned  sz 
)

Definition at line 234 of file DVDRingBuffer.cpp.

Referenced by OpenFile(), RingBuffer::Read(), and RingBuffer::ReadAheadThread().

long long DVDRingBufferPriv::NormalSeek ( long long  time  ) 

Definition at line 95 of file DVDRingBuffer.cpp.

Referenced by RingBuffer::Seek().

void DVDRingBufferPriv::SkipStillFrame ( void   ) 

Definition at line 688 of file DVDRingBuffer.cpp.

Referenced by TV::DVDJumpForward(), and safe_read().

void DVDRingBufferPriv::WaitSkip ( void   ) 

Definition at line 694 of file DVDRingBuffer.cpp.

Referenced by NuppelVideoPlayer::OutputVideoLoop(), and safe_read().

bool DVDRingBufferPriv::GoToMenu ( const QString  str  ) 

jump to a dvd root or chapter menu

Definition at line 704 of file DVDRingBuffer.cpp.

Referenced by NuppelVideoPlayer::GoToDVDMenu().

void DVDRingBufferPriv::GoToNextProgram ( void   ) 

Definition at line 739 of file DVDRingBuffer.cpp.

Referenced by NuppelVideoPlayer::GoToDVDProgram().

void DVDRingBufferPriv::GoToPreviousProgram ( void   ) 

Definition at line 747 of file DVDRingBuffer.cpp.

Referenced by NuppelVideoPlayer::GoToDVDProgram().

void DVDRingBufferPriv::MoveButtonLeft ( void   ) 

Definition at line 754 of file DVDRingBuffer.cpp.

Referenced by TV::ProcessKeypress().

void DVDRingBufferPriv::MoveButtonRight ( void   ) 

Definition at line 763 of file DVDRingBuffer.cpp.

Referenced by TV::ProcessKeypress().

void DVDRingBufferPriv::MoveButtonUp ( void   ) 

Definition at line 772 of file DVDRingBuffer.cpp.

Referenced by TV::ProcessKeypress().

void DVDRingBufferPriv::MoveButtonDown ( void   ) 

Definition at line 781 of file DVDRingBuffer.cpp.

Referenced by TV::ProcessKeypress().

void DVDRingBufferPriv::ActivateButton ( void   ) 

action taken when a dvd menu button is selected

Definition at line 792 of file DVDRingBuffer.cpp.

Referenced by NuppelVideoPlayer::ActivateDVDButton().

int DVDRingBufferPriv::NumMenuButtons ( void   )  const

void DVDRingBufferPriv::IgnoreStillOrWait ( bool  skip  )  [inline]

Definition at line 99 of file DVDRingBuffer.h.

Referenced by AvFormatDecoder::OpenFile(), and TV::StopStuff().

void DVDRingBufferPriv::InStillFrame ( bool  change  )  [inline]

Definition at line 100 of file DVDRingBuffer.h.

void DVDRingBufferPriv::AudioStreamsChanged ( bool  change  )  [inline]

Definition at line 101 of file DVDRingBuffer.h.

uint DVDRingBufferPriv::GetCurrentTime ( void   )  [inline]

uint DVDRingBufferPriv::TitleTimeLeft ( void   ) 

returns seconds left in the title

Definition at line 1358 of file DVDRingBuffer.cpp.

Referenced by NuppelVideoPlayer::CalcMaxFFTime(), and DecoderBase::DoFastForward().

void DVDRingBufferPriv::SetTrack ( uint  type,
int  trackNo 
)

set the dvd subtitle/audio track used

Parameters:
type currently kTrackTypeSubtitle or kTrackTypeAudio
trackNo if -1 then autoselect the track num from the dvd IFO

Definition at line 1219 of file DVDRingBuffer.cpp.

Referenced by NuppelVideoPlayer::DisableCaptions(), NuppelVideoPlayer::EnableCaptions(), and NuppelVideoPlayer::GetDVDBookmark().

int DVDRingBufferPriv::GetTrack ( uint  type  ) 

get the track the dvd should be playing.

can either be set by the user using DVDRingBufferPriv::SetTrack or determined from the dvd IFO.

Parameters:
type,: use either kTrackTypeSubtitle or kTrackTypeAudio

Definition at line 1241 of file DVDRingBuffer.cpp.

Referenced by AvFormatDecoder::ScanStreams(), and NuppelVideoPlayer::SetDVDBookmark().

uint8_t DVDRingBufferPriv::GetNumAudioChannels ( int  id  ) 

Definition at line 1251 of file DVDRingBuffer.cpp.

Referenced by AvFormatDecoder::GetTrackDesc().

void DVDRingBufferPriv::JumpToTitle ( bool  change  )  [inline]

Definition at line 107 of file DVDRingBuffer.h.

void DVDRingBufferPriv::SetDVDSpeed ( void   ) 

set dvd speed.

uses the DVDDriveSpeed Setting from the settings table

Definition at line 1342 of file DVDRingBuffer.cpp.

Referenced by CloseDVD(), NuppelVideoPlayer::DoPlay(), and OpenFile().

void DVDRingBufferPriv::SetDVDSpeed ( int  speed  ) 

set dvd speed.

Definition at line 1351 of file DVDRingBuffer.cpp.

void DVDRingBufferPriv::SetRunSeekCellStart ( bool  change  )  [inline]

Definition at line 110 of file DVDRingBuffer.h.

Referenced by AvFormatDecoder::GetFrame(), and NuppelVideoPlayer::ReinitVideo().

void DVDRingBufferPriv::SetParent ( NuppelVideoPlayer p  )  [inline]

Definition at line 112 of file DVDRingBuffer.h.

Referenced by NuppelVideoPlayer::StartPlaying().

long long DVDRingBufferPriv::Seek ( long long  time  )  [protected]

Definition at line 101 of file DVDRingBuffer.cpp.

Referenced by NormalSeek(), prevTrack(), and SeekCellStart().

bool DVDRingBufferPriv::DVDButtonUpdate ( bool  b_mode  )  [protected]

update the dvd menu button parameters when a user changes the dvd menu button position

Definition at line 1049 of file DVDRingBuffer.cpp.

Referenced by GetMenuSPUPkt(), and safe_read().

void DVDRingBufferPriv::ClearMenuSPUParameters ( void   )  [protected]

clears the menu SPU pkt and parameters.

necessary action during dvd menu changes

Definition at line 1106 of file DVDRingBuffer.cpp.

Referenced by GetMenuSPUPkt(), and ~DVDRingBufferPriv().

void DVDRingBufferPriv::ClearMenuButton ( void   )  [protected]

clears the dvd menu button structures

Definition at line 1086 of file DVDRingBuffer.cpp.

Referenced by ClearMenuSPUParameters().

bool DVDRingBufferPriv::MenuButtonChanged ( void   )  [protected]

uint DVDRingBufferPriv::ConvertLangCode ( uint16_t  code  )  [protected]

converts the subtitle/audio lang code to iso639.

Definition at line 1182 of file DVDRingBuffer.cpp.

Referenced by GetAudioLanguage(), and GetSubtitleLanguage().

void DVDRingBufferPriv::SelectDefaultButton ( void   )  [protected]

determines the default dvd menu button to show when you initially access the dvd menu.

Definition at line 1199 of file DVDRingBuffer.cpp.

Referenced by GetMenuSPUPkt().

void DVDRingBufferPriv::ClearSubtitlesOSD ( void   )  [protected]

clear the currently displaying subtitles or dvd menu buttons.

needed for the dvd menu.

Definition at line 1262 of file DVDRingBuffer.cpp.

Referenced by safe_read().

bool DVDRingBufferPriv::SeekCellStart ( void   )  [protected]

seek the beginning of a dvd cell

Definition at line 1332 of file DVDRingBuffer.cpp.

Referenced by RunSeekCellStart().

int DVDRingBufferPriv::get_nibble ( const uint8_t *  buf,
int  nibble_offset 
) [protected]

copied from ffmpeg's dvdsubdec.c

Definition at line 1444 of file DVDRingBuffer.cpp.

Referenced by decode_rle().

int DVDRingBufferPriv::decode_rle ( uint8_t *  bitmap,
int  linesize,
int  w,
int  h,
const uint8_t *  buf,
int  nibble_offset,
int  buf_size 
) [protected]

decodes the bitmap from the subtitle packet.

copied from ffmpeg's dvdsubdec.c.

Definition at line 1397 of file DVDRingBuffer.cpp.

Referenced by DecodeSubtitles().

void DVDRingBufferPriv::guess_palette ( uint32_t rgba_palette,
uint8_t *  palette,
uint8_t *  alpha 
) [protected]

converts palette values from YUV to RGB

Definition at line 1366 of file DVDRingBuffer.cpp.

Referenced by DecodeSubtitles().

int DVDRingBufferPriv::is_transp ( const uint8_t *  buf,
int  pitch,
int  n,
const uint8_t *  transp_color 
) [protected]

obtained from ffmpeg dvdsubdec.c used to find smallest bounded rectangle

Definition at line 1453 of file DVDRingBuffer.cpp.

Referenced by find_smallest_bounding_rectangle().

int DVDRingBufferPriv::find_smallest_bounding_rectangle ( AVSubtitle s  )  [protected]

obtained from ffmpeg dvdsubdec.c used to find smallest bounded rect.

helps prevent jerky picture during subtitle creation

Definition at line 1471 of file DVDRingBuffer.cpp.

Referenced by DecodeSubtitles().


Member Data Documentation

unsigned char DVDRingBufferPriv::dvdBlockWriteBuf[DVD_BLOCK_SIZE] [protected]

Definition at line 117 of file DVDRingBuffer.h.

Referenced by DVDRingBufferPriv(), and safe_read().

unsigned char* DVDRingBufferPriv::dvdBlockReadBuf [protected]

Definition at line 118 of file DVDRingBuffer.h.

const char* DVDRingBufferPriv::dvdFilename [protected]

Definition at line 119 of file DVDRingBuffer.h.

Referenced by OpenFile(), and SetDVDSpeed().

Definition at line 120 of file DVDRingBuffer.h.

Definition at line 121 of file DVDRingBuffer.h.

long long DVDRingBufferPriv::pgLength [protected]

Definition at line 122 of file DVDRingBuffer.h.

Referenced by safe_read().

long long DVDRingBufferPriv::pgcLength [protected]

Definition at line 123 of file DVDRingBuffer.h.

Referenced by GetTotalTimeOfTitle(), and safe_read().

long long DVDRingBufferPriv::cellStart [protected]

Definition at line 124 of file DVDRingBuffer.h.

Referenced by GetCellStart(), safe_read(), and SeekCellStart().

Definition at line 125 of file DVDRingBuffer.h.

Referenced by CellChanged(), and safe_read().

Definition at line 126 of file DVDRingBuffer.h.

Referenced by PGCLengthChanged(), and safe_read().

long long DVDRingBufferPriv::pgStart [protected]

Definition at line 127 of file DVDRingBuffer.h.

Referenced by safe_read().

long long DVDRingBufferPriv::currentpos [protected]

Definition at line 128 of file DVDRingBuffer.h.

Referenced by safe_read(), and Seek().

Definition at line 129 of file DVDRingBuffer.h.

Referenced by safe_read().

Definition at line 130 of file DVDRingBuffer.h.

Referenced by GetDescForPos(), nextTrack(), OpenFile(), prevTrack(), and safe_read().

Definition at line 131 of file DVDRingBuffer.h.

Referenced by GetDescForPos(), nextTrack(), OpenFile(), prevTrack(), and safe_read().

Definition at line 132 of file DVDRingBuffer.h.

Referenced by nextTrack(), OpenFile(), and safe_read().

Definition at line 133 of file DVDRingBuffer.h.

Referenced by nextTrack(), prevTrack(), safe_read(), and Seek().

Definition at line 135 of file DVDRingBuffer.h.

Referenced by safe_read().

Definition at line 136 of file DVDRingBuffer.h.

Referenced by safe_read().

Definition at line 137 of file DVDRingBuffer.h.

Referenced by safe_read(), and WaitSkip().

long long DVDRingBufferPriv::titleLength [protected]

Definition at line 138 of file DVDRingBuffer.h.

Referenced by safe_read().

Definition at line 139 of file DVDRingBuffer.h.

Referenced by safe_read().

Definition at line 140 of file DVDRingBuffer.h.

Referenced by DVDRingBufferPriv(), guess_palette(), and safe_read().

uint8_t DVDRingBufferPriv::button_color[4] [protected]

Definition at line 141 of file DVDRingBuffer.h.

Referenced by DecodeSubtitles(), DVDButtonUpdate(), and DVDRingBufferPriv().

uint8_t DVDRingBufferPriv::button_alpha[4] [protected]

Definition at line 142 of file DVDRingBuffer.h.

Referenced by DecodeSubtitles(), DVDButtonUpdate(), and DVDRingBufferPriv().

QRect DVDRingBufferPriv::hl_button [protected]

uint8_t* DVDRingBufferPriv::menuSpuPkt [protected]

Definition at line 144 of file DVDRingBuffer.h.

Referenced by ClearMenuSPUParameters(), and GetMenuSPUPkt().

Definition at line 145 of file DVDRingBuffer.h.

Referenced by ClearMenuSPUParameters(), GetMenuSPUPkt(), and GetMenuSubtitle().

Definition at line 147 of file DVDRingBuffer.h.

Referenced by safe_read().

long long DVDRingBufferPriv::cellstartPos [protected]

Definition at line 148 of file DVDRingBuffer.h.

Referenced by safe_read().

Definition at line 149 of file DVDRingBuffer.h.

Referenced by GetMenuSPUPkt(), and safe_read().

int DVDRingBufferPriv::cellid [protected]

Definition at line 151 of file DVDRingBuffer.h.

Referenced by IsSameChapter(), and safe_read().

Definition at line 152 of file DVDRingBuffer.h.

Referenced by safe_read().

int DVDRingBufferPriv::vobid [protected]

Definition at line 153 of file DVDRingBuffer.h.

Referenced by IsSameChapter(), and safe_read().

Definition at line 154 of file DVDRingBuffer.h.

Referenced by safe_read().

Definition at line 155 of file DVDRingBuffer.h.

Referenced by safe_read(), and SelectDefaultButton().

Definition at line 156 of file DVDRingBuffer.h.

Referenced by GetMenuSPUPkt(), and safe_read().

Definition at line 157 of file DVDRingBuffer.h.

Referenced by safe_read(), Seek(), and SeekCellStart().

Definition at line 158 of file DVDRingBuffer.h.

Referenced by RunSeekCellStart().

long long DVDRingBufferPriv::menupktpts [protected]

Definition at line 159 of file DVDRingBuffer.h.

Referenced by safe_read().

Definition at line 160 of file DVDRingBuffer.h.

Referenced by GetTrack(), safe_read(), and SetTrack().

Definition at line 161 of file DVDRingBuffer.h.

Referenced by DecodeSubtitles(), GetTrack(), safe_read(), and SetTrack().

Definition at line 162 of file DVDRingBuffer.h.

Referenced by safe_read(), and SetTrack().

Definition at line 163 of file DVDRingBuffer.h.

Referenced by safe_read(), and SetTrack().

Definition at line 164 of file DVDRingBuffer.h.

long long DVDRingBufferPriv::seekpos [protected]

Definition at line 165 of file DVDRingBuffer.h.

Definition at line 166 of file DVDRingBuffer.h.

QString DVDRingBufferPriv::dvdname [protected]

Definition at line 167 of file DVDRingBuffer.h.

Referenced by GetNameAndSerialNum(), and OpenFile().

QString DVDRingBufferPriv::serialnumber [protected]

Definition at line 168 of file DVDRingBuffer.h.

Referenced by GetNameAndSerialNum(), and OpenFile().

Definition at line 169 of file DVDRingBuffer.h.

Referenced by safe_read(), and Seek().

Definition at line 170 of file DVDRingBuffer.h.

Referenced by safe_read(), and Seek().

Definition at line 171 of file DVDRingBuffer.h.

Referenced by safe_read().

Definition at line 172 of file DVDRingBuffer.h.

Referenced by DVDRingBufferPriv(), and Seek().

Definition at line 173 of file DVDRingBuffer.h.

Referenced by GetAudioTrackNum(), and safe_read().

Definition at line 174 of file DVDRingBuffer.h.

Referenced by GetSubTrackNum(), and safe_read().

Definition at line 176 of file DVDRingBuffer.h.

Referenced by ClearSubtitlesOSD(), DecodeSubtitles(), DVDButtonUpdate(), safe_read(), and Seek().

QMutex DVDRingBufferPriv::menuBtnLock [protected]

Definition at line 178 of file DVDRingBuffer.h.

Referenced by GetMenuSPUPkt(), GetMenuSubtitle(), ReleaseMenuButton(), and safe_read().

QMutex DVDRingBufferPriv::seekLock [protected]


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

Generated on Sat Dec 18 05:16:02 2010 for MythTV by  doxygen 1.5.5