| 
    FFmpeg
    
   | 
 
H.264 / AVC / MPEG4 part10 codec. More...
#include "libavutil/intreadwrite.h"#include "cabac.h"#include "error_resilience.h"#include "get_bits.h"#include "h264chroma.h"#include "h264dsp.h"#include "h264pred.h"#include "h264qpel.h"#include "internal.h"#include "me_cmp.h"#include "mpegutils.h"#include "parser.h"#include "qpeldsp.h"#include "rectangle.h"#include "videodsp.h"Go to the source code of this file.
Data Structures | |
| struct | SPS | 
| Sequence parameter set.  More... | |
| struct | PPS | 
| Picture parameter set.  More... | |
| struct | FPA | 
| Frame Packing Arrangement Type.  More... | |
| struct | MMCO | 
| Memory management control operation.  More... | |
| struct | H264Picture | 
| struct | H264Context | 
| H264Context.  More... | |
Macros | |
| #define | H264_MAX_PICTURE_COUNT 36 | 
| #define | H264_MAX_THREADS 32 | 
| #define | MAX_SPS_COUNT 32 | 
| #define | MAX_PPS_COUNT 256 | 
| #define | MAX_MMCO_COUNT 66 | 
| #define | MAX_DELAYED_PIC_COUNT 16 | 
| #define | MAX_MBPAIR_SIZE (256*1024) | 
| #define | ALLOW_INTERLACE | 
| #define | FMO 0 | 
| #define | MAX_SLICES 16 | 
| The maximum number of slices supported by the decoder.   | |
| #define | MB_MBAFF(h) (h)->mb_mbaff | 
| #define | MB_FIELD(h) (h)->mb_field_decoding_flag | 
| #define | FRAME_MBAFF(h) (h)->mb_aff_frame | 
| #define | FIELD_PICTURE(h) ((h)->picture_structure != PICT_FRAME) | 
| #define | LEFT_MBS 2 | 
| #define | LTOP 0 | 
| #define | LBOT 1 | 
| #define | LEFT(i) (i) | 
| #define | FIELD_OR_MBAFF_PICTURE(h) (FRAME_MBAFF(h) || FIELD_PICTURE(h)) | 
| #define | CABAC(h) (h)->pps.cabac | 
| #define | CHROMA(h) ((h)->sps.chroma_format_idc) | 
| #define | CHROMA422(h) ((h)->sps.chroma_format_idc == 2) | 
| #define | CHROMA444(h) ((h)->sps.chroma_format_idc == 3) | 
| #define | EXTENDED_SAR 255 | 
| #define | MB_TYPE_REF0 MB_TYPE_ACPRED | 
| #define | MB_TYPE_8x8DCT 0x01000000 | 
| #define | IS_REF0(a) ((a) & MB_TYPE_REF0) | 
| #define | IS_8x8DCT(a) ((a) & MB_TYPE_8x8DCT) | 
| #define | QP_MAX_NUM (51 + 6*6) | 
| #define | LIST_NOT_USED -1 | 
| #define | PART_NOT_AVAILABLE -2 | 
| #define | FRAME_RECOVERED_IDR (1 << 0) | 
| We have seen an IDR, so all the following frames in coded order are correctly decodable.   | |
| #define | FRAME_RECOVERED_SEI (1 << 1) | 
| Sufficient number of frames have been decoded since a SEI recovery point, so all the following frames in presentation order are correct.   | |
| #define | LUMA_DC_BLOCK_INDEX 48 | 
| #define | CHROMA_DC_BLOCK_INDEX 49 | 
| #define | SLICE_SINGLETHREAD 1 | 
| #define | SLICE_SKIPED 2 | 
Variables | |
| const uint8_t | ff_h264_chroma_qp [7][QP_MAX_NUM+1] | 
| One chroma qp table for each possible bit depth (8-14).   | |
| const uint16_t | ff_h264_mb_sizes [4] | 
| static const uint8_t | scan8 [16 *3+3] | 
H.264 / AVC / MPEG4 part10 codec.
Definition in file h264.h.
| #define H264_MAX_PICTURE_COUNT 36 | 
Definition at line 47 of file h264.h.
Referenced by copy_picture_range(), ff_h264_alloc_tables(), ff_h264_decode_seq_parameter_set(), ff_h264_free_tables(), ff_h264_update_thread_context(), find_unused_picture(), flush_dpb(), and release_unused_pictures().
| #define H264_MAX_THREADS 32 | 
Definition at line 48 of file h264.h.
Referenced by ff_h264_free_tables(), and h264_slice_header_init().
| #define MAX_SPS_COUNT 32 | 
Definition at line 50 of file h264.h.
Referenced by active_parameter_sets(), decode_picture_timing(), ff_h264_decode_picture_parameter_set(), ff_h264_decode_seq_parameter_set(), ff_h264_free_context(), ff_h264_update_thread_context(), ff_hevc_decode_nal_pps(), ff_hevc_decode_nal_sps(), hvcc_write(), parse_nal_units(), and vdadec_init().
| #define MAX_PPS_COUNT 256 | 
Definition at line 51 of file h264.h.
Referenced by ff_h264_decode_picture_parameter_set(), ff_h264_decode_slice_header(), ff_h264_free_context(), ff_h264_update_thread_context(), ff_hevc_decode_nal_pps(), hls_slice_header(), hvcc_write(), and parse_nal_units().
| #define MAX_MMCO_COUNT 66 | 
Definition at line 53 of file h264.h.
Referenced by ff_generate_sliding_window_mmcos(), ff_h264_decode_ref_pic_marking(), and scan_mmco_reset().
| #define MAX_DELAYED_PIC_COUNT 16 | 
Definition at line 55 of file h264.h.
Referenced by decode_postinit(), ff_h264_decode_init(), ff_h264_execute_ref_pic_marking(), ff_h264_update_thread_context(), flush_dpb(), and idr().
| #define MAX_MBPAIR_SIZE (256*1024) | 
Definition at line 57 of file h264.h.
Referenced by ff_h264_decode_nal().
| #define FMO 0 | 
Definition at line 63 of file h264.h.
Referenced by ff_h264_alloc_tables(), fill_decode_neighbors(), and write_back_motion_list().
| #define MAX_SLICES 16 | 
| #define MB_MBAFF | ( | h | ) | (h)->mb_mbaff | 
Definition at line 72 of file h264.h.
Referenced by await_references(), backup_mb_border(), ff_h264_decode_mb_cabac(), ff_h264_decode_mb_cavlc(), fill_filter_caches_inter(), and xchg_mb_border().
| #define MB_FIELD | ( | h | ) | (h)->mb_field_decoding_flag | 
Definition at line 73 of file h264.h.
Referenced by decode_cabac_mb_skip(), decode_cabac_residual_internal(), decode_mb_skip(), fetch_diagonal_mv(), ff_h264_decode_mb_cabac(), ff_h264_decode_mb_cavlc(), ff_h264_filter_mb(), fill_decode_caches(), fill_decode_neighbors(), fill_filter_caches(), get_lowest_part_y(), hl_decode_mb(), hl_decode_mb_444(), loop_filter(), mc_dir_part(), mc_part_std(), mc_part_weighted(), and xchg_mb_border().
| #define FRAME_MBAFF | ( | h | ) | (h)->mb_aff_frame | 
Definition at line 74 of file h264.h.
Referenced by backup_mb_border(), decode_cabac_mb_skip(), decode_finish_row(), decode_slice(), fetch_diagonal_mv(), ff_h264_decode_mb_cabac(), ff_h264_decode_mb_cavlc(), ff_h264_decode_slice_header(), ff_h264_direct_dist_scale_factor(), ff_h264_direct_ref_list_init(), ff_h264_filter_mb(), ff_h264_filter_mb_fast(), fill_decode_caches(), fill_decode_neighbors(), fill_filter_caches(), filter_mb_dir(), hl_decode_mb(), hl_decode_mb_444(), implicit_weight_table(), loop_filter(), pred_spatial_direct_motion(), pred_temp_direct_motion(), and xchg_mb_border().
| #define FIELD_PICTURE | ( | h | ) | ((h)->picture_structure != PICT_FRAME) | 
Definition at line 75 of file h264.h.
Referenced by await_references(), decode_cabac_mb_skip(), decode_finish_row(), ff_generate_sliding_window_mmcos(), ff_h264_decode_ref_pic_list_reordering(), ff_h264_decode_ref_pic_marking(), ff_h264_decode_slice_header(), ff_h264_direct_dist_scale_factor(), ff_h264_field_end(), ff_h264_fill_default_ref_list(), h264_filter_mb_fast_internal(), and pic_num_extract().
| #define LEFT_MBS 2 | 
Definition at line 76 of file h264.h.
Referenced by fill_decode_caches(), fill_decode_neighbors(), and fill_filter_caches().
| #define LTOP 0 | 
Definition at line 77 of file h264.h.
Referenced by decode_cabac_intra_mb_type(), decode_cabac_mb_chroma_pre_mode(), ff_h264_decode_mb_cabac(), ff_h264_filter_mb(), fill_decode_caches(), fill_decode_neighbors(), fill_filter_caches(), fill_filter_caches_inter(), filter_mb_dir(), h264_filter_mb_fast_internal(), and pred_pskip_motion().
| #define LBOT 1 | 
Definition at line 78 of file h264.h.
Referenced by fill_decode_caches(), fill_decode_neighbors(), and fill_filter_caches().
| #define FIELD_OR_MBAFF_PICTURE | ( | h | ) | (FRAME_MBAFF(h) || FIELD_PICTURE(h)) | 
Definition at line 92 of file h264.h.
Referenced by decode_postinit(), decode_slice(), ff_h264_decode_slice_header(), fill_slice_long(), and vaapi_h264_decode_slice().
| #define CABAC | ( | h | ) | (h)->pps.cabac | 
Definition at line 95 of file h264.h.
Referenced by fill_decode_caches(), fill_filter_caches(), filter_mb_dir(), write_back_motion(), and write_back_motion_list().
| #define CHROMA | ( | h | ) | ((h)->sps.chroma_format_idc) | 
Definition at line 98 of file h264.h.
Referenced by ff_h264_filter_mb(), and h264_filter_mb_fast_internal().
| #define CHROMA422 | ( | h | ) | ((h)->sps.chroma_format_idc == 2) | 
Definition at line 99 of file h264.h.
Referenced by backup_mb_border(), ff_h264_decode_mb_cabac(), ff_h264_decode_mb_cavlc(), ff_h264_filter_mb(), fill_decode_caches(), filter_mb_dir(), get_pixel_format(), h264_filter_mb_fast_internal(), and hl_decode_mb().
| #define CHROMA444 | ( | h | ) | ((h)->sps.chroma_format_idc == 3) | 
Definition at line 100 of file h264.h.
Referenced by backup_mb_border(), decode_cabac_residual_nondc(), ff_h264_decode_mb_cabac(), ff_h264_decode_mb_cavlc(), ff_h264_filter_mb(), ff_h264_hl_decode_mb(), fill_decode_caches(), filter_mb_dir(), get_pixel_format(), h264_filter_mb_fast_internal(), and loop_filter().
| #define EXTENDED_SAR 255 | 
Definition at line 102 of file h264.h.
Referenced by decode_vui_parameters().
| #define MB_TYPE_REF0 MB_TYPE_ACPRED | 
| #define MB_TYPE_8x8DCT 0x01000000 | 
Definition at line 105 of file h264.h.
Referenced by ff_h264_decode_mb_cabac(), and ff_h264_decode_mb_cavlc().
| #define IS_REF0 | ( | a | ) | ((a) & MB_TYPE_REF0) | 
Definition at line 106 of file h264.h.
Referenced by ff_h264_decode_mb_cavlc().
| #define IS_8x8DCT | ( | a | ) | ((a) & MB_TYPE_8x8DCT) | 
Definition at line 107 of file h264.h.
Referenced by decode_cabac_luma_residual(), decode_luma_residual(), ff_h264_decode_mb_cabac(), ff_h264_filter_mb(), fill_decode_caches(), fill_filter_caches(), filter_mb_dir(), h264_filter_mb_fast_internal(), hl_decode_mb_idct_luma(), and hl_decode_mb_predict_luma().
| #define LIST_NOT_USED -1 | 
Definition at line 417 of file h264.h.
Referenced by ff_h264_decode_mb_cabac(), ff_h264_decode_mb_cavlc(), fill_decode_caches(), fill_filter_caches_inter(), pred_pskip_motion(), and write_back_motion().
| #define PART_NOT_AVAILABLE -2 | 
Definition at line 418 of file h264.h.
Referenced by fetch_diagonal_mv(), ff_h264_context_init(), ff_h264_decode_mb_cabac(), ff_h264_decode_mb_cavlc(), fill_decode_caches(), pred_motion(), pred_pskip_motion(), pred_spatial_direct_motion(), svq3_decode_frame(), and svq3_decode_mb().
| #define FRAME_RECOVERED_IDR (1 << 0) | 
We have seen an IDR, so all the following frames in coded order are correctly decodable.
Definition at line 730 of file h264.h.
Referenced by decode_nal_units().
| #define FRAME_RECOVERED_SEI (1 << 1) | 
Sufficient number of frames have been decoded since a SEI recovery point, so all the following frames in presentation order are correct.
Definition at line 735 of file h264.h.
Referenced by decode_postinit(), and ff_h264_execute_ref_pic_marking().
| #define LUMA_DC_BLOCK_INDEX 48 | 
Definition at line 926 of file h264.h.
Referenced by decode_cabac_luma_residual(), decode_cabac_residual_internal(), decode_luma_residual(), decode_residual(), get_cabac_cbf_ctx(), and hl_decode_mb_predict_luma().
| #define CHROMA_DC_BLOCK_INDEX 49 | 
Definition at line 927 of file h264.h.
Referenced by decode_cabac_residual_internal(), ff_h264_decode_mb_cabac(), ff_h264_decode_mb_cavlc(), get_cabac_cbf_ctx(), and hl_decode_mb().
| #define SLICE_SINGLETHREAD 1 | 
Definition at line 1138 of file h264.h.
Referenced by decode_nal_units(), and ff_h264_decode_slice_header().
| #define SLICE_SKIPED 2 | 
Definition at line 1139 of file h264.h.
Referenced by decode_nal_units(), and ff_h264_decode_slice_header().
| anonymous enum | 
| enum SEI_Type | 
SEI message types.
| enum SEI_PicStructType | 
pic_struct in picture timing SEI message
| enum SEI_FpaType | 
| enum MMCOOpcode | 
| int ff_h264_decode_sei | ( | H264Context * | h | ) | 
Decode SEI.
Definition at line 282 of file h264_sei.c.
Referenced by decode_nal_units(), and parse_nal_units().
| int ff_h264_decode_seq_parameter_set | ( | H264Context * | h | ) | 
Decode SPS.
Definition at line 306 of file h264_ps.c.
Referenced by decode_nal_units(), and parse_nal_units().
| int ff_h264_get_profile | ( | SPS * | sps | ) | 
compute profile from sps
compute profile from sps
| sps | SPS | 
Definition at line 1208 of file h264.c.
Referenced by ff_h264_decode_slice_header(), and parse_nal_units().
| int ff_h264_decode_picture_parameter_set | ( | H264Context * | h, | 
| int | bit_length | ||
| ) | 
Decode PPS.
Definition at line 584 of file h264_ps.c.
Referenced by decode_nal_units(), and parse_nal_units().
| const uint8_t* ff_h264_decode_nal | ( | H264Context * | h, | 
| const uint8_t * | src, | ||
| int * | dst_length, | ||
| int * | consumed, | ||
| int | length | ||
| ) | 
Decode a network abstraction layer unit.
| consumed | is the number of bytes used as input | 
| length | is the length of the array | 
| dst_length | is the number of decoded bytes FIXME here or a decode rbsp tailing? | 
Definition at line 235 of file h264.c.
Referenced by decode_nal_units(), get_last_needed_nal(), and parse_nal_units().
| void ff_h264_free_context | ( | H264Context * | h | ) | 
Free any data that may have been allocated in the H264 context like SPS, PPS etc.
Definition at line 1922 of file h264.c.
Referenced by close(), ff_h264_decode_init(), h264_decode_end(), and svq3_decode_end().
| int ff_h264_get_slice_type | ( | const H264Context * | h | ) | 
Reconstruct bitstream slice_type.
Definition at line 2014 of file h264_slice.c.
Referenced by fill_slice_long(), and vaapi_h264_decode_slice().
| int ff_h264_alloc_tables | ( | H264Context * | h | ) | 
Allocate tables.
needs width/height
Definition at line 428 of file h264.c.
Referenced by ff_h264_update_thread_context(), h264_slice_header_init(), and svq3_decode_init().
| int ff_h264_fill_default_ref_list | ( | H264Context * | h | ) | 
Fill the default_ref_list.
Definition at line 122 of file h264_refs.c.
Referenced by ff_h264_decode_slice_header().
| int ff_h264_decode_ref_pic_list_reordering | ( | H264Context * | h | ) | 
Definition at line 220 of file h264_refs.c.
Referenced by ff_h264_decode_slice_header().
| void ff_h264_fill_mbaff_ref_list | ( | H264Context * | h | ) | 
Definition at line 351 of file h264_refs.c.
Referenced by ff_h264_decode_slice_header().
| void ff_h264_remove_all_refs | ( | H264Context * | h | ) | 
Definition at line 487 of file h264_refs.c.
Referenced by h264_decode_end(), and idr().
| int ff_h264_execute_ref_pic_marking | ( | H264Context * | h, | 
| MMCO * | mmco, | ||
| int | mmco_count | ||
| ) | 
Execute the reference picture marking (memory management control operations).
Definition at line 587 of file h264_refs.c.
Referenced by ff_h264_decode_slice_header(), ff_h264_field_end(), and ff_h264_update_thread_context().
| int ff_h264_decode_ref_pic_marking | ( | H264Context * | h, | 
| GetBitContext * | gb, | ||
| int | first_slice | ||
| ) | 
Definition at line 788 of file h264_refs.c.
Referenced by ff_h264_decode_slice_header().
| int ff_generate_sliding_window_mmcos | ( | H264Context * | h, | 
| int | first_slice | ||
| ) | 
Definition at line 555 of file h264_refs.c.
Referenced by ff_h264_decode_ref_pic_marking(), and ff_h264_decode_slice_header().
| int ff_h264_check_intra4x4_pred_mode | ( | H264Context * | h | ) | 
Check if the top & left blocks are available if needed & change the dc mode so it only uses the available blocks.
Definition at line 147 of file h264.c.
Referenced by ff_h264_decode_mb_cabac(), ff_h264_decode_mb_cavlc(), and svq3_decode_mb().
| int ff_h264_check_intra_pred_mode | ( | H264Context * | h, | 
| int | mode, | ||
| int | is_chroma | ||
| ) | 
Check if the top & left blocks are available if needed & change the dc mode so it only uses the available blocks.
Definition at line 194 of file h264.c.
Referenced by ff_h264_decode_mb_cabac(), ff_h264_decode_mb_cavlc(), and svq3_decode_mb().
| void ff_h264_hl_decode_mb | ( | H264Context * | h | ) | 
Definition at line 809 of file h264_mb.c.
Referenced by decode_slice(), h264_er_decode_mb(), and svq3_decode_frame().
| int ff_h264_decode_extradata | ( | H264Context * | h, | 
| const uint8_t * | buf, | ||
| int | size | ||
| ) | 
Definition at line 568 of file h264.c.
Referenced by ff_h264_decode_init(), h264_decode_frame(), and h264_parse().
| int ff_h264_decode_init | ( | AVCodecContext * | avctx | ) | 
Definition at line 630 of file h264.c.
Referenced by svq3_decode_init().
Definition at line 326 of file h264_cavlc.c.
Referenced by ff_h264_decode_init().
| int ff_h264_decode_mb_cavlc | ( | H264Context * | h | ) | 
Decode a macroblock.
Definition at line 699 of file h264_cavlc.c.
Referenced by decode_slice().
| int ff_h264_decode_mb_cabac | ( | H264Context * | h | ) | 
Decode a CABAC coded macroblock.
Decode a CABAC coded macroblock.
Definition at line 1885 of file h264_cabac.c.
Referenced by decode_slice().
| void ff_h264_init_cabac_states | ( | H264Context * | h | ) | 
Definition at line 1264 of file h264_cabac.c.
Referenced by decode_slice().
| void h264_init_dequant_tables | ( | H264Context * | h | ) | 
Definition at line 401 of file h264_slice.c.
Referenced by ff_h264_alloc_tables(), and ff_h264_decode_slice_header().
| void ff_h264_direct_dist_scale_factor | ( | H264Context *const | h | ) | 
Definition at line 50 of file h264_direct.c.
Referenced by ff_h264_decode_slice_header().
| void ff_h264_direct_ref_list_init | ( | H264Context *const | h | ) | 
Definition at line 107 of file h264_direct.c.
Referenced by ff_h264_decode_slice_header().
| void ff_h264_pred_direct_motion | ( | H264Context *const | h, | 
| int * | mb_type | ||
| ) | 
Definition at line 693 of file h264_direct.c.
Referenced by decode_mb_skip(), ff_h264_decode_mb_cabac(), and ff_h264_decode_mb_cavlc().
| void ff_h264_filter_mb_fast | ( | H264Context * | h, | 
| int | mb_x, | ||
| int | mb_y, | ||
| uint8_t * | img_y, | ||
| uint8_t * | img_cb, | ||
| uint8_t * | img_cr, | ||
| unsigned int | linesize, | ||
| unsigned int | uvlinesize | ||
| ) | 
Definition at line 416 of file h264_loopfilter.c.
Referenced by loop_filter().
| void ff_h264_filter_mb | ( | H264Context * | h, | 
| int | mb_x, | ||
| int | mb_y, | ||
| uint8_t * | img_y, | ||
| uint8_t * | img_cb, | ||
| uint8_t * | img_cr, | ||
| unsigned int | linesize, | ||
| unsigned int | uvlinesize | ||
| ) | 
Definition at line 704 of file h264_loopfilter.c.
Referenced by ff_h264_filter_mb_fast(), and loop_filter().
| void ff_h264_reset_sei | ( | H264Context * | h | ) | 
Reset SEI values at the beginning of the frame.
| h | H.264 context. | 
Definition at line 37 of file h264_sei.c.
Referenced by decode_nal_units(), ff_h264_decode_init(), ff_h264_flush_change(), and parse_nal_units().
| const char* ff_h264_sei_stereo_mode | ( | H264Context * | h | ) | 
Get stereo_mode string from the h264 frame_packing_arrangement.
| h | H.264 context. | 
Definition at line 359 of file h264_sei.c.
Referenced by output_frame().
      
  | 
  static | 
