header.c File Reference

H.264 Slice headers. More...

#include "global.h"
#include "elements.h"
#include "defines.h"
#include "fmo.h"
#include "vlc.h"
#include "mbuffer.h"
#include "header.h"
#include "ctx_tables.h"

Include dependency graph for header.c:

Go to the source code of this file.

Defines

#define SYMTRACESTRING(s)

Functions

static void ref_pic_list_reordering (Slice *currSlice)
static void pred_weight_table (Slice *currSlice)
unsigned CeilLog2 (unsigned uiVal)
unsigned CeilLog2_sf (unsigned uiVal)
int FirstPartOfSliceHeader (Slice *currSlice)
int RestOfSliceHeader (Slice *currSlice)
static void reset_wp_params (ImageParameters *img)
void dec_ref_pic_marking (Bitstream *currStream)
void decode_poc (ImageParameters *img)
int dumppoc (ImageParameters *img)
int picture_order (ImageParameters *img)

Variables

StorablePicture * dec_picture
int UsedBits


Detailed Description

H.264 Slice headers.

Definition in file header.c.


Function Documentation

unsigned CeilLog2 ( unsigned  uiVal  ) 

calculate Ceil(Log2(uiVal))

Definition at line 42 of file header.c.

Referenced by interpret_motion_constrained_slice_group_set_info(), and RestOfSliceHeader().

void dec_ref_pic_marking ( Bitstream *  currStream  ) 

void decode_poc ( ImageParameters *  img  ) 

To calculate the poc values based upon JVT-F100d2 POC200301: Until Jan 2003, this function will calculate the correct POC values, but the management of POCs in buffered pictures may need more work.

Returns:
none

Definition at line 608 of file header.c.

References error().

Referenced by fill_frame_num_gap(), and init_picture().

Here is the call graph for this function:

int dumppoc ( ImageParameters *  img  ) 

A little helper for the debugging of POC code.

Returns:
none

Definition at line 809 of file header.c.

int FirstPartOfSliceHeader ( Slice *  currSlice  ) 

read the first part of the header (only the pic_parameter_set_id)

Returns:
Length of the first part of the slice header (in bits)

Definition at line 76 of file header.c.

References assignSE2partition, datapartition::bitstream, Slice::dp_mode, Bitstream::frame_bitoffset, img, Slice::partArr, Slice::pic_parameter_set_id, Slice::picture_type, SE_HEADER, Slice::start_mb_nr, u_v(), and ue_v().

Referenced by read_new_slice().

Here is the call graph for this function:

int picture_order ( ImageParameters *  img  ) 

return the poc of img as per (8-1) JVT-F100d2 POC200301

Definition at line 845 of file header.c.

static void pred_weight_table ( Slice *  currSlice  )  [static]

read the weighted prediction tables

Definition at line 425 of file header.c.

References assignSE2partition, datapartition::bitstream, Slice::dp_mode, Slice::partArr, SE_HEADER, se_v(), u_1(), and ue_v().

Referenced by RestOfSliceHeader().

Here is the call graph for this function:

static void ref_pic_list_reordering ( Slice *  currSlice  )  [static]

int RestOfSliceHeader ( Slice *  currSlice  ) 

read the scond part of the header (without the pic_parameter_set_id

Returns:
Length of the second part of the Slice header in bits

redundant_pic_cnt is missing here

Definition at line 112 of file header.c.

References assignSE2partition, datapartition::bitstream, CeilLog2(), dec_ref_pic_marking(), Slice::DFAlphaC0Offset, Slice::DFBetaOffset, Slice::DFDisableIdc, Slice::dp_mode, error(), img, params, Slice::partArr, Slice::picture_type, pred_weight_table(), Slice::qp, Slice::qs, ref_pic_list_reordering(), SE_HEADER, se_v(), Slice::slice_qp_delta, Slice::slice_qs_delta, Slice::structure, u_1(), u_v(), and ue_v().

Referenced by read_new_slice().

Here is the call graph for this function:


Documentation generated with DoxyGen