|
FFmpeg
|
#include "libavutil/imgutils.h"#include "libavutil/mem.h"#include "golomb.h"#include "h2645_vui.h"#include "data.h"#include "ps.h"#include "profiles.h"#include "libavutil/refstruct.h"Go to the source code of this file.
Macros | |
| #define | check_profile_idc(idc) ptl->profile_idc == idc || ptl->profile_compatibility_flag[idc] |
| #define | CHECK_QP_OFFSET(name) |
Enumerations | |
| enum | DependencyType { HEVC_DEP_TYPE_SAMPLE = 0, HEVC_DEP_TYPE_MV = 1, HEVC_DEP_TYPE_BOTH = 2 } |
Functions | |
| static void | remove_sps (HEVCParamSets *s, int id) |
| static void | remove_vps (HEVCParamSets *s, int id) |
| int | ff_hevc_decode_short_term_rps (GetBitContext *gb, AVCodecContext *avctx, ShortTermRPS *rps, const HEVCSPS *sps, int is_slice_header) |
| static int | decode_profile_tier_level (GetBitContext *gb, AVCodecContext *avctx, PTLCommon *ptl) |
| static int | parse_ptl (GetBitContext *gb, AVCodecContext *avctx, int profile_present, PTL *ptl, int max_num_sub_layers) |
| static void | decode_sublayer_hrd (GetBitContext *gb, unsigned int nb_cpb, HEVCSublayerHdrParams *par, int subpic_params_present) |
| static int | decode_hrd (GetBitContext *gb, int common_inf_present, HEVCHdrParams *hdr, int max_sublayers) |
| static void | hevc_vps_free (AVRefStructOpaque opaque, void *obj) |
| static int | decode_vps_ext (GetBitContext *gb, AVCodecContext *avctx, HEVCVPS *vps, uint64_t layer1_id_included) |
| int | ff_hevc_decode_nal_vps (GetBitContext *gb, AVCodecContext *avctx, HEVCParamSets *ps) |
| static void | decode_vui (GetBitContext *gb, AVCodecContext *avctx, int apply_defdispwin, HEVCSPS *sps) |
| static void | set_default_scaling_list_data (ScalingList *sl) |
| static int | scaling_list_data (GetBitContext *gb, AVCodecContext *avctx, ScalingList *sl, const HEVCSPS *sps) |
| static int | map_pixel_format (AVCodecContext *avctx, HEVCSPS *sps) |
| int | ff_hevc_parse_sps (HEVCSPS *sps, GetBitContext *gb, unsigned int *sps_id, unsigned nuh_layer_id, int apply_defdispwin, const HEVCVPS *const *vps_list, AVCodecContext *avctx) |
| Parse the SPS from the bitstream into the provided HEVCSPS struct. More... | |
| static void | hevc_sps_free (AVRefStructOpaque opaque, void *obj) |
| static int | compare_sps (const HEVCSPS *sps1, const HEVCSPS *sps2) |
| int | ff_hevc_decode_nal_sps (GetBitContext *gb, AVCodecContext *avctx, HEVCParamSets *ps, unsigned nuh_layer_id, int apply_defdispwin) |
| static void | hevc_pps_free (AVRefStructOpaque unused, void *obj) |
| static void | colour_mapping_octants (GetBitContext *gb, HEVCPPS *pps, int inp_depth, int idx_y, int idx_cb, int idx_cr, int inp_length) |
| static int | colour_mapping_table (GetBitContext *gb, AVCodecContext *avctx, HEVCPPS *pps) |
| static int | pps_multilayer_extension (GetBitContext *gb, AVCodecContext *avctx, HEVCPPS *pps, const HEVCSPS *sps, const HEVCVPS *vps) |
| static void | delta_dlt (GetBitContext *gb, HEVCPPS *pps) |
| static int | pps_3d_extension (GetBitContext *gb, AVCodecContext *avctx, HEVCPPS *pps, const HEVCSPS *sps) |
| static int | pps_range_extensions (GetBitContext *gb, AVCodecContext *avctx, HEVCPPS *pps, const HEVCSPS *sps) |
| static int | pps_scc_extension (GetBitContext *gb, AVCodecContext *avctx, HEVCPPS *pps, const HEVCSPS *sps) |
| static int | setup_pps (AVCodecContext *avctx, GetBitContext *gb, HEVCPPS *pps, const HEVCSPS *sps) |
| int | ff_hevc_decode_nal_pps (GetBitContext *gb, AVCodecContext *avctx, HEVCParamSets *ps) |
| void | ff_hevc_ps_uninit (HEVCParamSets *ps) |
| int | ff_hevc_compute_poc2 (unsigned log2_max_poc_lsb, int pocTid0, int poc_lsb, int nal_unit_type) |
| Compute POC of the current frame and return it. More... | |
Variables | |
| static const uint8_t | default_scaling_list_intra [] |
| static const uint8_t | default_scaling_list_inter [] |
| static const uint8_t | hevc_sub_width_c [] |
| static const uint8_t | hevc_sub_height_c [] |
| #define check_profile_idc | ( | idc | ) | ptl->profile_idc == idc || ptl->profile_compatibility_flag[idc] |
| #define CHECK_QP_OFFSET | ( | name | ) |
| enum DependencyType |
|
static |
Definition at line 65 of file ps.c.
Referenced by ff_hevc_decode_nal_sps(), and remove_vps().
|
static |
Definition at line 78 of file ps.c.
Referenced by ff_hevc_decode_nal_vps().
| int ff_hevc_decode_short_term_rps | ( | GetBitContext * | gb, |
| AVCodecContext * | avctx, | ||
| ShortTermRPS * | rps, | ||
| const HEVCSPS * | sps, | ||
| int | is_slice_header | ||
| ) |
Definition at line 89 of file ps.c.
Referenced by ff_hevc_parse_sps(), and hls_slice_header().
|
static |
Definition at line 238 of file ps.c.
Referenced by parse_ptl().
|
static |
Definition at line 313 of file ps.c.
Referenced by decode_vps_ext(), ff_hevc_decode_nal_vps(), and ff_hevc_parse_sps().
|
static |
Definition at line 359 of file ps.c.
Referenced by decode_hrd().
|
static |
Definition at line 377 of file ps.c.
Referenced by decode_vui(), and ff_hevc_decode_nal_vps().
|
static |
Definition at line 445 of file ps.c.
Referenced by ff_hevc_decode_nal_vps().
|
static |
For stereoscopic MV-HEVC, the following simplifying assumptions are made:
Which results in the following derived variables:
Definition at line 459 of file ps.c.
Referenced by ff_hevc_decode_nal_vps().
| int ff_hevc_decode_nal_vps | ( | GetBitContext * | gb, |
| AVCodecContext * | avctx, | ||
| HEVCParamSets * | ps | ||
| ) |
Definition at line 761 of file ps.c.
Referenced by decode_nal_unit(), hevc_decode_nal_units(), and parse_nal_units().
|
static |
Definition at line 921 of file ps.c.
Referenced by ff_hevc_parse_sps().
|
static |
Definition at line 1048 of file ps.c.
Referenced by ff_hevc_decode_nal_pps(), and ff_hevc_parse_sps().
|
static |
Definition at line 1078 of file ps.c.
Referenced by ff_hevc_decode_nal_pps(), and ff_hevc_parse_sps().
|
static |
Definition at line 1155 of file ps.c.
Referenced by ff_hevc_parse_sps().
| int ff_hevc_parse_sps | ( | HEVCSPS * | sps, |
| GetBitContext * | gb, | ||
| unsigned int * | sps_id, | ||
| unsigned | nuh_layer_id, | ||
| int | apply_defdispwin, | ||
| const HEVCVPS *const * | vps_list, | ||
| AVCodecContext * | avctx | ||
| ) |
Parse the SPS from the bitstream into the provided HEVCSPS struct.
| sps_id | the SPS id will be written here |
| apply_defdispwin | if set 1, the default display window from the VUI will be applied to the video dimensions |
| vps_list | if non-NULL, this function will validate that the SPS refers to an existing VPS |
Definition at line 1204 of file ps.c.
Referenced by ff_hevc_decode_nal_sps(), and generate_fake_vps().
|
static |
Definition at line 1685 of file ps.c.
Referenced by ff_hevc_decode_nal_sps().
Definition at line 1694 of file ps.c.
Referenced by ff_hevc_decode_nal_sps().
| int ff_hevc_decode_nal_sps | ( | GetBitContext * | gb, |
| AVCodecContext * | avctx, | ||
| HEVCParamSets * | ps, | ||
| unsigned | nuh_layer_id, | ||
| int | apply_defdispwin | ||
| ) |
Definition at line 1700 of file ps.c.
Referenced by decode_nal_unit(), hevc_decode_nal_units(), and parse_nal_units().
|
static |
Definition at line 1753 of file ps.c.
Referenced by ff_hevc_decode_nal_pps().
|
static |
Definition at line 1772 of file ps.c.
Referenced by colour_mapping_table().
|
static |
Definition at line 1809 of file ps.c.
Referenced by pps_multilayer_extension().
|
static |
Definition at line 1841 of file ps.c.
Referenced by ff_hevc_decode_nal_pps().
|
static |
Definition at line 1890 of file ps.c.
Referenced by pps_3d_extension().
|
static |
Definition at line 1912 of file ps.c.
Referenced by ff_hevc_decode_nal_pps().
|
static |
Definition at line 1936 of file ps.c.
Referenced by ff_hevc_decode_nal_pps().
|
static |
Definition at line 1976 of file ps.c.
Referenced by ff_hevc_decode_nal_pps().
|
inlinestatic |
| int ff_hevc_decode_nal_pps | ( | GetBitContext * | gb, |
| AVCodecContext * | avctx, | ||
| HEVCParamSets * | ps | ||
| ) |
Definition at line 2162 of file ps.c.
Referenced by decode_nal_unit(), hevc_decode_nal_units(), and parse_nal_units().
| void ff_hevc_ps_uninit | ( | HEVCParamSets * | ps | ) |
Definition at line 2434 of file ps.c.
Referenced by hevc_decode_free(), and hevc_parser_close().
| int ff_hevc_compute_poc2 | ( | unsigned | log2_max_poc_lsb, |
| int | pocTid0, | ||
| int | poc_lsb, | ||
| int | nal_unit_type | ||
| ) |
Compute POC of the current frame and return it.
Definition at line 2446 of file ps.c.
Referenced by ff_hevc_compute_poc(), and hevc_filter().
|
static |
Definition at line 35 of file ps.c.
Referenced by set_default_scaling_list_data().
|
static |
Definition at line 46 of file ps.c.
Referenced by set_default_scaling_list_data().
|
static |
Definition at line 57 of file ps.c.
Referenced by decode_vps_ext(), decode_vui(), and ff_hevc_parse_sps().
|
static |
Definition at line 61 of file ps.c.
Referenced by decode_vps_ext(), decode_vui(), and ff_hevc_parse_sps().
1.8.17