MythTV  master
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
PrivateDecoderVDA Class Reference

#include <privatedecoder_vda.h>

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

Public Member Functions

 PrivateDecoderVDA ()
 
virtual ~PrivateDecoderVDA ()
 
QString GetName (void) override
 
bool Init (const QString &decoder, PlayerFlags flags, AVCodecContext *avctx) override
 
bool Reset (void) override
 
int GetFrame (AVStream *stream, AVFrame *picture, int *got_picture_ptr, AVPacket *pkt) override
 
bool HasBufferedFrames (void) override
 
bool NeedsReorderedPTS (void) override
 
- Public Member Functions inherited from PrivateDecoder
 PrivateDecoder ()=default
 
virtual ~PrivateDecoder ()=default
 

Static Public Member Functions

static void GetDecoders (render_opts &opts)
 
static void VDADecoderCallback (void *decompressionOutputRefCon, CFDictionaryRef frameInfo, OSStatus status, uint32_t infoFlags, CVImageBufferRef imageBuffer)
 
- Static Public Member Functions inherited from PrivateDecoder
static void GetDecoders (render_opts &opts)
 
static PrivateDecoderCreate (const QString &decoder, PlayerFlags flags, AVCodecContext *avctx)
 

Protected Member Functions

void PopDecodedFrame (void)
 
bool RewriteAvcc (uint8_t **data, int &len, CFDataRef &data_out)
 
bool RewritePacket (uint8_t *data, int len, CFDataRef &data_out)
 

Protected Attributes

VDALibrarym_lib
 
VDADecoderm_decoder
 
QSize m_size
 
QMutex m_frame_lock
 
int32_t m_frames_decoded
 
QList< VDAFramem_decoded_frames
 
bool m_annexb
 
uint32_t m_slice_count
 
bool m_convert_3byteTo4byteNALSize
 
int32_t m_max_ref_frames
 
- Protected Attributes inherited from PrivateDecoder
MythAVCopy m_copyCtx
 

Detailed Description

Definition at line 53 of file privatedecoder_vda.h.

Constructor & Destructor Documentation

◆ PrivateDecoderVDA()

PrivateDecoderVDA::PrivateDecoderVDA ( )

Definition at line 298 of file privatedecoder_vda.cpp.

◆ ~PrivateDecoderVDA()

PrivateDecoderVDA::~PrivateDecoderVDA ( )
virtual

Definition at line 305 of file privatedecoder_vda.cpp.

Member Function Documentation

◆ GetDecoders()

void PrivateDecoderVDA::GetDecoders ( render_opts opts)
static

Definition at line 290 of file privatedecoder_vda.cpp.

Referenced by PrivateDecoder::GetDecoders().

◆ GetName()

QString PrivateDecoderVDA::GetName ( void  )
inlineoverridevirtual

Implements PrivateDecoder.

Definition at line 59 of file privatedecoder_vda.h.

◆ Init()

bool PrivateDecoderVDA::Init ( const QString &  decoder,
PlayerFlags  flags,
AVCodecContext *  avctx 
)
overridevirtual

Implements PrivateDecoder.

Definition at line 317 of file privatedecoder_vda.cpp.

Referenced by PrivateDecoder::Create().

◆ Reset()

bool PrivateDecoderVDA::Reset ( void  )
overridevirtual

Implements PrivateDecoder.

Definition at line 512 of file privatedecoder_vda.cpp.

Referenced by ~PrivateDecoderVDA().

◆ GetFrame()

int PrivateDecoderVDA::GetFrame ( AVStream *  stream,
AVFrame picture,
int *  got_picture_ptr,
AVPacket *  pkt 
)
overridevirtual

Implements PrivateDecoder.

Definition at line 542 of file privatedecoder_vda.cpp.

◆ HasBufferedFrames()

bool PrivateDecoderVDA::HasBufferedFrames ( void  )
overridevirtual

Reimplemented from PrivateDecoder.

Definition at line 534 of file privatedecoder_vda.cpp.

◆ NeedsReorderedPTS()

bool PrivateDecoderVDA::NeedsReorderedPTS ( void  )
inlineoverridevirtual

Reimplemented from PrivateDecoder.

Definition at line 69 of file privatedecoder_vda.h.

◆ VDADecoderCallback()

void PrivateDecoderVDA::VDADecoderCallback ( void *  decompressionOutputRefCon,
CFDictionaryRef  frameInfo,
OSStatus  status,
uint32_t  infoFlags,
CVImageBufferRef  imageBuffer 
)
static

Definition at line 676 of file privatedecoder_vda.cpp.

Referenced by Init().

◆ PopDecodedFrame()

void PrivateDecoderVDA::PopDecodedFrame ( void  )
protected

Definition at line 525 of file privatedecoder_vda.cpp.

Referenced by Reset().

◆ RewriteAvcc()

bool PrivateDecoderVDA::RewriteAvcc ( uint8_t **  data,
int &  len,
CFDataRef &  data_out 
)
protected

◆ RewritePacket()

bool PrivateDecoderVDA::RewritePacket ( uint8_t *  data,
int  len,
CFDataRef &  data_out 
)
protected

Member Data Documentation

◆ m_lib

VDALibrary* PrivateDecoderVDA::m_lib
protected

Definition at line 83 of file privatedecoder_vda.h.

Referenced by GetFrame(), Init(), Reset(), and ~PrivateDecoderVDA().

◆ m_decoder

VDADecoder* PrivateDecoderVDA::m_decoder
protected

Definition at line 84 of file privatedecoder_vda.h.

Referenced by GetFrame(), Init(), Reset(), and ~PrivateDecoderVDA().

◆ m_size

QSize PrivateDecoderVDA::m_size
protected

Definition at line 85 of file privatedecoder_vda.h.

Referenced by Init().

◆ m_frame_lock

QMutex PrivateDecoderVDA::m_frame_lock
protected

◆ m_frames_decoded

int32_t PrivateDecoderVDA::m_frames_decoded
protected

Definition at line 87 of file privatedecoder_vda.h.

Referenced by Reset(), and VDADecoderCallback().

◆ m_decoded_frames

QList<VDAFrame> PrivateDecoderVDA::m_decoded_frames
protected

◆ m_annexb

bool PrivateDecoderVDA::m_annexb
protected

Definition at line 89 of file privatedecoder_vda.h.

Referenced by GetFrame(), and Init().

◆ m_slice_count

uint32_t PrivateDecoderVDA::m_slice_count
protected

Definition at line 90 of file privatedecoder_vda.h.

Referenced by Init().

◆ m_convert_3byteTo4byteNALSize

bool PrivateDecoderVDA::m_convert_3byteTo4byteNALSize
protected

Definition at line 91 of file privatedecoder_vda.h.

Referenced by GetFrame(), and Init().

◆ m_max_ref_frames

int32_t PrivateDecoderVDA::m_max_ref_frames
protected

Definition at line 92 of file privatedecoder_vda.h.

Referenced by GetFrame(), and Init().


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