md_common.c File Reference

Mode Decision common functions. More...

#include "global.h"
#include "image.h"

Include dependency graph for md_common.c:

Go to the source code of this file.

Functions

static void CopyMVBlock16 (short ***enc_mv, short ***rdo_mv, int start, int end)
static void ResetMVBlock16 (short ***enc_mv, int start, int end)
static void ResetRefBlock16 (char **enc_ref, int start, int end)
static void CopyMVBlock8 (short ***enc_mv, short ***rdo_mv, int start, int end, int offset)
static void ResetMVBlock8 (short ***enc_mv, int start, int end, int offset)
static void ResetRefBlock8 (char **enc_ref, int start, int end, int offset)
static void SetMotionVectorsMBPSlice (ImageParameters *img, PicMotionParams *motion, Macroblock *currMB)
static void SetMVBSlice16x8 (PicMotionParams *motion, Macroblock *currMB, int pos)
static void SetMVBSlice8x16 (PicMotionParams *motion, Macroblock *currMB, int pos)
static void SetMVBSlice8x8 (PicMotionParams *motion, Macroblock *currMB, int pos_y, int pos_x)
static void SetMotionVectorsMBBSlice (ImageParameters *img, PicMotionParams *motion, Macroblock *currMB)
void SetMotionVectorsMB (ImageParameters *img, PicMotionParams *motion, Macroblock *currMB)


Detailed Description

Mode Decision common functions.

Author:
Date:
04. October 2008

Definition in file md_common.c.


Function Documentation

static void CopyMVBlock16 ( short ***  enc_mv,
short ***  rdo_mv,
int  start,
int  end 
) [inline, static]

Copy rdo mv info to 16xN picture mv buffer.

Definition at line 24 of file md_common.c.

References ImageParameters::block_x, and ImageParameters::block_y.

Referenced by SetMotionVectorsMBBSlice(), SetMotionVectorsMBPSlice(), and SetMVBSlice16x8().

static void CopyMVBlock8 ( short ***  enc_mv,
short ***  rdo_mv,
int  start,
int  end,
int  offset 
) [inline, static]

Copy rdo mv info to 8xN picture mv buffer.

Definition at line 69 of file md_common.c.

References ImageParameters::block_x, and ImageParameters::block_y.

Referenced by SetMotionVectorsMBPSlice(), SetMVBSlice8x16(), and SetMVBSlice8x8().

static void ResetMVBlock16 ( short ***  enc_mv,
int  start,
int  end 
) [inline, static]

Reset corresponding 16xN block picture mv buffer.

Definition at line 39 of file md_common.c.

References ImageParameters::block_x, and ImageParameters::block_y.

Referenced by SetMotionVectorsMBBSlice(), SetMotionVectorsMBPSlice(), and SetMVBSlice16x8().

static void ResetMVBlock8 ( short ***  enc_mv,
int  start,
int  end,
int  offset 
) [inline, static]

Reset corresponding 8xN block picture mv buffer.

Definition at line 85 of file md_common.c.

References ImageParameters::block_x, and ImageParameters::block_y.

Referenced by SetMVBSlice8x16(), and SetMVBSlice8x8().

static void ResetRefBlock16 ( char **  enc_ref,
int  start,
int  end 
) [inline, static]

Reset corresponding 16xN block picture ref buffer (intra).

Definition at line 54 of file md_common.c.

References ImageParameters::block_x, and ImageParameters::block_y.

Referenced by SetMotionVectorsMBBSlice(), SetMotionVectorsMBPSlice(), and SetMVBSlice16x8().

static void ResetRefBlock8 ( char **  enc_ref,
int  start,
int  end,
int  offset 
) [inline, static]

Reset corresponding 8xN block picture ref buffer (intra).

Definition at line 101 of file md_common.c.

References ImageParameters::block_x, and ImageParameters::block_y.

Referenced by SetMVBSlice8x16(), and SetMVBSlice8x8().

void SetMotionVectorsMB ( ImageParameters *  img,
PicMotionParams *  motion,
Macroblock *  currMB 
)

Sets motion vectors for a macroblock.

Definition at line 407 of file md_common.c.

References SetMotionVectorsMBBSlice(), SetMotionVectorsMBPSlice(), and ImageParameters::type.

Referenced by encode_one_macroblock_low(), RDCost_for_macroblocks(), and set_stored_macroblock_parameters().

Here is the call graph for this function:

static void SetMotionVectorsMBBSlice ( ImageParameters *  img,
PicMotionParams *  motion,
Macroblock *  currMB 
) [static]

static void SetMotionVectorsMBPSlice ( ImageParameters *  img,
PicMotionParams *  motion,
Macroblock *  currMB 
) [static]

static void SetMVBSlice16x8 ( PicMotionParams *  motion,
Macroblock *  currMB,
int  pos 
) [static]

static void SetMVBSlice8x16 ( PicMotionParams *  motion,
Macroblock *  currMB,
int  pos 
) [static]

static void SetMVBSlice8x8 ( PicMotionParams *  motion,
Macroblock *  currMB,
int  pos_y,
int  pos_x 
) [static]


Documentation generated with DoxyGen