MythTV  master
Classes | Public Member Functions | Private Attributes | List of all members
VideoDecodeBuffer Class Reference

#include <videodecodebuffer.h>

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

Classes

struct  DecodedFrameInfo
 

Public Member Functions

 VideoDecodeBuffer (MythPlayer *player, MythVideoOutput *videoout, bool cutlist, int size=5)
 
virtual ~VideoDecodeBuffer ()
 
void stop (void)
 
void run () override
 
VideoFrameGetFrame (int &didFF, bool &isKey)
 

Private Attributes

MythPlayer *const m_player {nullptr}
 
MythVideoOutput *const m_videoOutput {nullptr}
 
bool const m_honorCutlist
 
int const m_maxFrames
 
bool volatile m_runThread {true}
 
bool volatile m_isRunning {false}
 
QMutex m_queueLock
 
bool m_eof {false}
 
QList< DecodedFrameInfom_frameList
 
QWaitCondition m_frameWaitCond
 

Detailed Description

Definition at line 14 of file videodecodebuffer.h.

Constructor & Destructor Documentation

◆ VideoDecodeBuffer()

VideoDecodeBuffer::VideoDecodeBuffer ( MythPlayer player,
MythVideoOutput videoout,
bool  cutlist,
int  size = 5 
)
inline

Definition at line 17 of file videodecodebuffer.h.

◆ ~VideoDecodeBuffer()

VideoDecodeBuffer::~VideoDecodeBuffer ( )
virtual

Definition at line 8 of file videodecodebuffer.cpp.

Member Function Documentation

◆ stop()

void VideoDecodeBuffer::stop ( void  )

Definition at line 17 of file videodecodebuffer.cpp.

◆ run()

void VideoDecodeBuffer::run ( void  )
override

Definition at line 26 of file videodecodebuffer.cpp.

◆ GetFrame()

VideoFrame * VideoDecodeBuffer::GetFrame ( int &  didFF,
bool isKey 
)

Definition at line 68 of file videodecodebuffer.cpp.

Member Data Documentation

◆ m_player

MythPlayer* const VideoDecodeBuffer::m_player {nullptr}
private

Definition at line 35 of file videodecodebuffer.h.

Referenced by run().

◆ m_videoOutput

MythVideoOutput* const VideoDecodeBuffer::m_videoOutput {nullptr}
private

Definition at line 36 of file videodecodebuffer.h.

Referenced by run().

◆ m_honorCutlist

bool const VideoDecodeBuffer::m_honorCutlist
private

Definition at line 37 of file videodecodebuffer.h.

Referenced by run().

◆ m_maxFrames

int const VideoDecodeBuffer::m_maxFrames
private

Definition at line 38 of file videodecodebuffer.h.

Referenced by run().

◆ m_runThread

bool volatile VideoDecodeBuffer::m_runThread {true}
private

Definition at line 39 of file videodecodebuffer.h.

Referenced by run(), stop(), and ~VideoDecodeBuffer().

◆ m_isRunning

bool volatile VideoDecodeBuffer::m_isRunning {false}
private

Definition at line 40 of file videodecodebuffer.h.

Referenced by run(), stop(), and ~VideoDecodeBuffer().

◆ m_queueLock

QMutex VideoDecodeBuffer::m_queueLock
mutableprivate

Definition at line 41 of file videodecodebuffer.h.

Referenced by GetFrame(), and run().

◆ m_eof

bool VideoDecodeBuffer::m_eof {false}
private

Definition at line 42 of file videodecodebuffer.h.

Referenced by GetFrame(), and run().

◆ m_frameList

QList<DecodedFrameInfo> VideoDecodeBuffer::m_frameList
private

Definition at line 43 of file videodecodebuffer.h.

Referenced by GetFrame(), and run().

◆ m_frameWaitCond

QWaitCondition VideoDecodeBuffer::m_frameWaitCond
private

Definition at line 44 of file videodecodebuffer.h.

Referenced by GetFrame(), run(), stop(), and ~VideoDecodeBuffer().


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