Definition at line 946 of file h264.h.
Referenced by ff_h264_decode_mb_cabac(), ff_h264_decode_mb_cavlc(), fill_filter_caches_inter(), h264_er_decode_mb(), pred_pskip_motion(), pred_spatial_direct_motion(), pred_temp_direct_motion(), and svq3_mc_dir().
      
  | 
  static | 
Definition at line 955 of file h264.h.
Referenced by ff_h264_decode_mb_cabac().
      
  | 
  static | 
Get the chroma qp.
Definition at line 967 of file h264.h.
Referenced by ff_h264_decode_mb_cabac(), ff_h264_decode_mb_cavlc(), ff_h264_decode_slice_header(), ff_h264_filter_mb(), filter_mb_dir(), h264_filter_mb_fast_internal(), and loop_filter().
      
  | 
  static | 
Get the predicted intra4x4 prediction mode.
Definition at line 975 of file h264.h.
Referenced by ff_h264_decode_mb_cabac(), and ff_h264_decode_mb_cavlc().
      
  | 
  static | 
Definition at line 990 of file h264.h.
Referenced by ff_h264_decode_mb_cabac(), ff_h264_decode_mb_cavlc(), and svq3_decode_mb().
      
  | 
  static | 
Definition at line 1001 of file h264.h.
Referenced by ff_h264_decode_mb_cabac(), and ff_h264_decode_mb_cavlc().
      
  | 
  static | 
