MythTV  master
Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
RTjpeg Class Reference

#include <RTjpegN.h>

Collaboration diagram for RTjpeg:
Collaboration graph
[legend]

Public Member Functions

 RTjpeg ()
 
 ~RTjpeg ()
 
int SetQuality (int *quality)
 
int SetFormat (const int *fmt)
 
int SetSize (const int *w, const int *h)
 
int SetIntra (int *key, int *lm, int *cm)
 
int Compress (int8_t *sp, uint8_t **planes)
 
void Decompress (int8_t *sp, uint8_t **planes)
 
void SetNextKey (void)
 

Private Member Functions

void QuantInit (void)
 
void DctInit (void)
 
void DctY (uint8_t *idata, int rskip)
 
void IdctInit (void)
 
void Idct (uint8_t *odata, int16_t *data, int rskip)
 
void CalcTbls (void)
 
int compressYUV420 (int8_t *sp, uint8_t **planes)
 
int compressYUV422 (int8_t *sp, uint8_t **planes)
 
int compress8 (int8_t *sp, uint8_t **planes)
 
int mcompressYUV420 (int8_t *sp, uint8_t **planes)
 
int mcompressYUV422 (int8_t *sp, uint8_t **planes)
 
int mcompress8 (int8_t *sp, uint8_t **planes)
 
void decompressYUV422 (int8_t *sp, uint8_t **planes)
 
void decompressYUV420 (int8_t *sp, uint8_t **planes)
 
void decompress8 (int8_t *sp, uint8_t **planes)
 

Static Private Member Functions

static int b2s (const int16_t *data, int8_t *strm, uint8_t bt8)
 
static int s2b (int16_t *data, const int8_t *strm, uint8_t bt8, int32_t *qtbla)
 
static void Quant (int16_t *block, int32_t *qtbl)
 
static int bcomp (int16_t *rblock, int16_t *old, mmx_t *mask)
 

Private Attributes

int16_t m_block [64] {0}
 
int32_t m_ws [64 *4] {0}
 
int32_t m_lqt [64] {0}
 
int32_t m_cqt [64] {0}
 
int32_t m_liqt [64] {0}
 
int32_t m_ciqt [64] {0}
 
int32_t m_lB8 {0}
 
int32_t m_cB8 {0}
 
int32_t m_yWidth {0}
 
int32_t m_cWidth {0}
 
int32_t m_ySize {0}
 
int32_t m_cSize {0}
 
int16_t * m_old {nullptr}
 
int16_t * m_oldStart {nullptr}
 
int m_keyCount {0}
 
int m_width {0}
 
int m_height {0}
 
int m_q {0}
 
int m_f {0}
 
mmx_t m_lMask {}
 
mmx_t m_cMask {}
 
int m_keyRate {0}
 

Detailed Description

Definition at line 64 of file RTjpegN.h.

Constructor & Destructor Documentation

◆ RTjpeg()

RTjpeg::RTjpeg ( )

Definition at line 2767 of file RTjpegN.cpp.

◆ ~RTjpeg()

RTjpeg::~RTjpeg ( )

Definition at line 2780 of file RTjpegN.cpp.

Member Function Documentation

◆ SetQuality()

int RTjpeg::SetQuality ( int *  quality)

Definition at line 2667 of file RTjpegN.cpp.

Referenced by Decompress(), and NuppelVideoRecorder::SetupRTjpeg().

◆ SetFormat()

int RTjpeg::SetFormat ( const int *  fmt)

Definition at line 2684 of file RTjpegN.cpp.

Referenced by NuppelDecoder::NuppelDecoder(), and NuppelVideoRecorder::SetupRTjpeg().

◆ SetSize()

int RTjpeg::SetSize ( const int *  w,
const int *  h 
)

Definition at line 2690 of file RTjpegN.cpp.

Referenced by Decompress(), and NuppelVideoRecorder::SetupRTjpeg().

◆ SetIntra()

int RTjpeg::SetIntra ( int *  key,
int *  lm,
int *  cm 
)

Definition at line 2725 of file RTjpegN.cpp.

Referenced by NuppelVideoRecorder::SetupRTjpeg().

◆ Compress()

