#include "erc_api.h"
Go to the source code of this file.
Defines | |
#define | isSplitted(object_list, currMBNum) ((object_list+((currMBNum)<<2))->regionMode >= REGMODE_SPLITTED) |
#define | isBlock(object_list, currMBNum, comp, regMode) |
#define | getParam(object_list, currMBNum, comp, param) |
Functions | |
void | ercPixConcealIMB (ImageParameters *p_Img, imgpel *currFrame, int row, int column, int predBlocks[], int frameWidth, int mbWidthInBlocks) |
int | ercCollect8PredBlocks (int predBlocks[], int currRow, int currColumn, int *condition, int maxRow, int maxColumn, int step, byte fNoCornerNeigh) |
int | ercCollectColumnBlocks (int predBlocks[], int currRow, int currColumn, int *condition, int maxRow, int maxColumn, int step) |
Definition in file erc_do.h.
#define getParam | ( | object_list, | |||
currMBNum, | |||||
comp, | |||||
param | ) |
#define isBlock | ( | object_list, | |||
currMBNum, | |||||
comp, | |||||
regMode | ) |
int ercCollect8PredBlocks | ( | int | predBlocks[], | |
int | currRow, | |||
int | currColumn, | |||
int * | condition, | |||
int | maxRow, | |||
int | maxColumn, | |||
int | step, | |||
byte | fNoCornerNeigh | |||
) |
This function checks the neighbors of a Macroblock for usability in concealment. First the OK macroblocks are marked, and if there is not enough of them, then the CONCEALED ones as well. A "1" in the the output array means reliable, a "0" non reliable MB. The block order in "predBlocks": 1 4 0 5 x 7 2 6 3 i.e., corners first.
predBlocks[] | Array for indicating the valid neighbor blocks | |
currRow | Current block row in the frame | |
currColumn | Current block column in the frame | |
condition | The block condition (ok, lost) table | |
maxRow | Number of block rows in the frame | |
maxColumn | Number of block columns in the frame | |
step | Number of blocks belonging to a MB, when counting in vertical/horizontal direction. (Y:2 U,V:1) | |
fNoCornerNeigh | No corner neighbors are considered |
Definition at line 154 of file erc_do_i.c.
Referenced by concealBlocks(), and ercConcealInterFrame().
int ercCollectColumnBlocks | ( | int | predBlocks[], | |
int | currRow, | |||
int | currColumn, | |||
int * | condition, | |||
int | maxRow, | |||
int | maxColumn, | |||
int | step | |||
) |
collects prediction blocks only from the current column
predBlocks[] | Array for indicating the valid neighbor blocks | |
currRow | Current block row in the frame | |
currColumn | Current block column in the frame | |
condition | The block condition (ok, lost) table | |
maxRow | Number of block rows in the frame | |
maxColumn | Number of block columns in the frame | |
step | Number of blocks belonging to a MB, when counting in vertical/horizontal direction. (Y:2 U,V:1) |
Definition at line 263 of file erc_do_i.c.
Referenced by concealBlocks().
void ercPixConcealIMB | ( | ImageParameters * | p_Img, | |
imgpel * | currFrame, | |||
int | row, | |||
int | column, | |||
int | predBlocks[], | |||
int | frameWidth, | |||
int | mbWidthInBlocks | |||
) |
Conceals the MB at position (row, column) using pixels from predBlocks[] using pixMeanInterpolateBlock().
p_Img | image encoding parameters for current picture | |
currFrame | current frame | |
row | y coordinate in blocks | |
column | x coordinate in blocks | |
predBlocks[] | list of neighboring source blocks (numbering 0 to 7, 1 means: use the neighbor) | |
frameWidth | width of frame in pixels | |
mbWidthInBlocks | 2 for Y, 1 for U/V components |
Definition at line 94 of file erc_do_i.c.
References pixMeanInterpolateBlock().
Referenced by concealBlocks().