intra8x8_pred.c File Reference

Functions for intra 8x8 prediction. More...

#include "global.h"
#include "intra8x8_pred.h"
#include "mb_access.h"
#include "image.h"

Include dependency graph for intra8x8_pred.c:

Go to the source code of this file.

Defines

#define P_Z   (PredPel[0])
#define P_A   (PredPel[1])
#define P_B   (PredPel[2])
#define P_C   (PredPel[3])
#define P_D   (PredPel[4])
#define P_E   (PredPel[5])
#define P_F   (PredPel[6])
#define P_G   (PredPel[7])
#define P_H   (PredPel[8])
#define P_I   (PredPel[9])
#define P_J   (PredPel[10])
#define P_K   (PredPel[11])
#define P_L   (PredPel[12])
#define P_M   (PredPel[13])
#define P_N   (PredPel[14])
#define P_O   (PredPel[15])
#define P_P   (PredPel[16])
#define P_Q   (PredPel[17])
#define P_R   (PredPel[18])
#define P_S   (PredPel[19])
#define P_T   (PredPel[20])
#define P_U   (PredPel[21])
#define P_V   (PredPel[22])
#define P_W   (PredPel[23])
#define P_X   (PredPel[24])

Functions

static void LowPassForIntra8x8Pred (imgpel *PredPel, int block_up_left, int block_up, int block_left)
static void LowPassForIntra8x8PredHor (imgpel *PredPel, int block_up_left, int block_up, int block_left)
static void LowPassForIntra8x8PredVer (imgpel *PredPel, int block_up_left, int block_up, int block_left)
static int intra8x8_dc_pred (ImageParameters *img, Macroblock *currMB, ColorPlane pl, int ioff, int joff)
static int intra8x8_vert_pred (ImageParameters *img, Macroblock *currMB, ColorPlane pl, int ioff, int joff)
static int intra8x8_hor_pred (ImageParameters *img, Macroblock *currMB, ColorPlane pl, int ioff, int joff)
static int intra8x8_diag_down_right_pred (ImageParameters *img, Macroblock *currMB, ColorPlane pl, int ioff, int joff)
static int intra8x8_diag_down_left_pred (ImageParameters *img, Macroblock *currMB, ColorPlane pl, int ioff, int joff)
static int intra8x8_vert_right_pred (ImageParameters *img, Macroblock *currMB, ColorPlane pl, int ioff, int joff)
static int intra8x8_vert_left_pred (ImageParameters *img, Macroblock *currMB, ColorPlane pl, int ioff, int joff)
static int intra8x8_hor_up_pred (ImageParameters *img, Macroblock *currMB, ColorPlane pl, int ioff, int joff)
static int intra8x8_hor_down_pred (ImageParameters *img, Macroblock *currMB, ColorPlane pl, int ioff, int joff)
int intrapred8x8 (ImageParameters *img, Macroblock *currMB, ColorPlane pl, int b8)


Detailed Description

Functions for intra 8x8 prediction.

Author:
Main contributors (see contributors.h for copyright, address and affiliation details)

Definition in file intra8x8_pred.c.


Function Documentation

static int intra8x8_dc_pred ( ImageParameters *  img,
Macroblock *  currMB,
ColorPlane  pl,
int  ioff,
int  joff 
) [inline, static]

makes and returns 8x8 DC prediction mode

Returns:
DECODING_OK decoding of intraprediction mode was sucessfull
Parameters:
img  image parameters
currMB  current macroblock
pl  current image plane
ioff  pixel offset X within MB
joff  pixel offset Y within MB

Definition at line 232 of file intra8x8_pred.c.

References storable_picture::imgUV, storable_picture::imgY, and LowPassForIntra8x8Pred().

Referenced by intrapred8x8().

Here is the call graph for this function:

static int intra8x8_diag_down_left_pred ( ImageParameters *  img,
Macroblock *  currMB,
ColorPlane  pl,
int  ioff,
int  joff 
) [inline, static]

makes and returns 8x8 diagonal down left prediction mode

Returns:
DECODING_OK decoding of intraprediction mode was sucessfull
Parameters:
img  image parameters
currMB  current macroblock
pl  current image plane
ioff  pixel offset X within MB
joff  pixel offset Y within MB

Definition at line 802 of file intra8x8_pred.c.

References storable_picture::imgUV, storable_picture::imgY, and LowPassForIntra8x8Pred().

Referenced by intrapred8x8().

Here is the call graph for this function:

static int intra8x8_diag_down_right_pred ( ImageParameters *  img,
Macroblock *  currMB,
ColorPlane  pl,
int  ioff,
int  joff 
) [inline, static]

makes and returns 8x8 diagonal down right prediction mode

Returns:
DECODING_OK decoding of intraprediction mode was sucessfull
Parameters:
img  image parameters
currMB  current macroblock
pl  current image plane
ioff  pixel offset X within MB
joff  pixel offset Y within MB

Definition at line 605 of file intra8x8_pred.c.

References storable_picture::imgUV, storable_picture::imgY, and LowPassForIntra8x8Pred().

Referenced by intrapred8x8().

Here is the call graph for this function:

static int intra8x8_hor_down_pred ( ImageParameters *  img,
Macroblock *  currMB,
ColorPlane  pl,
int  ioff,
int  joff 
) [inline, static]

makes and returns 8x8 horizontal down prediction mode

Returns:
DECODING_OK decoding of intraprediction mode was sucessfull
Parameters:
img  image parameters
currMB  current macroblock
pl  current image plane
ioff  pixel offset X within MB
joff  pixel offset Y within MB

