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

#include <RTjpegN.h>

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

int b2s (const int16_t *data, int8_t *strm, uint8_t bt8)
 
int s2b (int16_t *data, const int8_t *strm, uint8_t bt8, int32_t *qtbla)
 
void QuantInit (void)
 
void Quant (int16_t *block, int32_t *qtbl)
 
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)
 
int bcomp (int16_t *rblock, int16_t *old, mmx_t *mask)
 

Private Attributes

int16_t block [64] MALIGN32
 
int32_t ws [64 *4] MALIGN32
 
int32_t lqt [64] MALIGN32
 
int32_t cqt [64] MALIGN32
 
int32_t liqt [64] MALIGN32
 
int32_t ciqt [64] MALIGN32
 
int32_t lb8
 
int32_t cb8
 
int32_t Ywidth
 
int32_t Cwidth
 
int32_t Ysize
 
int32_t Csize
 
int16_t * old {nullptr}
 
int16_t * old_start {nullptr}
 
int key_count
 
int width
 
int height
 
int Q
 
int f
 
mmx_t lmask
 
mmx_t cmask
 
int key_rate
 

Detailed Description

Definition at line 64 of file RTjpegN.h.

Constructor & Destructor Documentation

◆ RTjpeg()

RTjpeg::RTjpeg ( void  )

Definition at line 2794 of file RTjpegN.cpp.

◆ ~RTjpeg()

RTjpeg::~RTjpeg ( void  )

Definition at line 2822 of file RTjpegN.cpp.

Member Function Documentation

◆ SetQuality()

int RTjpeg::SetQuality ( int *  quality)

Definition at line 2691 of file RTjpegN.cpp.

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

◆ SetFormat()

int RTjpeg::SetFormat ( const int *  fmt)

Definition at line 2708 of file RTjpegN.cpp.

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

◆ SetSize()

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

Definition at line 2714 of file RTjpegN.cpp.

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

◆ SetIntra()

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

Definition at line 2750 of file RTjpegN.cpp.

Referenced by NuppelVideoRecorder::SetupRTjpeg().

◆ Compress()

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

Definition at line 3330 of file RTjpegN.cpp.

Referenced by NuppelVideoRecorder::WriteVideo().

◆ Decompress()

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

Definition at line 3367 of file RTjpegN.cpp.

Referenced by NuppelDecoder::DecodeFrame().

◆ SetNextKey()

void RTjpeg::SetNextKey ( void  )

Definition at line 3325 of file RTjpegN.cpp.

Referenced by NuppelVideoRecorder::WriteVideo().

◆ b2s()

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

◆ s2b()

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

Definition at line 281 of file RTjpegN.cpp.

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

◆ QuantInit()

void RTjpeg::QuantInit ( void  )
private

Definition at line 518 of file RTjpegN.cpp.

Referenced by SetQuality().

◆ Quant()

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

◆ DctInit()

void RTjpeg::DctInit ( void  )
private

Definition at line 598 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 1528 of file RTjpegN.cpp.

Referenced by SetQuality().

◆ Idct()

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

Definition at line 1539 of file RTjpegN.cpp.

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

◆ CalcTbls()

void RTjpeg::CalcTbls ( void  )
inlineprivate

Definition at line 2657 of file RTjpegN.cpp.

Referenced by SetQuality().

◆ compressYUV420()

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

Definition at line 2827 of file RTjpegN.cpp.

Referenced by Compress().

◆ compressYUV422()

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

Definition at line 2880 of file RTjpegN.cpp.

Referenced by Compress().

◆ compress8()

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

Definition at line 2925 of file RTjpegN.cpp.

Referenced by Compress().

◆ mcompressYUV420()

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

Definition at line 3149 of file RTjpegN.cpp.

Referenced by Compress().

◆ mcompressYUV422()

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

Definition at line 3234 of file RTjpegN.cpp.

Referenced by Compress().

◆ mcompress8()

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

Definition at line 3296 of file RTjpegN.cpp.

Referenced by Compress().

◆ decompressYUV422()

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

Definition at line 2954 of file RTjpegN.cpp.

Referenced by Decompress().

◆ decompressYUV420()

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

Definition at line 3003 of file RTjpegN.cpp.

Referenced by Decompress().

◆ decompress8()

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

Definition at line 3066 of file RTjpegN.cpp.

Referenced by Decompress().

◆ bcomp()

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

Definition at line 3091 of file RTjpegN.cpp.

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

Member Data Documentation

◆ MALIGN32 [1/6]

int16_t block [64] RTjpeg::MALIGN32
private

Definition at line 113 of file RTjpegN.h.

◆ MALIGN32 [2/6]

int32_t ws [64*4] RTjpeg::MALIGN32
private

Definition at line 114 of file RTjpegN.h.

◆ MALIGN32 [3/6]

int32_t lqt [64] RTjpeg::MALIGN32
private

Definition at line 115 of file RTjpegN.h.

◆ MALIGN32 [4/6]

int32_t cqt [64] RTjpeg::MALIGN32
private

Definition at line 116 of file RTjpegN.h.

◆ MALIGN32 [5/6]

int32_t liqt [64] RTjpeg::MALIGN32
private

Definition at line 117 of file RTjpegN.h.

◆ MALIGN32 [6/6]

int32_t ciqt [64] RTjpeg::MALIGN32
private

Definition at line 118 of file RTjpegN.h.

◆ lb8

int32_t RTjpeg::lb8
private

◆ cb8

int32_t RTjpeg::cb8
private

◆ Ywidth

int32_t RTjpeg::Ywidth
private

◆ Cwidth

int32_t RTjpeg::Cwidth
private

◆ Ysize

int32_t RTjpeg::Ysize
private

Definition at line 123 of file RTjpegN.h.

Referenced by RTjpeg(), and SetSize().

◆ Csize

int32_t RTjpeg::Csize
private

Definition at line 124 of file RTjpegN.h.

Referenced by RTjpeg(), and SetSize().

◆ old

int16_t* RTjpeg::old {nullptr}
private

◆ old_start

int16_t* RTjpeg::old_start {nullptr}
private

Definition at line 126 of file RTjpegN.h.

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

◆ key_count

int RTjpeg::key_count
private

Definition at line 127 of file RTjpegN.h.

Referenced by Compress(), RTjpeg(), and SetNextKey().

◆ width

int RTjpeg::width
private

◆ height

int RTjpeg::height
private

◆ Q

int RTjpeg::Q
private

Definition at line 131 of file RTjpegN.h.

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

◆ f

int RTjpeg::f
private

◆ lmask

mmx_t RTjpeg::lmask
private

Definition at line 134 of file RTjpegN.h.

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

◆ cmask

mmx_t RTjpeg::cmask
private

Definition at line 135 of file RTjpegN.h.

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

◆ key_rate

int RTjpeg::key_rate
private

Definition at line 140 of file RTjpegN.h.

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


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