Definition at line 1024 of file h264.h.
Referenced by write_back_motion().
      
  | 
  static | 
Definition at line 1059 of file h264.h.
Referenced by decode_mb_skip(), ff_h264_decode_mb_cabac(), and ff_h264_decode_mb_cavlc().
      
  | 
  static | 
Definition at line 1084 of file h264.h.
Referenced by ff_h264_decode_mb_cabac(), and ff_h264_decode_mb_cavlc().
      
  | 
  inlinestatic | 
Definition at line 1096 of file h264.h.
Referenced by decode_nal_units(), get_last_needed_nal(), and parse_nal_units().
      
  | 
  inlinestatic | 
Definition at line 1106 of file h264.h.
Referenced by decode_nal_units(), get_last_needed_nal(), and parse_nal_units().
| int ff_h264_field_end | ( | H264Context * | h, | 
| int | in_setup | ||
| ) | 
Definition at line 155 of file h264_picture.c.
Referenced by ff_h264_decode_slice_header(), and h264_decode_frame().
| int ff_h264_ref_picture | ( | H264Context * | h, | 
| H264Picture * | dst, | ||
| H264Picture * | src | ||
| ) | 
Definition at line 68 of file h264_picture.c.
Referenced by ff_h264_update_thread_context(), and h264_frame_start().
| void ff_h264_unref_picture | ( | H264Context * | h, | 
| H264Picture * | pic | ||
| ) | 
Definition at line 47 of file h264_picture.c.
Referenced by alloc_picture(), ff_h264_free_tables(), ff_h264_ref_picture(), ff_h264_update_thread_context(), find_unused_picture(), flush_dpb(), h264_decode_end(), h264_frame_start(), and release_unused_pictures().
| int ff_h264_context_init | ( | H264Context * | h | ) | 
Init context Allocate buffers which are not shared amongst multiple threads.
Definition at line 493 of file h264.c.
Referenced by ff_h264_update_thread_context(), and h264_slice_header_init().
| int ff_h264_set_parameter_from_sps | ( | H264Context * | h | ) | 
Definition at line 1228 of file h264.c.
Referenced by ff_h264_decode_slice_header(), and ff_h264_update_thread_context().
| void ff_h264_draw_horiz_band | ( | H264Context * | h, | 
| int | y, | ||
| int | height | ||
| ) | 
Definition at line 99 of file h264.c.
Referenced by decode_finish_row(), dxva2_h264_end_frame(), vaapi_h264_end_frame(), and vdpau_h264_end_frame().
| int ff_init_poc | ( | H264Context * | h, | 
| int | pic_field_poc[2], | ||
| int * | pic_poc | ||
| ) | 
Definition at line 1123 of file h264.c.
Referenced by ff_h264_decode_slice_header(), and parse_nal_units().
| int ff_pred_weight_table | ( | H264Context * | h | ) | 
Definition at line 983 of file h264.c.
Referenced by ff_h264_decode_slice_header(), and scan_mmco_reset().
| int ff_set_ref_count | ( | H264Context * | h | ) | 
Definition at line 1277 of file h264.c.
Referenced by ff_h264_decode_slice_header(), and scan_mmco_reset().
| int ff_h264_decode_slice_header | ( | H264Context * | h, | 
| H264Context * | h0 | ||
| ) | 
Decode a slice header.
This will (re)intialize the decoder and call h264_frame_start() as needed.
| h | h264context | 
| h0 | h264 master context (differs from 'h' when doing sliced based parallel decoding) | 
Definition at line 1298 of file h264_slice.c.
Referenced by decode_nal_units().
| int ff_h264_execute_decode_slices | ( | H264Context * | h, | 
| unsigned | context_count | ||
| ) | 
Call decode_slice() for each context.
| h | h264 master context | 
| context_count | number of contexts to execute | 
Definition at line 2563 of file h264_slice.c.
Referenced by decode_nal_units().
| int ff_h264_update_thread_context | ( | AVCodecContext * | dst, | 
| const AVCodecContext * | src | ||
| ) | 
Definition at line 493 of file h264_slice.c.
| void ff_h264_flush_change | ( | H264Context * | h | ) | 
Definition at line 1061 of file h264.c.
Referenced by ff_h264_decode_init(), ff_h264_decode_slice_header(), and flush_dpb().
| void ff_h264_free_tables | ( | H264Context * | h, | 
| int | free_rbsp | ||
| ) | 
Definition at line 367 of file h264.c.
Referenced by ff_h264_alloc_tables(), ff_h264_free_context(), flush_dpb(), and h264_slice_header_init().
| void ff_h264_set_erpic | ( | ERPicture * | dst, | 
| H264Picture * | src | ||
| ) | 
Definition at line 132 of file h264_picture.c.
Referenced by ff_h264_decode_slice_header(), ff_h264_field_end(), and h264_frame_start().
| const uint8_t ff_h264_chroma_qp[7][QP_MAX_NUM+1] | 
One chroma qp table for each possible bit depth (8-14).
Definition at line 53 of file h264_ps.c.
Referenced by build_qp_table(), and hl_decode_mb().
| const uint16_t ff_h264_mb_sizes[4] | 
Definition at line 56 of file h264.c.
Referenced by ff_h264_decode_mb_cabac(), ff_h264_decode_mb_cavlc(), and hl_decode_mb().
      
  | 
  static | 