int RTjpeg::Compress ( int8_t *  sp,
uint8_t **  planes 
)

Definition at line 3270 of file RTjpegN.cpp.

Referenced by NuppelVideoRecorder::WriteVideo().

◆ Decompress()

void RTjpeg::Decompress ( int8_t *  sp,
uint8_t **  planes 
)

Definition at line 3307 of file RTjpegN.cpp.

Referenced by NuppelDecoder::DecodeFrame().

◆ SetNextKey()

void RTjpeg::SetNextKey ( void  )

Definition at line 3265 of file RTjpegN.cpp.

Referenced by NuppelVideoRecorder::WriteVideo().

◆ b2s()

int RTjpeg::b2s ( const int16_t *  data,
int8_t *  strm,
uint8_t  bt8 
)
staticprivate

◆ s2b()

int RTjpeg::s2b ( int16_t *  data,
const int8_t *  strm,
uint8_t  bt8,
int32_t *  qtbla 
)
staticprivate

Definition at line 279 of file RTjpegN.cpp.

Referenced by decompress8(), decompressYUV420(), and decompressYUV422().

◆ QuantInit()

void RTjpeg::QuantInit ( void  )
private

Definition at line 513 of file RTjpegN.cpp.

Referenced by SetQuality().

◆ Quant()

void RTjpeg::Quant ( int16_t *  block,
int32_t *  qtbl 
)
staticprivate

◆ DctInit()

void RTjpeg::DctInit ( void  )
private

Definition at line 588 of file RTjpegN.cpp.

Referenced by SetQuality().

◆ DctY()

void RTjpeg::DctY ( uint8_t *  idata,
int  rskip 
)
private

◆ IdctInit()

void RTjpeg::IdctInit ( void  )
private

Definition at line 1509 of file RTjpegN.cpp.

Referenced by SetQuality().

◆ Idct()

void RTjpeg::Idct ( uint8_t *  odata,
int16_t *  data,
int  rskip 
)
private

Definition at line 1518 of file RTjpegN.cpp.

Referenced by decompress8(), decompressYUV420(), and decompressYUV422().

◆ CalcTbls()

void RTjpeg::CalcTbls ( void  )
inlineprivate

Definition at line 2636 of file RTjpegN.cpp.

Referenced by SetQuality().

◆ compressYUV420()

int RTjpeg::compressYUV420 ( int8_t *  sp,
uint8_t **  planes 
)
inlineprivate

Definition at line 2785 of file RTjpegN.cpp.

Referenced by Compress().

◆ compressYUV422()

int RTjpeg::compressYUV422 ( int8_t *  sp,
uint8_t **  planes 
)
inlineprivate

Definition at line 2836 of file RTjpegN.cpp.

Referenced by Compress().

◆ compress8()

int RTjpeg::compress8 ( int8_t *  sp,
uint8_t **  planes 
)
inlineprivate

Definition at line 2879 of file RTjpegN.cpp.

Referenced by Compress().

◆ mcompressYUV420()

int RTjpeg::mcompressYUV420 ( int8_t *  sp,
uint8_t **  planes 
)
inlineprivate

Definition at line 3098 of file RTjpegN.cpp.

Referenced by Compress().

◆ mcompressYUV422()

int RTjpeg::mcompressYUV422 ( int8_t *  sp,
uint8_t **  planes 
)
inlineprivate

Definition at line 3180 of file RTjpegN.cpp.

Referenced by Compress().

◆ mcompress8()

int RTjpeg::mcompress8 ( int8_t *  sp,
uint8_t **  planes 
)
inlineprivate

Definition at line 3239 of file RTjpegN.cpp.

Referenced by Compress().

◆ decompressYUV422()

void RTjpeg::decompressYUV422 ( int8_t *  sp,
uint8_t **  planes 
)
inlineprivate

Definition at line 2907 of file RTjpegN.cpp.

Referenced by Decompress().

◆ decompressYUV420()

void RTjpeg::decompressYUV420 ( int8_t *  sp,
uint8_t **  planes 
)
inlineprivate

Definition at line 2955 of file RTjpegN.cpp.

Referenced by Decompress().

◆ decompress8()

