ResidualVM logo ResidualVM website - Forums - Contact us BuildBot - Doxygen - Wiki curved edge

Sorenson Vector Quantizer 1 decoder. More...

#include <svq1.h>

Inheritance diagram for Image::SVQ1Decoder:
Collaboration diagram for Image::SVQ1Decoder:

List of all members.

Public Member Functions

 SVQ1Decoder (uint16 width, uint16 height)
 ~SVQ1Decoder ()
const Graphics::SurfacedecodeFrame (Common::SeekableReadStream &stream)
 Decode the frame for the given data and return a pointer to a surface containing the decoded frame.
Graphics::PixelFormat getPixelFormat () const
 Get the format that the surface returned from decodeImage() will be in.

Private Types

typedef Common::Huffman
< Common::BitStream32BEMSB
HuffmanDecoder

Private Member Functions

bool svq1DecodeBlockIntra (Common::BitStream32BEMSB *s, byte *pixels, int pitch)
bool svq1DecodeBlockNonIntra (Common::BitStream32BEMSB *s, byte *pixels, int pitch)
bool svq1DecodeMotionVector (Common::BitStream32BEMSB *s, Common::Point *mv, Common::Point **pmv)
void svq1SkipBlock (byte *current, byte *previous, int pitch, int x, int y)
bool svq1MotionInterBlock (Common::BitStream32BEMSB *ss, byte *current, byte *previous, int pitch, Common::Point *motion, int x, int y)
bool svq1MotionInter4vBlock (Common::BitStream32BEMSB *ss, byte *current, byte *previous, int pitch, Common::Point *motion, int x, int y)
bool svq1DecodeDeltaBlock (Common::BitStream32BEMSB *ss, byte *current, byte *previous, int pitch, Common::Point *motion, int x, int y)
void putPixels8C (byte *block, const byte *pixels, int lineSize, int h)
void putPixels8L2 (byte *dst, const byte *src1, const byte *src2, int dstStride, int srcStride1, int srcStride2, int h)
void putPixels8X2C (byte *block, const byte *pixels, int lineSize, int h)
void putPixels8Y2C (byte *block, const byte *pixels, int lineSize, int h)
void putPixels8XY2C (byte *block, const byte *pixels, int lineSize, int h)
void putPixels16C (byte *block, const byte *pixels, int lineSize, int h)
void putPixels16X2C (byte *block, const byte *pixels, int lineSize, int h)
void putPixels16Y2C (byte *block, const byte *pixels, int lineSize, int h)
void putPixels16XY2C (byte *block, const byte *pixels, int lineSize, int h)

Private Attributes

Graphics::Surface_surface
uint16 _width
uint16 _height
uint16 _frameWidth
uint16 _frameHeight
byte_last [3]
HuffmanDecoder_blockType
HuffmanDecoder_intraMultistage [6]
HuffmanDecoder_interMultistage [6]
HuffmanDecoder_intraMean
HuffmanDecoder_interMean
HuffmanDecoder_motionComponent

Detailed Description

Sorenson Vector Quantizer 1 decoder.

Used by PICT/QuickTime.

Definition at line 42 of file svq1.h.


Member Typedef Documentation


Constructor & Destructor Documentation

Image::SVQ1Decoder::SVQ1Decoder ( uint16  width,
uint16  height 
)

Definition at line 47 of file svq1.cpp.

Image::SVQ1Decoder::~SVQ1Decoder (  ) 

Definition at line 71 of file svq1.cpp.


Member Function Documentation

const Graphics::Surface * Image::SVQ1Decoder::decodeFrame ( Common::SeekableReadStream stream  )  [virtual]

Decode the frame for the given data and return a pointer to a surface containing the decoded frame.

Returns:
a pointer to the decoded frame

Implements Image::Codec.

Definition at line 94 of file svq1.cpp.

Graphics::PixelFormat Image::SVQ1Decoder::getPixelFormat (  )  const [inline, virtual]

Get the format that the surface returned from decodeImage() will be in.

Implements Image::Codec.

Definition at line 48 of file svq1.h.