Definition at line 930 of file h264.h.
Referenced by decode_cabac_luma_residual(), decode_cabac_mb_ref(), decode_cabac_residual_dc(), decode_cabac_residual_dc_422(), decode_cabac_residual_internal(), decode_cabac_residual_nondc(), decode_luma_residual(), decode_residual(), decode_slice(), fetch_diagonal_mv(), ff_h264_check_intra4x4_pred_mode(), ff_h264_context_init(), ff_h264_decode_mb_cabac(), ff_h264_decode_mb_cavlc(), ff_h264_idct8_add4(), ff_h264_idct_add16(), ff_h264_idct_add16intra(), ff_h264_idct_add8(), ff_h264_idct_add8_422(), fill_decode_caches(), fill_filter_caches(), fill_filter_caches_inter(), filter_mb_dir(), get_cabac_cbf_ctx(), get_lowest_part_list_y(), get_lowest_part_y(), h264_er_decode_mb(), h264_frame_start(), hl_decode_mb(), hl_decode_mb_444(), hl_decode_mb_idct_luma(), hl_decode_mb_predict_luma(), mc_dir_part(), mc_part(), mc_part_std(), mc_part_weighted(), pred_16x8_motion(), pred_8x16_motion(), pred_intra_mode(), pred_motion(), pred_non_zero_count(), pred_pskip_motion(), pred_spatial_direct_motion(), pred_temp_direct_motion(), prefetch_motion(), svq3_decode_frame(), svq3_decode_mb(), svq3_mc_dir(), and write_back_motion_list().
 1.8.2