void RTjpeg::decompress8 ( int8_t *  sp,
uint8_t **  planes 
)
inlineprivate

Definition at line 3017 of file RTjpegN.cpp.

Referenced by Decompress().

◆ bcomp()

int RTjpeg::bcomp ( int16_t *  rblock,
int16_t *  old,
mmx_t *  mask 
)
staticprivate

Definition at line 3043 of file RTjpegN.cpp.

Referenced by mcompress8(), mcompressYUV420(), and mcompressYUV422().

Member Data Documentation

◆ m_block

int16_t RTjpeg::m_block[64] {0}
private

◆ m_ws

int32_t RTjpeg::m_ws[64 *4] {0}
private

Definition at line 114 of file RTjpegN.h.

Referenced by DctY(), and Idct().

◆ m_lqt

int32_t RTjpeg::m_lqt[64] {0}
private

◆ m_cqt

int32_t RTjpeg::m_cqt[64] {0}
private

◆ m_liqt

int32_t RTjpeg::m_liqt[64] {0}
private

Definition at line 117 of file RTjpegN.h.

Referenced by CalcTbls(), decompress8(), decompressYUV420(), decompressYUV422(), and IdctInit().

◆ m_ciqt

int32_t RTjpeg::m_ciqt[64] {0}
private

Definition at line 118 of file RTjpegN.h.

Referenced by CalcTbls(), decompressYUV420(), decompressYUV422(), and IdctInit().

◆ m_lB8

int32_t RTjpeg::m_lB8 {0}
private

◆ m_cB8

int32_t RTjpeg::m_cB8 {0}
private

◆ m_yWidth

int32_t RTjpeg::m_yWidth {0}
private

Definition at line 121 of file RTjpegN.h.

Referenced by compressYUV420(), compressYUV422(), mcompressYUV420(), mcompressYUV422(), and SetSize().

◆ m_cWidth

int32_t RTjpeg::m_cWidth {0}
private

Definition at line 122 of file RTjpegN.h.

Referenced by compressYUV420(), compressYUV422(), mcompressYUV420(), mcompressYUV422(), and SetSize().

◆ m_ySize

int32_t RTjpeg::m_ySize {0}
private

Definition at line 123 of file RTjpegN.h.

Referenced by SetSize().

◆ m_cSize

int32_t RTjpeg::m_cSize {0}
private

Definition at line 124 of file RTjpegN.h.

Referenced by SetSize().

◆ m_old

int16_t* RTjpeg::m_old {nullptr}
private

Definition at line 125 of file RTjpegN.h.

Referenced by Compress(), mcompress8(), mcompressYUV420(), mcompressYUV422(), SetIntra(), and SetSize().

◆ m_oldStart

int16_t* RTjpeg::m_oldStart {nullptr}
private

Definition at line 126 of file RTjpegN.h.

Referenced by SetIntra(), SetSize(), and ~RTjpeg().

◆ m_keyCount

int RTjpeg::m_keyCount {0}
private

Definition at line 127 of file RTjpegN.h.

Referenced by Compress(), and SetNextKey().

◆ m_width

int RTjpeg::m_width {0}
private

◆ m_height

int RTjpeg::m_height {0}
private

◆ m_q

int RTjpeg::m_q {0}
private

Definition at line 131 of file RTjpegN.h.

Referenced by CalcTbls(), Compress(), Decompress(), and SetQuality().

◆ m_f

int RTjpeg::m_f {0}
private

Definition at line 132 of file RTjpegN.h.

Referenced by Compress(), Decompress(), and SetFormat().

◆ m_lMask

mmx_t RTjpeg::m_lMask {}
private

Definition at line 134 of file RTjpegN.h.

Referenced by mcompress8(), mcompressYUV420(), mcompressYUV422(), and SetIntra().

◆ m_cMask

mmx_t RTjpeg::m_cMask {}
private

Definition at line 135 of file RTjpegN.h.

Referenced by mcompressYUV420(), mcompressYUV422(), and SetIntra().

◆ m_keyRate

int RTjpeg::m_keyRate {0}
private

Definition at line 140 of file RTjpegN.h.

Referenced by Compress(), SetIntra(), and SetSize().


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