void Image::SVQ1Decoder::putPixels16C ( byte block,
const byte pixels,
int  lineSize,
int  h 
) [private]

Definition at line 594 of file svq1.cpp.

void Image::SVQ1Decoder::putPixels16X2C ( byte block,
const byte pixels,
int  lineSize,
int  h 
) [private]

Definition at line 599 of file svq1.cpp.

void Image::SVQ1Decoder::putPixels16XY2C ( byte block,
const byte pixels,
int  lineSize,
int  h 
) [private]

Definition at line 609 of file svq1.cpp.

void Image::SVQ1Decoder::putPixels16Y2C ( byte block,
const byte pixels,
int  lineSize,
int  h 
) [private]

Definition at line 604 of file svq1.cpp.

void Image::SVQ1Decoder::putPixels8C ( byte block,
const byte pixels,
int  lineSize,
int  h 
) [private]

Definition at line 530 of file svq1.cpp.

void Image::SVQ1Decoder::putPixels8L2 ( byte dst,
const byte src1,
const byte src2,
int  dstStride,
int  srcStride1,
int  srcStride2,
int  h 
) [private]

Definition at line 543 of file svq1.cpp.

void Image::SVQ1Decoder::putPixels8X2C ( byte block,
const byte pixels,
int  lineSize,
int  h 
) [private]

Definition at line 555 of file svq1.cpp.

void Image::SVQ1Decoder::putPixels8XY2C ( byte block,
const byte pixels,
int  lineSize,
int  h 
) [private]

Definition at line 563 of file svq1.cpp.

void Image::SVQ1Decoder::putPixels8Y2C ( byte block,
const byte pixels,
int  lineSize,
int  h 
) [private]

Definition at line 559 of file svq1.cpp.

bool Image::SVQ1Decoder::svq1DecodeBlockIntra ( Common::BitStream32BEMSB s,
byte pixels,
int  pitch 
) [private]

Definition at line 285 of file svq1.cpp.

bool Image::SVQ1Decoder::svq1DecodeBlockNonIntra ( Common::BitStream32BEMSB s,
byte pixels,
int  pitch 
) [private]

Definition at line 386 of file svq1.cpp.

bool Image::SVQ1Decoder::svq1DecodeDeltaBlock ( Common::BitStream32BEMSB ss,
byte current,
byte previous,
int  pitch,
Common::Point motion,
int  x,
int  y 
) [private]

Definition at line 752 of file svq1.cpp.

bool Image::SVQ1Decoder::svq1DecodeMotionVector ( Common::BitStream32BEMSB s,
Common::Point mv,
Common::Point **  pmv 
) [private]

Definition at line 500 of file svq1.cpp.

bool Image::SVQ1Decoder::svq1MotionInter4vBlock ( Common::BitStream32BEMSB ss,
byte current,
byte previous,
int  pitch,
Common::Point motion,
int  x,
int  y 
) [private]

Definition at line 665 of file svq1.cpp.

bool Image::SVQ1Decoder::svq1MotionInterBlock ( Common::BitStream32BEMSB ss,
byte current,
byte previous,
int  pitch,
Common::Point motion,
int  x,
int  y 
) [private]

Definition at line 614 of file svq1.cpp.

void Image::SVQ1Decoder::svq1SkipBlock ( byte current,
byte previous,
int  pitch,
int  x,
int  y 
) [private]

Definition at line 519 of file svq1.cpp.


Member Data Documentation

Definition at line 59 of file svq1.h.

Definition at line 53 of file svq1.h.

Definition at line 53 of file svq1.h.

Definition at line 52 of file svq1.h.

Definition at line 63 of file svq1.h.

Definition at line 61 of file svq1.h.

Definition at line 62 of file svq1.h.

Definition at line 60 of file svq1.h.

Definition at line 55 of file svq1.h.

Definition at line 64 of file svq1.h.

Definition at line 51 of file svq1.h.

Definition at line 52 of file svq1.h.


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


Generated on Sat Nov 16 2019 05:03:23 for ResidualVM by doxygen 1.7.1
curved edge   curved edge