FFmpeg
Loading...
Searching...
No Matches
h264_direct.c File Reference

H.264 / AVC / MPEG-4 part10 direct mb/block decoding. More...

#include "avcodec.h"
#include "h264dec.h"
#include "h264_ps.h"
#include "mpegutils.h"
#include "rectangle.h"
#include "threadframe.h"
#include <assert.h>

Go to the source code of this file.

Macros

#define MB_TYPE_16x16_OR_INTRA
 

Functions

static int get_scale_factor (const H264SliceContext *sl, int poc, int poc1, int i)
 
void ff_h264_direct_dist_scale_factor (const H264Context *const h, H264SliceContext *sl)
 
static void fill_colmap (const H264Context *h, H264SliceContext *sl, int map[2][16+32], int list, int field, int colfield, int mbafi)
 
void ff_h264_direct_ref_list_init (const H264Context *const h, H264SliceContext *sl)
 
static void await_reference_mb_row (const H264Context *const h, H264Ref *ref, int mb_y)
 
static void pred_spatial_direct_motion (const H264Context *const h, H264SliceContext *sl, int *mb_type)
 
static void pred_temp_direct_motion (const H264Context *const h, H264SliceContext *sl, int *mb_type)
 
void ff_h264_pred_direct_motion (const H264Context *const h, H264SliceContext *sl, int *mb_type)
 

Detailed Description

H.264 / AVC / MPEG-4 part10 direct mb/block decoding.

Author
Michael Niedermayer micha.nosp@m.elni.nosp@m.@gmx..nosp@m.at

Definition in file h264_direct.c.

Macro Definition Documentation

◆ MB_TYPE_16x16_OR_INTRA

#define MB_TYPE_16x16_OR_INTRA
Value:
#define MB_TYPE_INTRA_PCM
Definition mpegutils.h:40
#define MB_TYPE_INTRA4x4
Definition mpegutils.h:38
#define MB_TYPE_INTRA16x16
Definition mpegutils.h:39
#define MB_TYPE_16x16
Definition mpegutils.h:41

Referenced by pred_spatial_direct_motion(), and pred_temp_direct_motion().

Function Documentation

◆ get_scale_factor()

static int get_scale_factor ( const H264SliceContext * sl,
int poc,
int poc1,
int i )
static

Definition at line 37 of file h264_direct.c.

Referenced by ff_h264_direct_dist_scale_factor().

◆ ff_h264_direct_dist_scale_factor()

void ff_h264_direct_dist_scale_factor ( const H264Context *const h,
H264SliceContext * sl )

Definition at line 61 of file h264_direct.c.

Referenced by h264_slice_init().

◆ fill_colmap()

static void fill_colmap ( const H264Context * h,
H264SliceContext * sl,
int map[2][16+32],
int list,
int field,
int colfield,
int mbafi )
static

Definition at line 82 of file h264_direct.c.

Referenced by ff_h264_direct_ref_list_init().

◆ ff_h264_direct_ref_list_init()

void ff_h264_direct_ref_list_init ( const H264Context *const h,
H264SliceContext * sl )

Definition at line 120 of file h264_direct.c.

Referenced by h264_slice_init().

◆ await_reference_mb_row()

static void await_reference_mb_row ( const H264Context *const h,
H264Ref * ref,
int mb_y )
static

Definition at line 184 of file h264_direct.c.

Referenced by pred_spatial_direct_motion(), and pred_temp_direct_motion().

◆ pred_spatial_direct_motion()

static void pred_spatial_direct_motion ( const H264Context *const h,
H264SliceContext * sl,
int * mb_type )
static

Definition at line 208 of file h264_direct.c.

Referenced by ff_h264_pred_direct_motion().

◆ pred_temp_direct_motion()

static void pred_temp_direct_motion ( const H264Context *const h,
H264SliceContext * sl,
int * mb_type )
static

Definition at line 495 of file h264_direct.c.

Referenced by ff_h264_pred_direct_motion().

◆ ff_h264_pred_direct_motion()

void ff_h264_pred_direct_motion ( const H264Context *const h,
H264SliceContext * sl,
int * mb_type )

Definition at line 729 of file h264_direct.c.

Referenced by decode_mb_skip(), ff_h264_decode_mb_cabac(), and ff_h264_decode_mb_cavlc().