Definition at line 1586 of file intra8x8_pred.c.

References storable_picture::imgUV, storable_picture::imgY, and LowPassForIntra8x8Pred().

Referenced by intrapred8x8().

Here is the call graph for this function:

static int intra8x8_hor_pred ( ImageParameters *  img,
Macroblock *  currMB,
ColorPlane  pl,
int  ioff,
int  joff 
) [inline, static]

makes and returns 8x8 horizontal prediction mode

Returns:
DECODING_OK decoding of intraprediction mode was sucessfull
Parameters:
img  image parameters
currMB  current macroblock
pl  current image plane
ioff  pixel offset X within MB
joff  pixel offset Y within MB

Definition at line 497 of file intra8x8_pred.c.

References storable_picture::imgUV, storable_picture::imgY, and LowPassForIntra8x8PredVer().

Referenced by intrapred8x8().

Here is the call graph for this function:

static int intra8x8_hor_up_pred ( ImageParameters *  img,
Macroblock *  currMB,
ColorPlane  pl,
int  ioff,
int  joff 
) [inline, static]

makes and returns 8x8 horizontal up prediction mode

Returns:
DECODING_OK decoding of intraprediction mode was sucessfull
Parameters:
img  image parameters
currMB  current macroblock
pl  current image plane
ioff  pixel offset X within MB
joff  pixel offset Y within MB

Definition at line 1391 of file intra8x8_pred.c.

References storable_picture::imgUV, storable_picture::imgY, and LowPassForIntra8x8Pred().

Referenced by intrapred8x8().

Here is the call graph for this function:

static int intra8x8_vert_left_pred ( ImageParameters *  img,
Macroblock *  currMB,
ColorPlane  pl,
int  ioff,
int  joff 
) [inline, static]

makes and returns 8x8 vertical left prediction mode

Returns:
DECODING_OK decoding of intraprediction mode was sucessfull
Parameters:
img  image parameters
currMB  current macroblock
pl  current image plane
ioff  pixel offset X within MB
joff  pixel offset Y within MB

Definition at line 1195 of file intra8x8_pred.c.

References storable_picture::imgUV, storable_picture::imgY, and LowPassForIntra8x8Pred().

Referenced by intrapred8x8().

Here is the call graph for this function:

static int intra8x8_vert_pred ( ImageParameters *  img,
Macroblock *  currMB,
ColorPlane  pl,
int  ioff,
int  joff 
) [inline, static]

makes and returns 8x8 vertical prediction mode

Returns:
DECODING_OK decoding of intraprediction mode was sucessfull
Parameters:
img  image parameters
currMB  current macroblock
pl  current image plane
ioff  pixel offset X within MB
joff  pixel offset Y within MB

Definition at line 382 of file intra8x8_pred.c.

References storable_picture::imgUV, storable_picture::imgY, and LowPassForIntra8x8PredHor().

Referenced by intrapred8x8().

Here is the call graph for this function:

static int intra8x8_vert_right_pred ( ImageParameters *  img,
Macroblock *  currMB,
ColorPlane  pl,
int  ioff,
int  joff 
) [inline, static]

makes and returns 8x8 vertical right prediction mode

Returns:
DECODING_OK decoding of intraprediction mode was sucessfull
Parameters:
img  image parameters
currMB  current macroblock
pl  current image plane
ioff  pixel offset X within MB
joff  pixel offset Y within MB

Definition at line 999 of file intra8x8_pred.c.

References storable_picture::imgUV, storable_picture::imgY, and LowPassForIntra8x8Pred().

Referenced by intrapred8x8().

Here is the call graph for this function:

int intrapred8x8 ( ImageParameters *  img,
Macroblock *  currMB,
ColorPlane  pl,
int  b8 
)

Make intra 8x8 prediction according to all 9 prediction modes. The routine uses left and upper neighbouring points from previous coded blocks to do this (if available). Notice that inaccessible neighbouring points are signalled with a negative value in the predmode array .

Input:
Starting point of current 8x8 block image position
Parameters:
img  image parameters
currMB  Current Macroblock
pl  Current color plane
b8  block position

Definition at line 1785 of file intra8x8_pred.c.

References intra8x8_dc_pred(), intra8x8_diag_down_left_pred(), intra8x8_diag_down_right_pred(), intra8x8_hor_down_pred(), intra8x8_hor_pred(), intra8x8_hor_up_pred(), intra8x8_vert_left_pred(), intra8x8_vert_pred(), and intra8x8_vert_right_pred().

Referenced by decode_one_component().

Here is the call graph for this function:

static void LowPassForIntra8x8Pred ( imgpel *  PredPel,
int  block_up_left,
int  block_up,
int  block_left 
) [inline, static]

static void LowPassForIntra8x8PredHor ( imgpel *  PredPel,
int  block_up_left,
int  block_up,
int  block_left 
) [inline, static]

Prefiltering for Intra8x8 prediction (Horizontal).

Definition at line 132 of file intra8x8_pred.c.

Referenced by intra8x8_vert_pred().

static void LowPassForIntra8x8PredVer ( imgpel *  PredPel,
int  block_up_left,
int  block_up,
int  block_left 
) [inline, static]

Prefiltering for Intra8x8 prediction (Vertical).

Definition at line 181 of file intra8x8_pred.c.

Referenced by intra8x8_hor_pred().


Documentation generated with DoxyGen