FFmpeg
Loading...
Searching...
No Matches
h264_parse.c File Reference
#include "libavutil/mem.h"
#include "bytestream.h"
#include "get_bits.h"
#include "golomb.h"
#include "h264.h"
#include "h264pred.h"
#include "h264_parse.h"
#include "h264_ps.h"
#include "h2645_parse.h"
#include "mpegutils.h"

Go to the source code of this file.

Functions

int ff_h264_pred_weight_table (GetBitContext *gb, const SPS *sps, const int *ref_count, int slice_type_nos, H264PredWeightTable *pwt, int picture_structure, void *logctx)
 
int ff_h264_check_intra4x4_pred_mode (int8_t *pred_mode_cache, void *logctx, int top_samples_available, int left_samples_available)
 Check if the top & left blocks are available if needed and change the dc mode so it only uses the available blocks.
 
int ff_h264_check_intra_pred_mode (void *logctx, int top_samples_available, int left_samples_available, int mode, int is_chroma)
 Check if the top & left blocks are available if needed and change the dc mode so it only uses the available blocks.
 
int ff_h264_parse_ref_count (int *plist_count, int ref_count[2], GetBitContext *gb, const PPS *pps, int slice_type_nos, int picture_structure, void *logctx)
 
int ff_h264_init_poc (int pic_field_poc[2], int *pic_poc, const SPS *sps, H264POCContext *pc, int picture_structure, int nal_ref_idc)
 
static int decode_extradata_ps (const uint8_t *data, int size, H264ParamSets *ps, int is_avc, void *logctx)
 
static int decode_extradata_ps_mp4 (const uint8_t *buf, int buf_size, H264ParamSets *ps, int err_recognition, void *logctx)
 
int ff_h264_decode_extradata (const uint8_t *data, int size, H264ParamSets *ps, int *is_avc, int *nal_length_size, int err_recognition, void *logctx)
 
int ff_h264_get_profile (const SPS *sps)
 Compute profile from profile_idc and constraint_set?_flags.
 

Function Documentation

◆ ff_h264_pred_weight_table()

int ff_h264_pred_weight_table ( GetBitContext * gb,
const SPS * sps,
const int * ref_count,
int slice_type_nos,
H264PredWeightTable * pwt,
int picture_structure,
void * logctx )

Definition at line 30 of file h264_parse.c.

Referenced by h264_slice_header_parse(), and scan_mmco_reset().

◆ ff_h264_check_intra4x4_pred_mode()

int ff_h264_check_intra4x4_pred_mode ( int8_t * pred_mode_cache,
void * logctx,
int top_samples_available,
int left_samples_available )

Check if the top & left blocks are available if needed and change the dc mode so it only uses the available blocks.

Check if the top & left blocks are available if needed & change the dc mode so it only uses the available blocks.

Definition at line 134 of file h264_parse.c.

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

◆ ff_h264_check_intra_pred_mode()

int ff_h264_check_intra_pred_mode ( void * logctx,
int top_samples_available,
int left_samples_available,
int mode,
int is_chroma )

Check if the top & left blocks are available if needed and change the dc mode so it only uses the available blocks.

Check if the top & left blocks are available if needed & change the dc mode so it only uses the available blocks.

Definition at line 182 of file h264_parse.c.

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

◆ ff_h264_parse_ref_count()

int ff_h264_parse_ref_count ( int * plist_count,
int ref_count[2],
GetBitContext * gb,
const PPS * pps,
int slice_type_nos,
int picture_structure,
void * logctx )

Definition at line 222 of file h264_parse.c.

Referenced by h264_slice_header_parse(), and scan_mmco_reset().

◆ ff_h264_init_poc()

int ff_h264_init_poc ( int pic_field_poc[2],
int * pic_poc,
const SPS * sps,
H264POCContext * pc,
int picture_structure,
int nal_ref_idc )

Definition at line 280 of file h264_parse.c.

Referenced by h264_field_start(), h264_filter(), and parse_nal_units().

◆ decode_extradata_ps()

static int decode_extradata_ps ( const uint8_t * data,
int size,
H264ParamSets * ps,
int is_avc,
void * logctx )
static

Definition at line 367 of file h264_parse.c.

Referenced by decode_extradata_ps_mp4(), and ff_h264_decode_extradata().

◆ decode_extradata_ps_mp4()

static int decode_extradata_ps_mp4 ( const uint8_t * buf,
int buf_size,
H264ParamSets * ps,
int err_recognition,
void * logctx )
static

Definition at line 421 of file h264_parse.c.

Referenced by ff_h264_decode_extradata().

◆ ff_h264_decode_extradata()

int ff_h264_decode_extradata ( const uint8_t * data,
int size,
H264ParamSets * ps,
int * is_avc,
int * nal_length_size,
int err_recognition,
void * logctx )

Definition at line 466 of file h264_parse.c.

Referenced by h264_decode_frame(), h264_decode_init(), and h264_parse().

◆ ff_h264_get_profile()

int ff_h264_get_profile ( const SPS * sps)

Compute profile from profile_idc and constraint_set?_flags.

compute profile from sps

Parameters
spsSPS
Returns
profile as defined by AV_PROFILE_H264_*

Definition at line 533 of file h264_parse.c.

Referenced by h264_init_ps(), and parse_nal_units().