#include "global.h"
#include "intra8x8_pred.h"
#include "mb_access.h"
#include "image.h"
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 (Macroblock *currMB, ColorPlane pl, int ioff, int joff) |
static int | intra8x8_vert_pred (Macroblock *currMB, ColorPlane pl, int ioff, int joff) |
static int | intra8x8_hor_pred (Macroblock *currMB, ColorPlane pl, int ioff, int joff) |
static int | intra8x8_diag_down_right_pred (Macroblock *currMB, ColorPlane pl, int ioff, int joff) |
static int | intra8x8_diag_down_left_pred (Macroblock *currMB, ColorPlane pl, int ioff, int joff) |
static int | intra8x8_vert_right_pred (Macroblock *currMB, ColorPlane pl, int ioff, int joff) |
static int | intra8x8_vert_left_pred (Macroblock *currMB, ColorPlane pl, int ioff, int joff) |
static int | intra8x8_hor_up_pred (Macroblock *currMB, ColorPlane pl, int ioff, int joff) |
static int | intra8x8_hor_down_pred (Macroblock *currMB, ColorPlane pl, int ioff, int joff) |
int | intrapred8x8 (Macroblock *currMB, ColorPlane pl, int ioff, int joff) |
Definition in file intra8x8_pred.c.
static int intra8x8_dc_pred | ( | Macroblock * | currMB, | |
ColorPlane | pl, | |||
int | ioff, | |||
int | joff | |||
) | [inline, static] |
makes and returns 8x8 DC prediction mode
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, LowPassForIntra8x8Pred(), macroblock::p_Img, and macroblock::p_Slice.
Referenced by intrapred8x8().
static int intra8x8_diag_down_left_pred | ( | Macroblock * | currMB, | |
ColorPlane | pl, | |||
int | ioff, | |||
int | joff | |||
) | [inline, static] |
makes and returns 8x8 diagonal down left prediction mode
currMB | current macroblock | |
pl | current image plane | |
ioff | pixel offset X within MB | |
joff | pixel offset Y within MB |
Definition at line 816 of file intra8x8_pred.c.
References LowPassForIntra8x8Pred(), macroblock::p_Img, and macroblock::p_Slice.
Referenced by intrapred8x8().
static int intra8x8_diag_down_right_pred | ( | Macroblock * | currMB, | |
ColorPlane | pl, | |||
int | ioff, | |||
int | joff | |||
) | [inline, static] |
makes and returns 8x8 diagonal down right prediction mode
currMB | current macroblock | |
pl | current image plane | |
ioff | pixel offset X within MB | |
joff | pixel offset Y within MB |
Definition at line 615 of file intra8x8_pred.c.
References LowPassForIntra8x8Pred(), macroblock::p_Img, and macroblock::p_Slice.
Referenced by intrapred8x8().
static int intra8x8_hor_down_pred | ( | Macroblock * | currMB, | |
ColorPlane | pl, | |||
int | ioff, | |||
int | joff | |||
) | [inline, static] |
makes and returns 8x8 horizontal down prediction mode
currMB | current macroblock | |
pl | current image plane | |
ioff | pixel offset X within MB | |
joff | pixel offset Y within MB |
Definition at line 1610 of file intra8x8_pred.c.
References LowPassForIntra8x8Pred(), macroblock::p_Img, and macroblock::p_Slice.
Referenced by intrapred8x8().
static int intra8x8_hor_pred | ( | Macroblock * | currMB, | |
ColorPlane | pl, | |||
int | ioff, | |||
int | joff | |||
) | [inline, static] |
makes and returns 8x8 horizontal prediction mode
currMB | current macroblock | |
pl | current image plane | |
ioff | pixel offset X within MB | |
joff | pixel offset Y within MB |
Definition at line 504 of file intra8x8_pred.c.
References LowPassForIntra8x8PredVer(), macroblock::p_Img, and macroblock::p_Slice.
Referenced by intrapred8x8().
static int intra8x8_hor_up_pred | ( | Macroblock * | currMB, | |
ColorPlane | pl, | |||
int | ioff, | |||
int | joff | |||
) | [inline, static] |
makes and returns 8x8 horizontal up prediction mode
currMB | current macroblock | |
pl | current image plane | |
ioff | pixel offset X within MB | |
joff | pixel offset Y within MB |
Definition at line 1412 of file intra8x8_pred.c.
References LowPassForIntra8x8Pred(), macroblock::p_Img, and macroblock::p_Slice.
Referenced by intrapred8x8().
static int intra8x8_vert_left_pred | ( | Macroblock * | currMB, | |
ColorPlane | pl, | |||
int | ioff, | |||
int | joff | |||
) | [inline, static] |
makes and returns 8x8 vertical left prediction mode
currMB | current macroblock | |
pl | current image plane | |
ioff | pixel offset X within MB | |
joff | pixel offset Y within MB |
Definition at line 1214 of file intra8x8_pred.c.
References LowPassForIntra8x8Pred(), macroblock::p_Img, and macroblock::p_Slice.
Referenced by intrapred8x8().
static int intra8x8_vert_pred | ( | Macroblock * | currMB, | |
ColorPlane | pl, | |||
int | ioff, | |||
int | joff | |||
) | [inline, static] |
makes and returns 8x8 vertical prediction mode
currMB | current macroblock | |
pl | current image plane | |
ioff | pixel offset X within MB | |
joff | pixel offset Y within MB |
Definition at line 386 of file intra8x8_pred.c.
References LowPassForIntra8x8PredHor(), macroblock::p_Img, and macroblock::p_Slice.
Referenced by intrapred8x8().
static int intra8x8_vert_right_pred | ( | Macroblock * | currMB, | |
ColorPlane | pl, | |||
int | ioff, | |||
int | joff | |||
) | [inline, static] |
makes and returns 8x8 vertical right prediction mode
currMB | current macroblock | |
pl | current image plane | |
ioff | pixel offset X within MB | |
joff | pixel offset Y within MB |
Definition at line 1016 of file intra8x8_pred.c.
References LowPassForIntra8x8Pred(), macroblock::p_Img, and macroblock::p_Slice.
Referenced by intrapred8x8().
int intrapred8x8 | ( | Macroblock * | currMB, | |
ColorPlane | pl, | |||
int | ioff, | |||
int | joff | |||
) |
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 .
currMB | Current Macroblock | |
pl | Current color plane | |
ioff | ioff | |
joff | joff |
Definition at line 1812 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(), intra8x8_vert_right_pred(), and macroblock::p_Img.
Referenced by decode_one_component_b_slice(), decode_one_component_i_slice(), and decode_one_component_p_slice().
static void LowPassForIntra8x8Pred | ( | imgpel * | PredPel, | |
int | block_up_left, | |||
int | block_up, | |||
int | block_left | |||
) | [inline, static] |
Prefiltering for Intra8x8 prediction.
Definition at line 70 of file intra8x8_pred.c.
Referenced by intra8x8_dc_pred(), intra8x8_diag_down_left_pred(), intra8x8_diag_down_right_pred(), intra8x8_hor_down_pred(), intra8x8_hor_up_pred(), intra8x8_vert_left_pred(), and intra8x8_vert_right_pred().
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().