xine-lib 1.2.12
|
Data Structures | |
struct | vdec_hw_h264_vui_t |
struct | vdec_hw_h264_sps_t |
struct | vdec_hw_h264_pps_t |
struct | vdec_hw_h264_lps_t |
struct | vdec_hw_h264_frame_int_s |
struct | vdec_hw_h264_sequence_t |
struct | vdec_hw_h264_s |
Macros | |
#define | LOG_MODULE "vdec_hw_h264" |
#define | lprintf(_fmt, ...) /* nothing */ |
#define | PICTURE_TOP_DONE 1 |
#define | PICTURE_BOTTOM_DONE 2 |
#define | PICTURE_DONE 3 |
#define | SHORT_TERM_REF 1 |
#define | LONG_TERM_REF 2 |
#define | MAX_SPS 32 |
#define | MAX_PPS 256 |
#define | MAX_SLICES 80 /* 68? */ |
#define | MAX_REF_FRAMES 16 |
#define | MIN_BUFFER_SIZE 10000 |
#define | MAX_BUFFER_SIZE 3145728 |
#define | BUF_PAD 8 |
#define | NAL_UNSPECIFIED 0 |
#define | NAL_SLICE_NO_IDR 1 |
#define | NAL_SLICE_IDR 5 |
#define | NAL_SEI 6 |
#define | NAL_SEQUENCE 7 |
#define | NAL_PICTURE 8 |
#define | NAL_SEEK_POINT 9 |
#define | NAL_END_SEQUENCE 10 |
#define | NAL_END_STREAM 11 |
#define | NAL_FILLER 12 |
#define | NAL_SEQUENCE_EXT 13 |
#define | SLICE_TYPE_P 0 |
#define | SLICE_TYPE_B 1 |
#define | SLICE_TYPE_I 2 |
#define | SLICE_TYPE_SP 3 |
#define | SLICE_TYPE_SI 4 |
#define | START_IDR_FLAG 1000 |
#define | MAX_POC 2147483647 |
#define | DPB_DRAW_CLEAR 1 |
#define | DPB_DRAW_REFS 2 |
#define | DPB_DRAW_CURRENT 3 |
#define | VDEC_HW_H264_MAX_SLICE_GROUPS 80 |
Typedefs | |
typedef struct vdec_hw_h264_frame_int_s | vdec_hw_h264_frame_int_t |
Variables | |
static const uint8_t | zigzag_4x4 [16] |
static const uint8_t | zigzag_8x8 [64] |
static const uint8_t | default_4x4_intra [16] |
static const uint8_t | default_4x4_inter [16] |
static const uint8_t | default_8x8_intra [64] |
static const uint8_t | default_8x8_inter [64] |
#define BUF_PAD 8 |
#define DPB_DRAW_CLEAR 1 |
#define DPB_DRAW_CURRENT 3 |
#define DPB_DRAW_REFS 2 |
#define LOG_MODULE "vdec_hw_h264" |
#define LONG_TERM_REF 2 |
#define lprintf | ( | _fmt, | |
... | |||
) | /* nothing */ |
#define MAX_BUFFER_SIZE 3145728 |
#define MAX_POC 2147483647 |
#define MAX_PPS 256 |
#define MAX_REF_FRAMES 16 |
#define MAX_SLICES 80 /* 68? */ |
#define MAX_SPS 32 |
#define MIN_BUFFER_SIZE 10000 |
#define NAL_END_SEQUENCE 10 |
#define NAL_END_STREAM 11 |
#define NAL_FILLER 12 |
#define NAL_PICTURE 8 |
#define NAL_SEEK_POINT 9 |
#define NAL_SEI 6 |
#define NAL_SEQUENCE 7 |
#define NAL_SEQUENCE_EXT 13 |
#define NAL_SLICE_IDR 5 |
#define NAL_SLICE_NO_IDR 1 |
#define NAL_UNSPECIFIED 0 |
#define PICTURE_BOTTOM_DONE 2 |
#define PICTURE_DONE 3 |
#define PICTURE_TOP_DONE 1 |
#define SHORT_TERM_REF 1 |
#define SLICE_TYPE_B 1 |
#define SLICE_TYPE_I 2 |
#define SLICE_TYPE_P 0 |
#define SLICE_TYPE_SI 4 |
#define SLICE_TYPE_SP 3 |
#define START_IDR_FLAG 1000 |
#define VDEC_HW_H264_MAX_SLICE_GROUPS 80 |
typedef struct vdec_hw_h264_frame_int_s vdec_hw_h264_frame_int_t |
|
static |
References user_data(), and VDEC_HW_H264_LOGG_ERR.
|
static |
References vdec_hw_h264_frame_t::bad_frame, vdec_hw_h264_frame_int_s::BottomFieldOrderCnt, vdec_hw_h264_frame_int_s::f, vdec_hw_h264_lps_t::field_pic_flag, vdec_hw_h264_frame_int_s::field_pic_flag, vdec_hw_h264_s::frames, vdec_hw_h264_frame_int_s::is_reference, LOG_MODULE, MAX_REF_FRAMES, vdec_hw_h264_lps_t::num_ref_idx_l0_active_minus1, vdec_hw_h264_lps_t::num_ref_idx_l1_active_minus1, vdec_hw_h264_lps_t::pps_id, vdec_hw_h264_sps_t::ref_frames_used, vdec_hw_h264_s::ref_frames_used, vdec_hw_h264_lps_t::slice_type, SLICE_TYPE_B, SLICE_TYPE_I, vdec_hw_h264_pps_t::sps_id, vdec_hw_h264_frame_int_s::TopFieldOrderCnt, and VDEC_HW_H264_LOGG_ERR.
Referenced by _vdec_hw_h264_decode_picture().
|
static |
References _vdec_hw_h264_dpb_draw_frames(), _vdec_hw_h264_dpb_get_prev_ref(), _vdec_hw_h264_dpb_remove(), _vdec_hw_h264_frame_link(), _vdec_hw_h264_get_sps(), vdec_hw_h264_frame_int_s::BottomFieldOrderCnt, DPB_DRAW_REFS, vdec_hw_h264_frame_int_s::drawn, vdec_hw_h264_s::frames, vdec_hw_h264_frame_int_s::is_reference, LOG_MODULE, lprintf, MAX_POC, MAX_REF_FRAMES, NULL, vdec_hw_h264_s::ref_frames_max, vdec_hw_h264_sps_t::ref_frames_used, vdec_hw_h264_s::ref_frames_used, vdec_hw_h264_sps_t::sps_id, vdec_hw_h264_frame_int_s::TopFieldOrderCnt, VDEC_HW_H264_LOGG_ERR, and VDEC_HW_H264_LOGG_INFO.
Referenced by _vdec_hw_h264_decode_picture().
|
static |
References _vdec_hw_h264_dpb_mmc1(), bits_exp_ue(), bits_read(), bits_skip(), vdec_hw_h264_frame_int_s::completed, vdec_hw_h264_frame_int_s::field_pic_flag, vdec_hw_h264_s::frames, vdec_hw_h264_frame_int_s::is_reference, lprintf, MAX_REF_FRAMES, vdec_hw_h264_frame_int_s::PicNum, PICTURE_DONE, and SHORT_TERM_REF.
Referenced by _vdec_hw_h264_slice_header_post().
|
static |
References vdec_hw_h264_lps_t::bottom_field_flag, vdec_hw_h264_lps_t::field_pic_flag, vdec_hw_h264_frame_int_s::field_pic_flag, vdec_hw_h264_frame_int_s::FrameNum, vdec_hw_h264_frame_int_s::FrameNumWrap, vdec_hw_h264_s::frames, MAX_REF_FRAMES, vdec_hw_h264_lps_t::MaxFrameNum, vdec_hw_h264_frame_int_s::PicNum, and vdec_hw_h264_s::ref_frames_used.
Referenced by _vdec_hw_h264_decode_picture().
|
static |
References _vdec_hw_h264_check_ref_list(), _vdec_hw_h264_dbp_append(), _vdec_hw_h264_decode_picnum(), _vdec_hw_h264_decode_poc(), _vdec_hw_h264_dpb_draw_frames(), _vdec_hw_h264_dpb_reset(), _vdec_hw_h264_frame_free(), _vdec_hw_h264_ref_pic_list_reordering(), _vdec_hw_h264_render(), _vdec_hw_h264_slice_header_post(), vdec_hw_h264_lps_t::bottom_field_flag, vdec_hw_h264_frame_int_s::BottomFieldOrderCnt, vdec_hw_h264_frame_int_s::completed, DPB_DRAW_CLEAR, DPB_DRAW_CURRENT, DPB_DRAW_REFS, vdec_hw_h264_lps_t::field_pic_flag, vdec_hw_h264_frame_int_s::field_pic_flag, vdec_hw_h264_lps_t::frame_num, vdec_hw_h264_frame_int_s::FrameNum, vdec_hw_h264_s::frames, vdec_hw_h264_frame_int_s::is_reference, lprintf, MAX_POC, MAX_REF_FRAMES, vdec_hw_h264_frame_int_s::missing_header, vdec_hw_h264_lps_t::nal_unit_type, PICTURE_BOTTOM_DONE, PICTURE_DONE, PICTURE_TOP_DONE, vdec_hw_h264_lps_t::pps_id, START_IDR_FLAG, and vdec_hw_h264_frame_int_s::TopFieldOrderCnt.
Referenced by _vdec_hw_h264_flush_slices().
|
static |
References _vdec_hw_h264_dpb_get_prev_ref(), vdec_hw_h264_lps_t::bottom_field_flag, vdec_hw_h264_frame_int_s::BottomFieldOrderCnt, vdec_hw_h264_frame_int_s::completed, vdec_hw_h264_lps_t::delta_pic_order_cnt, vdec_hw_h264_lps_t::delta_pic_order_cnt_bottom, vdec_hw_h264_frame_int_s::f, vdec_hw_h264_lps_t::field_pic_flag, vdec_hw_h264_frame_int_s::field_pic_flag, vdec_hw_h264_lps_t::frame_num, vdec_hw_h264_frame_int_s::FrameNum, vdec_hw_h264_s::frames, vdec_hw_h264_frame_int_s::is_reference, vdec_hw_h264_sps_t::log2_max_frame_num_minus4, vdec_hw_h264_sps_t::log2_max_pic_order_cnt_lsb_minus4, MAX_REF_FRAMES, vdec_hw_h264_frame_int_s::mmc5, vdec_hw_h264_lps_t::nal_ref_idc, NAL_SLICE_IDR, vdec_hw_h264_lps_t::nal_unit_type, vdec_hw_h264_sps_t::offset_for_non_ref_pic, vdec_hw_h264_sps_t::offset_for_ref_frame, vdec_hw_h264_sps_t::offset_for_top_to_bottom_field, vdec_hw_h264_lps_t::pic_order_cnt_lsb, vdec_hw_h264_frame_int_s::pic_order_cnt_lsb, vdec_hw_h264_sps_t::pic_order_cnt_type, vdec_hw_h264_frame_int_s::PicOrderCntMsb, PICTURE_BOTTOM_DONE, PICTURE_DONE, PICTURE_TOP_DONE, vdec_hw_h264_lps_t::pps_id, vdec_hw_h264_sps_t::ref_frames_used_in_pic_order_cnt_cycle, vdec_hw_h264_pps_t::sps_id, vdec_hw_h264_frame_t::top_field_first, vdec_hw_h264_frame_int_s::TopFieldOrderCnt, and vdec_hw_h264_frame_int_s::used.
Referenced by _vdec_hw_h264_decode_picture().
|
static |
References _vdec_hw_h264_dpb_remove(), _vdec_hw_h264_dpb_reset(), _vdec_hw_h264_frame_draw(), _vdec_hw_h264_frame_free(), vdec_hw_h264_frame_int_s::BottomFieldOrderCnt, DPB_DRAW_CLEAR, DPB_DRAW_CURRENT, vdec_hw_h264_frame_int_s::drawn, vdec_hw_h264_s::frames, vdec_hw_h264_frame_int_s::is_reference, MAX_REF_FRAMES, vdec_hw_h264_s::ref_frames_used, and vdec_hw_h264_frame_int_s::TopFieldOrderCnt.
Referenced by _vdec_hw_h264_dbp_append(), _vdec_hw_h264_decode_picture(), _vdec_hw_h264_dpb_mmc1(), _vdec_hw_h264_nal_unit(), vdec_hw_h264_flush(), and vdec_hw_h264_put_frame().
|
static |
References NULL, vdec_hw_h264_frame_int_s::PicNum, and vdec_hw_h264_s::ref_frames_used.
Referenced by _vdec_hw_h264_dpb_mmc1().
|
static |
References NULL, and vdec_hw_h264_s::ref_frames_used.
Referenced by _vdec_hw_h264_dbp_append(), and _vdec_hw_h264_decode_poc().
|
static |
References _vdec_hw_h264_dpb_draw_frames(), _vdec_hw_h264_dpb_get_PicNum(), _vdec_hw_h264_dpb_remove(), vdec_hw_h264_frame_int_s::BottomFieldOrderCnt, DPB_DRAW_REFS, vdec_hw_h264_frame_int_s::drawn, vdec_hw_h264_frame_int_s::is_reference, lprintf, and vdec_hw_h264_frame_int_s::TopFieldOrderCnt.
Referenced by _vdec_hw_h264_dec_ref_pic_marking().
|
static |
References _vdec_hw_h264_frame_free(), lprintf, and vdec_hw_h264_s::ref_frames_used.
Referenced by _vdec_hw_h264_dbp_append(), _vdec_hw_h264_dpb_draw_frames(), and _vdec_hw_h264_dpb_mmc1().
|
static |
|
static |
Referenced by vdec_hw_h264_put_frame().
|
static |
References _vdec_hw_h264_decode_picture(), and MAX_SLICES.
Referenced by _vdec_hw_h264_nal_unit(), vdec_hw_h264_flush(), and vdec_hw_h264_put_frame().
|
static |
References vdec_hw_h264_frame_int_s::drawn, vdec_hw_h264_frame_int_s::f, vdec_hw_h264_frame_int_s::link, and vdec_hw_h264_s::stats.
Referenced by _vdec_hw_h264_dpb_draw_frames().
|
static |
References vdec_hw_h264_frame_int_s::f, vdec_hw_h264_frame_int_s::link, LOG_MODULE, NULL, vdec_hw_h264_frame_t::user_data, vdec_hw_h264_s::user_frames, vdec_hw_h264_frame_t::vdec, and VDEC_HW_H264_LOGG_ERR.
Referenced by _vdec_hw_h264_decode_picture(), _vdec_hw_h264_dpb_draw_frames(), _vdec_hw_h264_dpb_remove(), _vdec_hw_h264_dpb_reset(), _vdec_hw_h264_frame_link(), _vdec_hw_h264_frame_new(), _vdec_hw_h264_reset_sequence(), and vdec_hw_h264_delete().
|
static |
References _vdec_hw_h264_frame_free(), vdec_hw_h264_frame_int_s::f, vdec_hw_h264_frame_int_s::link, and vdec_hw_h264_frame_t::user_data.
Referenced by _vdec_hw_h264_dbp_append().
|
static |
References _vdec_hw_h264_frame_free(), vdec_hw_h264_frame_int_s::drawn, vdec_hw_h264_frame_int_s::f, vdec_hw_h264_frame_int_s::link, LOG_MODULE, NULL, vdec_hw_h264_s::ref_frames_max, vdec_hw_h264_frame_t::user_data, vdec_hw_h264_s::user_frames, and VDEC_HW_H264_LOGG_ERR.
Referenced by _vdec_hw_h264_render().
|
static |
References NULL, vdec_hw_h264_lps_t::pps_id, and vdec_hw_h264_pps_t::sps_id.
Referenced by _vdec_hw_h264_dbp_append(), and _vdec_hw_h264_nal_unit().
|
static |
References _vdec_hw_h264_dpb_draw_frames(), _vdec_hw_h264_flush_slices(), _vdec_hw_h264_get_sps(), _vdec_hw_h264_read_pps(), _vdec_hw_h264_read_sps(), _vdec_hw_h264_slice_header(), _vdec_hw_h264_unescape(), bits_set_buf(), DPB_DRAW_CLEAR, LOG_MODULE, lprintf, MAX_POC, NAL_END_SEQUENCE, NAL_FILLER, NAL_PICTURE, NAL_SEEK_POINT, NAL_SEI, NAL_SEQUENCE, NAL_SLICE_IDR, NAL_SLICE_NO_IDR, vdec_hw_h264_sps_t::reused, vdec_hw_h264_s::stats, vdec_hw_h264_s::tempbuf, VDEC_HW_H264_FRAME_NEW_SEQ, VDEC_HW_H264_LOGG_ERR, and VDEC_HW_H264_LOGG_INFO.
Referenced by vdec_hw_h264_flush(), and vdec_hw_h264_put_frame().
|
static |
References bits_exp_se(), bits_exp_ue(), bits_read(), slice_type(), and SLICE_TYPE_B.
Referenced by _vdec_hw_h264_slice_header_post().
|
static |
References _vdec_hw_h264_scaling_list_fallback_A(), _vdec_hw_h264_scaling_list_fallback_B(), bits, bits_exp_se(), bits_exp_ue(), bits_read(), bits_valid_left(), vdec_hw_h264_pps_t::chroma_qp_index_offset, vdec_hw_h264_pps_t::constrained_intra_pred_flag, vdec_hw_h264_pps_t::deblocking_filter_control_present_flag, vdec_hw_h264_pps_t::entropy_coding_mode_flag, vdec_hw_h264_pps_t::id, LOG_MODULE, lprintf, NULL, vdec_hw_h264_pps_t::num_ref_idx_l0_active_minus1, vdec_hw_h264_pps_t::num_ref_idx_l1_active_minus1, vdec_hw_h264_pps_t::num_slice_groups_minus1, parse_scaling_list(), vdec_hw_h264_pps_t::pic_init_qp_minus26, vdec_hw_h264_pps_t::pic_init_qs_minus26, vdec_hw_h264_pps_t::pic_order_present_flag, vdec_hw_h264_pps_t::pic_scaling_list_present_flag, vdec_hw_h264_pps_t::pic_scaling_matrix_present_flag, vdec_hw_h264_pps_t::pic_size_in_map_units_minus1, vdec_hw_h264_pps_t::pps_id, vdec_hw_h264_pps_t::redundant_pic_cnt_present_flag, vdec_hw_h264_pps_t::run_length_minus1, vdec_hw_h264_pps_t::scaling_lists_4x4, vdec_hw_h264_pps_t::scaling_lists_8x8, vdec_hw_h264_pps_t::second_chroma_qp_index_offset, vdec_hw_h264_sps_t::seq_scaling_matrix_present_flag, vdec_hw_h264_pps_t::slice_group_change_direction_flag, vdec_hw_h264_pps_t::slice_group_change_rate_minus1, vdec_hw_h264_pps_t::slice_group_map_type, vdec_hw_h264_pps_t::slice_groups, vdec_hw_h264_pps_t::sps_id, vdec_hw_h264_s::stats, vdec_hw_h264_pps_t::transform_8x8_mode_flag, VDEC_HW_H264_LOGG_ERR, VDEC_HW_H264_LOGG_INFO, VDEC_HW_H264_MAX_SLICE_GROUPS, vdec_hw_h264_pps_t::weighted_bipred_idc, and vdec_hw_h264_pps_t::weighted_pred_flag.
Referenced by _vdec_hw_h264_nal_unit(), and vdec_hw_h264_put_config().
|
static |
References _vdec_hw_h264_read_vui(), _vdec_hw_h264_scaling_list_fallback_A(), _vdec_hw_h264_set_ratio(), vdec_hw_h264_sps_t::bit_depth_chroma_minus8, vdec_hw_h264_sps_t::bit_depth_luma_minus8, bits, bits_exp_se(), bits_exp_ue(), bits_read(), vdec_hw_h264_sps_t::chroma_format_idc, vdec_hw_h264_sps_t::constraint_set0_flag, vdec_hw_h264_sps_t::constraint_set1_flag, vdec_hw_h264_sps_t::constraint_set2_flag, vdec_hw_h264_sps_t::constraint_set3_flag, vdec_hw_h264_sps_t::delta_pic_order_always_zero_flag, vdec_hw_h264_sps_t::direct_8x8_inference_flag, vdec_hw_h264_sps_t::frame_crop_bottom_offset, vdec_hw_h264_sps_t::frame_crop_left_offset, vdec_hw_h264_sps_t::frame_crop_right_offset, vdec_hw_h264_sps_t::frame_crop_top_offset, vdec_hw_h264_sps_t::frame_cropping_flag, vdec_hw_h264_sps_t::frame_mbs_only_flag, vdec_hw_h264_sps_t::gaps_in_frame_num_value_allowed_flag, vdec_hw_h264_sps_t::level_idc, vdec_hw_h264_sps_t::log2_max_frame_num_minus4, vdec_hw_h264_sps_t::log2_max_pic_order_cnt_lsb_minus4, LOG_MODULE, lprintf, vdec_hw_h264_sps_t::mb_adaptive_frame_field_flag, NULL, vdec_hw_h264_sps_t::offset_for_non_ref_pic, vdec_hw_h264_sps_t::offset_for_ref_frame, vdec_hw_h264_sps_t::offset_for_top_to_bottom_field, parse_scaling_list(), vdec_hw_h264_sps_t::pic_height_in_map_units_minus1, vdec_hw_h264_sps_t::pic_order_cnt_type, vdec_hw_h264_sps_t::pic_width_in_mbs_minus1, vdec_hw_h264_sps_t::profile_idc, vdec_hw_h264_sps_t::qpprime_y_zero_transform_bypass_flag, vdec_hw_h264_sps_t::ref_frames_used, vdec_hw_h264_sps_t::ref_frames_used_in_pic_order_cnt_cycle, vdec_hw_h264_sps_t::reused, vdec_hw_h264_sps_t::scaling_lists_4x4, vdec_hw_h264_sps_t::scaling_lists_8x8, vdec_hw_h264_sps_t::separate_colour_plane_flag, vdec_hw_h264_sps_t::seq_scaling_matrix_present_flag, vdec_hw_h264_sps_t::sps_id, vdec_hw_h264_s::stats, VDEC_HW_H264_LOGG_ERR, VDEC_HW_H264_LOGG_INFO, vdec_hw_h264_sps_t::vui, and vdec_hw_h264_sps_t::vui_parameters_present_flag.
Referenced by _vdec_hw_h264_nal_unit(), and vdec_hw_h264_put_config().
|
static |
References vdec_hw_h264_vui_t::aspect_ratio_idc, vdec_hw_h264_vui_t::aspect_ratio_info, bits_exp_ue(), bits_read(), bits_skip(), vdec_hw_h264_vui_t::colour_desc, lprintf, vdec_hw_h264_vui_t::num_units_in_tick, vdec_hw_h264_vui_t::sar_height, vdec_hw_h264_vui_t::sar_width, vdec_hw_h264_vui_t::time_scale, and vdec_hw_h264_vui_t::timing_info.
Referenced by _vdec_hw_h264_read_sps().
|
static |
References bits_exp_ue(), bits_read(), vdec_hw_h264_lps_t::slice_type, SLICE_TYPE_B, SLICE_TYPE_I, and SLICE_TYPE_SI.
Referenced by _vdec_hw_h264_decode_picture().
|
static |
References _vdec_hw_h264_frame_new(), vdec_hw_h264_frame_t::bad_frame, vdec_hw_h264_sps_t::bit_depth_chroma_minus8, vdec_hw_h264_sps_t::bit_depth_luma_minus8, vdec_hw_h264_lps_t::bottom_field_flag, vdec_hw_h264_info_ref_frame_t::bottom_is_reference, vdec_hw_h264_frame_int_s::BottomFieldOrderCnt, vdec_hw_h264_sps_t::chroma_format_idc, vdec_hw_h264_pps_t::chroma_qp_index_offset, vdec_hw_h264_frame_t::color_matrix, vdec_hw_h264_frame_int_s::completed, vdec_hw_h264_pps_t::constrained_intra_pred_flag, vdec_hw_h264_pps_t::deblocking_filter_control_present_flag, vdec_hw_h264_sps_t::delta_pic_order_always_zero_flag, vdec_hw_h264_sps_t::direct_8x8_inference_flag, vdec_hw_h264_frame_int_s::drop_pts, vdec_hw_h264_frame_t::duration, vdec_hw_h264_pps_t::entropy_coding_mode_flag, vdec_hw_h264_frame_int_s::f, vdec_hw_h264_info_ref_frame_t::field_order_cnt, vdec_hw_h264_lps_t::field_pic_flag, vdec_hw_h264_frame_int_s::field_pic_flag, vdec_hw_h264_frame_t::flags, vdec_hw_h264_info_ref_frame_t::frame, vdec_hw_h264_info_ref_frame_t::frame_idx, vdec_hw_h264_sps_t::frame_mbs_only_flag, vdec_hw_h264_lps_t::frame_num, vdec_hw_h264_frame_int_s::FrameNum, vdec_hw_h264_s::frames, vdec_hw_h264_sps_t::gaps_in_frame_num_value_allowed_flag, vdec_hw_h264_frame_t::height, vdec_hw_h264_frame_t::info, vdec_hw_h264_info_ref_frame_t::is_long_term, vdec_hw_h264_frame_int_s::is_reference, vdec_hw_h264_frame_t::level, vdec_hw_h264_sps_t::level_idc, vdec_hw_h264_sps_t::log2_max_frame_num_minus4, vdec_hw_h264_sps_t::log2_max_pic_order_cnt_lsb_minus4, MAX_REF_FRAMES, vdec_hw_h264_sps_t::mb_adaptive_frame_field_flag, vdec_hw_h264_lps_t::nal_ref_idc, NULL, vdec_hw_h264_frame_t::num_ref_frames, vdec_hw_h264_pps_t::num_ref_idx_l0_active_minus1, vdec_hw_h264_pps_t::num_ref_idx_l1_active_minus1, vdec_hw_h264_pps_t::num_slice_groups_minus1, vdec_hw_h264_pps_t::pic_init_qp_minus26, vdec_hw_h264_pps_t::pic_init_qs_minus26, vdec_hw_h264_sps_t::pic_order_cnt_type, vdec_hw_h264_pps_t::pic_order_present_flag, vdec_hw_h264_pps_t::pic_scaling_matrix_present_flag, PICTURE_DONE, vdec_hw_h264_lps_t::pps_id, vdec_hw_h264_frame_t::profile, vdec_hw_h264_sps_t::profile_idc, vdec_hw_h264_frame_t::progressive_frame, vdec_hw_h264_frame_t::pts, vdec_hw_h264_frame_t::ratio, vdec_hw_h264_pps_t::redundant_pic_cnt_present_flag, vdec_hw_h264_sps_t::ref_frames_used, vdec_hw_h264_s::ref_frames_used, vdec_hw_h264_sps_t::scaling_lists_4x4, vdec_hw_h264_pps_t::scaling_lists_4x4, vdec_hw_h264_sps_t::scaling_lists_8x8, vdec_hw_h264_pps_t::scaling_lists_8x8, vdec_hw_h264_pps_t::second_chroma_qp_index_offset, vdec_hw_h264_sps_t::separate_colour_plane_flag, vdec_hw_h264_pps_t::slice_group_map_type, vdec_hw_h264_pps_t::sps_id, vdec_hw_h264_info_ref_frame_t::top_is_reference, vdec_hw_h264_frame_int_s::TopFieldOrderCnt, vdec_hw_h264_pps_t::transform_8x8_mode_flag, VDEC_HW_H264_FRAME_BOTTOM_FIELD, VDEC_HW_H264_FRAME_TOP_FIELD, vdec_hw_h264_pps_t::weighted_bipred_idc, vdec_hw_h264_pps_t::weighted_pred_flag, and vdec_hw_h264_frame_t::width.
Referenced by _vdec_hw_h264_decode_picture().
|
static |
References _vdec_hw_h264_dpb_reset(), _vdec_hw_h264_frame_free(), _vdec_hw_h264_reset_slices(), vdec_hw_h264_s::frames, MAX_REF_FRAMES, and VDEC_HW_H264_FRAME_NEW_SEQ.
Referenced by vdec_hw_h264_delete(), vdec_hw_h264_new(), and vdec_hw_h264_reset().
|
static |
Referenced by _vdec_hw_h264_reset_sequence().
|
static |
References default_4x4_inter, default_4x4_intra, default_8x8_inter, default_8x8_intra, zigzag_4x4, and zigzag_8x8.
Referenced by _vdec_hw_h264_read_pps(), and _vdec_hw_h264_read_sps().
|
static |
|
static |
|
static |
References bits_exp_se(), bits_exp_ue(), bits_read(), bits_skip(), vdec_hw_h264_lps_t::bottom_field_flag, vdec_hw_h264_frame_int_s::completed, vdec_hw_h264_sps_t::delta_pic_order_always_zero_flag, vdec_hw_h264_lps_t::delta_pic_order_cnt, vdec_hw_h264_lps_t::delta_pic_order_cnt_bottom, vdec_hw_h264_lps_t::field_pic_flag, vdec_hw_h264_sps_t::frame_mbs_only_flag, vdec_hw_h264_lps_t::frame_num, vdec_hw_h264_s::frames, vdec_hw_h264_lps_t::idr_pic_id, vdec_hw_h264_sps_t::log2_max_frame_num_minus4, vdec_hw_h264_sps_t::log2_max_pic_order_cnt_lsb_minus4, LOG_MODULE, lprintf, MAX_REF_FRAMES, vdec_hw_h264_lps_t::MaxFrameNum, vdec_hw_h264_frame_int_s::missing_header, vdec_hw_h264_lps_t::nal_ref_idc, NAL_SLICE_IDR, vdec_hw_h264_lps_t::nal_unit_type, vdec_hw_h264_pps_t::num_ref_idx_l0_active_minus1, vdec_hw_h264_lps_t::num_ref_idx_l0_active_minus1, vdec_hw_h264_pps_t::num_ref_idx_l1_active_minus1, vdec_hw_h264_lps_t::num_ref_idx_l1_active_minus1, vdec_hw_h264_lps_t::pic_order_cnt_lsb, vdec_hw_h264_sps_t::pic_order_cnt_type, vdec_hw_h264_pps_t::pic_order_present_flag, vdec_hw_h264_lps_t::pps_id, vdec_hw_h264_lps_t::redundant_pic_cnt, vdec_hw_h264_pps_t::redundant_pic_cnt_present_flag, vdec_hw_h264_sps_t::separate_colour_plane_flag, vdec_hw_h264_lps_t::slice_type, SLICE_TYPE_B, SLICE_TYPE_I, SLICE_TYPE_P, SLICE_TYPE_SP, vdec_hw_h264_pps_t::sps_id, and VDEC_HW_H264_LOGG_ERR.
Referenced by _vdec_hw_h264_nal_unit().
|
static |
References _vdec_hw_h264_dec_ref_pic_marking(), _vdec_hw_h264_pred_weight_table(), vdec_hw_h264_sps_t::chroma_format_idc, vdec_hw_h264_lps_t::nal_ref_idc, vdec_hw_h264_lps_t::nal_unit_type, vdec_hw_h264_lps_t::num_ref_idx_l0_active_minus1, vdec_hw_h264_lps_t::num_ref_idx_l1_active_minus1, vdec_hw_h264_lps_t::pps_id, vdec_hw_h264_sps_t::separate_colour_plane_flag, vdec_hw_h264_lps_t::slice_type, SLICE_TYPE_B, SLICE_TYPE_P, SLICE_TYPE_SP, vdec_hw_h264_pps_t::sps_id, vdec_hw_h264_pps_t::weighted_bipred_idc, and vdec_hw_h264_pps_t::weighted_pred_flag.
Referenced by _vdec_hw_h264_decode_picture().
|
static |
00 00 03 foo -> 00 00 foo
References v.
Referenced by _vdec_hw_h264_nal_unit(), and vdec_hw_h264_put_config().
|
static |
References bits_exp_se(), default_4x4_inter, default_4x4_intra, default_8x8_inter, default_8x8_intra, zigzag_4x4, and zigzag_8x8.
Referenced by _vdec_hw_h264_read_pps(), and _vdec_hw_h264_read_sps().
void vdec_hw_h264_delete | ( | vdec_hw_h264_t ** | dec | ) |
done
References _vdec_hw_h264_frame_free(), _vdec_hw_h264_reset_sequence(), vdec_hw_h264_s::frames, LOG_MODULE, MAX_PPS, MAX_REF_FRAMES, MAX_SPS, NULL, vdec_hw_h264_s::ref_frames_used, vdec_hw_h264_s::stats, vdec_hw_h264_s::user_frames, VDEC_HW_H264_LOGG_ERR, VDEC_HW_H264_LOGG_INFO, and vdec_hw_h264_reset().
Referenced by vdpau_h264_alter_dispose().
int vdec_hw_h264_flush | ( | vdec_hw_h264_t * | dec | ) |
frame_ready () / frame_delete () any held frames now
References _vdec_hw_h264_dpb_draw_frames(), _vdec_hw_h264_flush_slices(), _vdec_hw_h264_nal_unit(), DPB_DRAW_REFS, lprintf, MAX_POC, and vdec_hw_h264_s::ref_frames_used.
Referenced by vdpau_h264_alter_flush().
vdec_hw_h264_t * vdec_hw_h264_new | ( | int(*)(void *user_data, vdec_hw_h264_logg_t level, const char *fmt,...) | logg, |
void * | user_data, | ||
int(*)(void *user_data, vdec_hw_h264_frame_t *frame) | frame_new, | ||
int(*)(void *user_data, vdec_hw_h264_frame_t *frame) | frame_render, | ||
int(*)(void *user_data, vdec_hw_h264_frame_t *frame) | frame_ready, | ||
void(*)(void *user_data, vdec_hw_h264_frame_t *frame) | frame_delete, | ||
int | num_frames | ||
) |
References _vdec_hw_h264_reset_sequence(), BUF_PAD, vdec_hw_h264_s::frames, MAX_PPS, MAX_REF_FRAMES, MAX_SPS, MIN_BUFFER_SIZE, NULL, vdec_hw_h264_s::ref_frames_max, vdec_hw_h264_s::ref_frames_used, vdec_hw_h264_s::stats, user_data(), vdec_hw_h264_s::user_frames, and VDEC_HW_H264_FRAME_NEW_SEQ.
Referenced by open_plugin().
int vdec_hw_h264_put_config | ( | vdec_hw_h264_t * | dec, |
const uint8_t * | bitstream, | ||
uint32_t | num_bytes | ||
) |
optional global head from media container
References _vdec_hw_h264_read_pps(), _vdec_hw_h264_read_sps(), _vdec_hw_h264_unescape(), bits_set_buf(), lprintf, and vdec_hw_h264_s::tempbuf.
Referenced by vdpau_h264_alter_decode_data().
int vdec_hw_h264_put_container_info | ( | vdec_hw_h264_t * | dec, |
int | width, | ||
int | height, | ||
int | duration, | ||
double | ratio | ||
) |
optional, 0 means "no change".
Referenced by vdpau_h264_alter_decode_data().
int vdec_hw_h264_put_frame | ( | vdec_hw_h264_t * | dec, |
int64_t | pts, | ||
const uint8_t * | bitstream, | ||
uint32_t | num_bytes, | ||
int | frame_end | ||
) |
send what you have
References _vdec_hw_h264_dpb_draw_frames(), _vdec_hw_h264_flush_buffer(), _vdec_hw_h264_flush_slices(), _vdec_hw_h264_nal_unit(), BUF_PAD, DPB_DRAW_CLEAR, LOG_MODULE, lprintf, MAX_BUFFER_SIZE, MAX_POC, NAL_END_SEQUENCE, NAL_SLICE_IDR, NAL_SLICE_NO_IDR, v, VDEC_HW_H264_LOGG_DEBUG, and VDEC_HW_H264_LOGG_ERR.
Referenced by vdpau_h264_alter_decode_data().
int vdec_hw_h264_reset | ( | vdec_hw_h264_t * | dec | ) |
frame_delete () any held frames, set defaults
References _vdec_hw_h264_reset_sequence(), and vdec_hw_h264_s::ref_frames_used.
Referenced by vdec_hw_h264_delete(), and vdpau_h264_alter_reset().
int vdec_hw_h264_zero_pts | ( | vdec_hw_h264_t * | dec | ) |
zero all held frame pts
References vdec_hw_h264_frame_int_s::drop_pts, vdec_hw_h264_frame_int_s::f, vdec_hw_h264_s::frames, MAX_REF_FRAMES, vdec_hw_h264_frame_t::pts, vdec_hw_h264_s::ref_frames_used, and VDEC_HW_H264_FRAME_NEW_SEQ.
Referenced by vdpau_h264_alter_discontinuity().
|
static |
Referenced by _vdec_hw_h264_scaling_list_fallback_A(), and parse_scaling_list().
|
static |
Referenced by _vdec_hw_h264_scaling_list_fallback_A(), and parse_scaling_list().
|
static |
Referenced by _vdec_hw_h264_scaling_list_fallback_A(), and parse_scaling_list().
|
static |
Referenced by _vdec_hw_h264_scaling_list_fallback_A(), and parse_scaling_list().
|
static |
Referenced by _vdec_hw_h264_scaling_list_fallback_A(), and parse_scaling_list().
|
static |
Referenced by _vdec_hw_h264_scaling_list_fallback_A(), and parse_scaling_list().