#include "internal.h"
#include "avcodec.h"
#include "h264.h"
#include <assert.h>
Go to the source code of this file.
Defines | |
| #define | SET_DIAG_MV(MV_OP, REF_OP, XY, Y4) |
Functions | |
| static int | fetch_diagonal_mv (H264Context *h, const int16_t **C, int i, int list, int part_width) |
| static void | pred_motion (H264Context *const h, int n, int part_width, int list, int ref, int *const mx, int *const my) |
| gets the predicted MV. | |
| static void | pred_16x8_motion (H264Context *const h, int n, int list, int ref, int *const mx, int *const my) |
| gets the directionally predicted 16x8 MV. | |
| static void | pred_8x16_motion (H264Context *const h, int n, int list, int ref, int *const mx, int *const my) |
| gets the directionally predicted 8x16 MV. | |
| static void | pred_pskip_motion (H264Context *const h, int *const mx, int *const my) |
Definition in file h264_mvpred.h.
| #define SET_DIAG_MV | ( | MV_OP, | |||
| REF_OP, | |||||
| XY, | |||||
| Y4 | ) |
Value:
const int xy = XY, y4 = Y4;\ const int mb_type = mb_types[xy+(y4>>2)*s->mb_stride];\ if(!USES_LIST(mb_type,list))\ return LIST_NOT_USED;\ mv = s->current_picture_ptr->motion_val[list][h->mb2b_xy[xy]+3 + y4*h->b_stride];\ h->mv_cache[list][scan8[0]-2][0] = mv[0];\ h->mv_cache[list][scan8[0]-2][1] = mv[1] MV_OP;\ return s->current_picture_ptr->ref_index[list][4*xy+1 + (y4&~1)] REF_OP;
Referenced by fetch_diagonal_mv().
| static int fetch_diagonal_mv | ( | H264Context * | h, | |
| const int16_t ** | C, | |||
| int | i, | |||
| int | list, | |||
| int | part_width | |||
| ) | [inline, static] |
| static void pred_16x8_motion | ( | H264Context *const | h, | |
| int | n, | |||
| int | list, | |||
| int | ref, | |||
| int *const | mx, | |||
| int *const | my | |||
| ) | [inline, static] |
gets the directionally predicted 16x8 MV.
| n | the block index | |
| mx | the x component of the predicted motion vector | |
| my | the y component of the predicted motion vector |
Definition at line 151 of file h264_mvpred.h.
Referenced by ff_h264_decode_mb_cabac(), and ff_h264_decode_mb_cavlc().
| static void pred_8x16_motion | ( | H264Context *const | h, | |
| int | n, | |||
| int | list, | |||
| int | ref, | |||
| int *const | mx, | |||
| int *const | my | |||
| ) | [inline, static] |
gets the directionally predicted 8x16 MV.
| n | the block index | |
| mx | the x component of the predicted motion vector | |
| my | the y component of the predicted motion vector |
Definition at line 186 of file h264_mvpred.h.
Referenced by ff_h264_decode_mb_cabac(), and ff_h264_decode_mb_cavlc().
| static void pred_motion | ( | H264Context *const | h, | |
| int | n, | |||
| int | part_width, | |||
| int | list, | |||
| int | ref, | |||
| int *const | mx, | |||
| int *const | my | |||
| ) | [inline, static] |
gets the predicted MV.
| n | the block index | |
| part_width | the width of the partition (4, 8,16) -> (1, 2, 4) | |
| mx | the x component of the predicted motion vector | |
| my | the y component of the predicted motion vector |
Definition at line 96 of file h264_mvpred.h.
Referenced by ff_h264_decode_mb_cabac(), ff_h264_decode_mb_cavlc(), pred_16x8_motion(), pred_8x16_motion(), pred_pskip_motion(), and svq3_mc_dir().
| static void pred_pskip_motion | ( | H264Context *const | h, | |
| int *const | mx, | |||
| int *const | my | |||
| ) | [inline, static] |
Definition at line 217 of file h264_mvpred.h.
1.5.8