rd_intra_jm.c File Reference

Rate-Distortion optimized mode decision. More...

#include <limits.h>
#include "global.h"
#include "image.h"
#include "macroblock.h"
#include "mb_access.h"
#include "rdopt_coding_state.h"
#include "mode_decision.h"
#include "rdopt.h"
#include "rd_intra_jm.h"
#include "q_around.h"
#include "intra4x4.h"
#include "intra8x8.h"
#include "md_common.h"
#include "transform8x8.h"
#include "md_distortion.h"
#include "elements.h"
#include "symbol.h"

Include dependency graph for rd_intra_jm.c:

Go to the source code of this file.

Functions

int MBType2Value (Macroblock *currMB)
int Mode_Decision_for_4x4IntraBlocks_JM_High (Macroblock *currMB, int b8, int b4, double lambda, double *min_cost)
int Mode_Decision_for_8x8IntraBlocks_JM_High (Macroblock *currMB, int b8, double lambda, double *min_cost)
int Mode_Decision_for_IntraSubMBlocks (Macroblock *currMB, int b8, double lambda, double *cost, int non_zero[3])
int Mode_Decision_for_Intra4x4Macroblock (Macroblock *currMB, double lambda, double *cost)
void Intra16x16_Mode_Decision_SAD (Macroblock *currMB)
double min_rdcost_16x16 (Macroblock *currMB, double lambda)
void Intra16x16_Mode_Decision_RDopt (Macroblock *currMB, double lambda)


Detailed Description

Rate-Distortion optimized mode decision.

Author:
Date:
12. April 2001

Definition in file rd_intra_jm.c.


Function Documentation

void Intra16x16_Mode_Decision_RDopt ( Macroblock currMB,
double  lambda 
)

Intra 16x16 mode decision using Rate-Distortion Optimization.

Definition at line 589 of file rd_intra_jm.c.

References intrapred_16x16(), and min_rdcost_16x16().

Referenced by RDCost_for_macroblocks().

Here is the call graph for this function:

void Intra16x16_Mode_Decision_SAD ( Macroblock currMB  ) 

Intra 16x16 mode decision.

Definition at line 429 of file rd_intra_jm.c.

References intrapred_16x16(), and macroblock::p_slice.

Referenced by RDCost_for_macroblocks().

Here is the call graph for this function:

int MBType2Value ( Macroblock currMB  ) 

Converts macroblock type to coding value.

Definition at line 1602 of file macroblock.c.

References macroblock::mb_type, macroblock::p_slice, slice::slice_type, and ZeroRef().

Referenced by min_rdcost_16x16(), writeMBLayerBSlice(), and writeMBLayerPSlice().

Here is the call graph for this function:

double min_rdcost_16x16 ( Macroblock currMB,
double  lambda 
)

Find best Intra_16x16 mode based on min RDCost.

Input:
Image parameters, pointer to best 16x16 intra mode
Output:
best 16x16 based

< pixel position p(0,-1)

< pixel positions p(-1, -1..15)

Definition at line 450 of file rd_intra_jm.c.

References assignSE2partition, slice::cofAC, slice::cofDC, compute_SSE16x16(), syntaxelement::len, macroblock::mb_type, MBType2Value(), macroblock::opix_y, storable_picture::p_curr_img, macroblock::p_Img, macroblock::p_slice, slice::partArr, img_par::pCurImg, macroblock::pix_x, macroblock::pix_y, slice::slice_type, syntaxelement::type, inp_par_enc::UseConstrainedIntraPred, syntaxelement::value1, and syntaxelement::value2.

Referenced by Intra16x16_Mode_Decision_RDopt().

Here is the call graph for this function:

int Mode_Decision_for_4x4IntraBlocks_JM_High ( Macroblock currMB,
int  b8,
int  b4,
double  lambda,
double *  min_cost 
)

int Mode_Decision_for_8x8IntraBlocks_JM_High ( Macroblock currMB,
int  b8,
double  lambda,
double *  min_cost 
)

int Mode_Decision_for_Intra4x4Macroblock ( Macroblock currMB,
double  lambda,
double *  cost 
)

4x4 Intra mode decision for an macroblock

Definition at line 388 of file rd_intra_jm.c.

References Mode_Decision_for_IntraSubMBlocks(), and macroblock::p_slice.

Referenced by encode_one_macroblock_low(), and RDCost_for_macroblocks().

Here is the call graph for this function:

int Mode_Decision_for_IntraSubMBlocks ( Macroblock currMB,
int  b8,
double  lambda,
double *  cost,
int  non_zero[3] 
)

Mode Decision for an 8x8 Intra block.

Definition at line 358 of file rd_intra_jm.c.

References macroblock::p_slice.

Referenced by Mode_Decision_for_Intra4x4Macroblock().


Documentation generated with DoxyGen