Lines Matching refs:sps

139                                    const HEVCSPS *sps, RK_S32 is_slice_header)  in mpp_hevc_decode_short_term_rps()  argument
150 if (rps != sps->st_rps && sps->nb_st_rps) in mpp_hevc_decode_short_term_rps()
163 if (delta_idx > sps->nb_st_rps) { in mpp_hevc_decode_short_term_rps()
166 delta_idx, sps->nb_st_rps); in mpp_hevc_decode_short_term_rps()
169 rps_ridx = &sps->st_rps[sps->nb_st_rps - delta_idx]; in mpp_hevc_decode_short_term_rps()
171 rps_ridx = &sps->st_rps[rps - sps->st_rps - 1]; in mpp_hevc_decode_short_term_rps()
652 static RK_S32 compare_sps(HEVCSPS *openhevc_sps, HEVCSPS *sps) in compare_sps() argument
654 if (openhevc_sps->vps_id != sps->vps_id) { in compare_sps()
658 if (openhevc_sps->sps_id != sps->sps_id) { in compare_sps()
662 if (openhevc_sps->chroma_format_idc != sps->chroma_format_idc) { in compare_sps()
667 != sps->separate_colour_plane_flag) { in compare_sps()
672 if (openhevc_sps->output_width != sps->output_width) { in compare_sps()
676 if (openhevc_sps->output_height != sps->output_height) { in compare_sps()
681 if (openhevc_sps->bit_depth != sps->bit_depth) { in compare_sps()
685 if (openhevc_sps->bit_depth_chroma != sps->bit_depth_chroma) { in compare_sps()
689 if (openhevc_sps->pixel_shift != sps->pixel_shift) { in compare_sps()
695 if (openhevc_sps->log2_max_poc_lsb != sps->log2_max_poc_lsb) { in compare_sps()
699 if (openhevc_sps->pcm_enabled_flag != sps->pcm_enabled_flag) { in compare_sps()
704 if (openhevc_sps->max_sub_layers != sps->max_sub_layers) { in compare_sps()
709 if (openhevc_sps->scaling_list_enable_flag != sps->scaling_list_enable_flag) { in compare_sps()
714 if (openhevc_sps->nb_st_rps != sps->nb_st_rps) { in compare_sps()
719 if (openhevc_sps->amp_enabled_flag != sps->amp_enabled_flag) { in compare_sps()
720 …mpp_log(" amp_enabled_flag diff openhevc %d != %d\n", openhevc_sps->amp_enabled_flag, sps->amp_ena… in compare_sps()
723 if (openhevc_sps->sao_enabled != sps->sao_enabled) { in compare_sps()
729 != sps->long_term_ref_pics_present_flag) { in compare_sps()
734 sps->num_long_term_ref_pics_sps) { in compare_sps()
740 sps->sps_temporal_mvp_enabled_flag) { in compare_sps()
745 sps->sps_strong_intra_smoothing_enable_flag) { in compare_sps()
750 if (openhevc_sps->log2_min_cb_size != sps->log2_min_cb_size) { in compare_sps()
755 sps->log2_diff_max_min_coding_block_size) { in compare_sps()
759 if (openhevc_sps->log2_min_tb_size != sps->log2_min_tb_size) { in compare_sps()
763 if (openhevc_sps->log2_max_trafo_size != sps->log2_max_trafo_size) { in compare_sps()
767 if (openhevc_sps->log2_ctb_size != sps->log2_ctb_size) { in compare_sps()
771 if (openhevc_sps->log2_min_pu_size != sps->log2_min_pu_size) { in compare_sps()
777 sps->max_transform_hierarchy_depth_inter) { in compare_sps()
782 sps->max_transform_hierarchy_depth_intra) { in compare_sps()
787 if (openhevc_sps->width != sps->width) { in compare_sps()
792 if (openhevc_sps->height != sps->height) { in compare_sps()
797 if (openhevc_sps->ctb_width != sps->ctb_width) { in compare_sps()
802 if ( openhevc_sps->ctb_height != sps->ctb_height) { in compare_sps()
807 if (openhevc_sps->ctb_size != sps->ctb_size) { in compare_sps()
812 if (openhevc_sps->min_cb_width != sps->min_cb_width) { in compare_sps()
817 if (openhevc_sps->min_cb_height != sps->min_cb_height) { in compare_sps()
822 if (openhevc_sps->min_tb_width != sps->min_tb_width) { in compare_sps()
827 if (openhevc_sps->min_tb_height != sps->min_tb_height) { in compare_sps()
832 if (openhevc_sps->min_pu_width != sps->min_pu_width) { in compare_sps()
837 if (openhevc_sps->min_pu_height != sps->min_pu_height) { in compare_sps()
842 if (openhevc_sps->qp_bd_offset != sps->qp_bd_offset) { in compare_sps()
1179 static RK_S32 decode_vui(HEVCContext *s, HEVCSPS *sps) in decode_vui() argument
1181 VUI *vui = &sps->vui; in decode_vui()
1248 if (sps) { in decode_vui()
1249 if (sps->chroma_format_idc == H265_CHROMA_420) { in decode_vui()
1254 } else if (sps->chroma_format_idc == H265_CHROMA_422) { in decode_vui()
1289 decode_hrd(s, 1, sps->max_sub_layers); in decode_vui()
1339 static int scaling_list_data(HEVCContext *s, ScalingList *sl, HEVCSPS *sps) in scaling_list_data() argument
1396 if (sps->chroma_format_idc == H265_CHROMA_444) { in scaling_list_data()
1424 HEVCSPS *sps; in mpp_hevc_decode_nal_sps() local
1429 sps = (HEVCSPS*)sps_buf; in mpp_hevc_decode_nal_sps()
1435 READ_BITS(gb, 4, &sps->vps_id); in mpp_hevc_decode_nal_sps()
1436 if (sps->vps_id >= MAX_VPS_COUNT) { in mpp_hevc_decode_nal_sps()
1437 mpp_err( "VPS id out of range: %d\n", sps->vps_id); in mpp_hevc_decode_nal_sps()
1442 if (!s->vps_list[sps->vps_id]) { in mpp_hevc_decode_nal_sps()
1444 sps->vps_id); in mpp_hevc_decode_nal_sps()
1447 READ_BITS(gb, 3, &sps->max_sub_layers); in mpp_hevc_decode_nal_sps()
1448 sps->max_sub_layers += 1; in mpp_hevc_decode_nal_sps()
1450 if (sps->max_sub_layers > MAX_SUB_LAYERS) { in mpp_hevc_decode_nal_sps()
1452 sps->max_sub_layers); in mpp_hevc_decode_nal_sps()
1459 parse_ptl(s, &sps->ptl, sps->max_sub_layers); in mpp_hevc_decode_nal_sps()
1462 sps->sps_id = sps_id; in mpp_hevc_decode_nal_sps()
1469 READ_UE(gb, &sps->chroma_format_idc); in mpp_hevc_decode_nal_sps()
1471 if (sps->chroma_format_idc == H265_CHROMA_444) in mpp_hevc_decode_nal_sps()
1472 READ_ONEBIT(gb, &sps->separate_colour_plane_flag); in mpp_hevc_decode_nal_sps()
1474 READ_UE(gb, &sps->width); in mpp_hevc_decode_nal_sps()
1475 READ_UE(gb, &sps->height); in mpp_hevc_decode_nal_sps()
1480 READ_UE(gb, &sps->pic_conf_win.left_offset); in mpp_hevc_decode_nal_sps()
1481 READ_UE(gb, &sps->pic_conf_win.right_offset); in mpp_hevc_decode_nal_sps()
1482 READ_UE(gb, &sps->pic_conf_win.top_offset); in mpp_hevc_decode_nal_sps()
1483 READ_UE(gb, &sps->pic_conf_win.bottom_offset); in mpp_hevc_decode_nal_sps()
1484 if (sps->chroma_format_idc == H265_CHROMA_420) { in mpp_hevc_decode_nal_sps()
1485 sps->pic_conf_win.left_offset *= 2; in mpp_hevc_decode_nal_sps()
1486 sps->pic_conf_win.right_offset *= 2; in mpp_hevc_decode_nal_sps()
1487 sps->pic_conf_win.top_offset *= 2; in mpp_hevc_decode_nal_sps()
1488 sps->pic_conf_win.bottom_offset *= 2; in mpp_hevc_decode_nal_sps()
1489 } else if (sps->chroma_format_idc == H265_CHROMA_422) { in mpp_hevc_decode_nal_sps()
1490 sps->pic_conf_win.left_offset *= 2; in mpp_hevc_decode_nal_sps()
1491 sps->pic_conf_win.right_offset *= 2; in mpp_hevc_decode_nal_sps()
1493 sps->output_window = sps->pic_conf_win; in mpp_hevc_decode_nal_sps()
1496 READ_UE(gb, &sps->bit_depth); in mpp_hevc_decode_nal_sps()
1498 sps->bit_depth = sps->bit_depth + 8; in mpp_hevc_decode_nal_sps()
1501 sps->bit_depth_chroma = bit_depth_chroma; in mpp_hevc_decode_nal_sps()
1502 if (bit_depth_chroma != sps->bit_depth) { in mpp_hevc_decode_nal_sps()
1506 sps->bit_depth, bit_depth_chroma); in mpp_hevc_decode_nal_sps()
1511 switch (sps->chroma_format_idc) { in mpp_hevc_decode_nal_sps()
1513 sps->pix_fmt = MPP_FMT_YUV400; in mpp_hevc_decode_nal_sps()
1516 switch (sps->bit_depth) { in mpp_hevc_decode_nal_sps()
1517 case 8: sps->pix_fmt = MPP_FMT_YUV420SP; break; in mpp_hevc_decode_nal_sps()
1518 case 10: sps->pix_fmt = MPP_FMT_YUV420SP_10BIT; break; in mpp_hevc_decode_nal_sps()
1521 sps->bit_depth); in mpp_hevc_decode_nal_sps()
1527 switch (sps->bit_depth) { in mpp_hevc_decode_nal_sps()
1528 case 8: sps->pix_fmt = MPP_FMT_YUV422SP; break; in mpp_hevc_decode_nal_sps()
1529 case 10: sps->pix_fmt = MPP_FMT_YUV422SP_10BIT; break; in mpp_hevc_decode_nal_sps()
1532 sps->bit_depth); in mpp_hevc_decode_nal_sps()
1539 switch (sps->bit_depth) { in mpp_hevc_decode_nal_sps()
1540 case 8: sps->pix_fmt = MPP_FMT_YUV444SP; break; in mpp_hevc_decode_nal_sps()
1541 case 10: sps->pix_fmt = MPP_FMT_YUV444SP_10BIT; break; in mpp_hevc_decode_nal_sps()
1544 sps->bit_depth); in mpp_hevc_decode_nal_sps()
1552 sps->pixel_shift = sps->bit_depth > 8; in mpp_hevc_decode_nal_sps()
1554 READ_UE(gb, &sps->log2_max_poc_lsb); in mpp_hevc_decode_nal_sps()
1555 sps->log2_max_poc_lsb += 4; in mpp_hevc_decode_nal_sps()
1556 if (sps->log2_max_poc_lsb > 16) { in mpp_hevc_decode_nal_sps()
1558 sps->log2_max_poc_lsb - 4); in mpp_hevc_decode_nal_sps()
1565 start = sublayer_ordering_info ? 0 : sps->max_sub_layers - 1; in mpp_hevc_decode_nal_sps()
1566 for (i = start; i < sps->max_sub_layers; i++) { in mpp_hevc_decode_nal_sps()
1567 READ_UE(gb, &sps->temporal_layer[i].max_dec_pic_buffering) ; in mpp_hevc_decode_nal_sps()
1568 sps->temporal_layer[i].max_dec_pic_buffering += 1; in mpp_hevc_decode_nal_sps()
1569 READ_UE(gb, &sps->temporal_layer[i].num_reorder_pics); in mpp_hevc_decode_nal_sps()
1570 READ_UE(gb, &sps->temporal_layer[i].max_latency_increase ); in mpp_hevc_decode_nal_sps()
1571 sps->temporal_layer[i].max_latency_increase -= 1; in mpp_hevc_decode_nal_sps()
1572 if (sps->temporal_layer[i].max_dec_pic_buffering > MAX_DPB_SIZE) { in mpp_hevc_decode_nal_sps()
1574 sps->temporal_layer[i].max_dec_pic_buffering - 1); in mpp_hevc_decode_nal_sps()
1578 … if (sps->temporal_layer[i].num_reorder_pics > sps->temporal_layer[i].max_dec_pic_buffering - 1) { in mpp_hevc_decode_nal_sps()
1580 sps->temporal_layer[i].num_reorder_pics); in mpp_hevc_decode_nal_sps()
1581 if (sps->temporal_layer[i].num_reorder_pics > MAX_DPB_SIZE - 1) { in mpp_hevc_decode_nal_sps()
1585sps->temporal_layer[i].max_dec_pic_buffering = sps->temporal_layer[i].num_reorder_pics + 1; in mpp_hevc_decode_nal_sps()
1591sps->temporal_layer[i].max_dec_pic_buffering = sps->temporal_layer[start].max_dec_pic_buffering; in mpp_hevc_decode_nal_sps()
1592sps->temporal_layer[i].num_reorder_pics = sps->temporal_layer[start].num_reorder_pics; in mpp_hevc_decode_nal_sps()
1593sps->temporal_layer[i].max_latency_increase = sps->temporal_layer[start].max_latency_increase; in mpp_hevc_decode_nal_sps()
1603 sps->ptl.general_ptl.progressive_source_flag, in mpp_hevc_decode_nal_sps()
1604 sps->ptl.general_ptl.interlaced_source_flag); in mpp_hevc_decode_nal_sps()
1605 if (!sps->ptl.general_ptl.progressive_source_flag && in mpp_hevc_decode_nal_sps()
1606 sps->ptl.general_ptl.interlaced_source_flag) { in mpp_hevc_decode_nal_sps()
1607 for (i = 0; i < sps->max_sub_layers; i++) { in mpp_hevc_decode_nal_sps()
1608 sps->temporal_layer[i].num_reorder_pics += 2; in mpp_hevc_decode_nal_sps()
1613 READ_UE(gb, &sps->log2_min_cb_size) ; in mpp_hevc_decode_nal_sps()
1614 if (sps->log2_min_cb_size > (LOG2_MAX_CU_SIZE - 3)) { in mpp_hevc_decode_nal_sps()
1619 sps->log2_min_cb_size += 3; in mpp_hevc_decode_nal_sps()
1621 h265d_dbg(H265D_DBG_SPS, "sps->log2_min_cb_size %d", sps->log2_min_cb_size); in mpp_hevc_decode_nal_sps()
1622 READ_UE(gb, &sps->log2_diff_max_min_coding_block_size); in mpp_hevc_decode_nal_sps()
1623 if (sps->log2_diff_max_min_coding_block_size > (LOG2_MAX_CU_SIZE - LOG2_MIN_CU_SIZE)) { in mpp_hevc_decode_nal_sps()
1629 …h265d_dbg(H265D_DBG_SPS, "sps->log2_diff_max_min_coding_block_size %d", sps->log2_diff_max_min_cod… in mpp_hevc_decode_nal_sps()
1630 READ_UE(gb, &sps->log2_min_tb_size); in mpp_hevc_decode_nal_sps()
1631 if (sps->log2_min_tb_size > (LOG2_MAX_TU_SIZE - 2)) { in mpp_hevc_decode_nal_sps()
1636 sps->log2_min_tb_size += 2; in mpp_hevc_decode_nal_sps()
1638 h265d_dbg(H265D_DBG_SPS, "sps->log2_min_tb_size %d", sps->log2_min_tb_size); in mpp_hevc_decode_nal_sps()
1648 sps->log2_max_trafo_size = log2_diff_max_min_transform_block_size + in mpp_hevc_decode_nal_sps()
1649 sps->log2_min_tb_size; in mpp_hevc_decode_nal_sps()
1651 h265d_dbg(H265D_DBG_SPS, "sps->log2_max_trafo_size %d", sps->log2_max_trafo_size); in mpp_hevc_decode_nal_sps()
1653 if (sps->log2_min_tb_size >= sps->log2_min_cb_size) { in mpp_hevc_decode_nal_sps()
1659 READ_UE(gb, &sps->max_transform_hierarchy_depth_inter); in mpp_hevc_decode_nal_sps()
1660 READ_UE(gb, &sps->max_transform_hierarchy_depth_intra); in mpp_hevc_decode_nal_sps()
1663 READ_ONEBIT(gb, &sps->scaling_list_enable_flag ); in mpp_hevc_decode_nal_sps()
1665 if (sps->scaling_list_enable_flag) { in mpp_hevc_decode_nal_sps()
1667 set_default_scaling_list_data(&sps->scaling_list); in mpp_hevc_decode_nal_sps()
1670 ret = scaling_list_data(s, &sps->scaling_list, sps); in mpp_hevc_decode_nal_sps()
1678 READ_ONEBIT(gb, &sps->amp_enabled_flag); in mpp_hevc_decode_nal_sps()
1679 READ_ONEBIT(gb, &sps->sao_enabled); in mpp_hevc_decode_nal_sps()
1680 READ_ONEBIT(gb, &sps->pcm_enabled_flag); in mpp_hevc_decode_nal_sps()
1682 h265d_dbg(H265D_DBG_SPS, "sps->amp_enabled_flag = %d", sps->amp_enabled_flag); in mpp_hevc_decode_nal_sps()
1683 h265d_dbg(H265D_DBG_SPS, "sps->sao_enabled = %d", sps->sao_enabled); in mpp_hevc_decode_nal_sps()
1684 h265d_dbg(H265D_DBG_SPS, "sps->pcm_enabled_flag = %d", sps->pcm_enabled_flag); in mpp_hevc_decode_nal_sps()
1686 if (sps->pcm_enabled_flag) { in mpp_hevc_decode_nal_sps()
1687 READ_BITS(gb, 4, &sps->pcm.bit_depth); in mpp_hevc_decode_nal_sps()
1688 sps->pcm.bit_depth += 1; in mpp_hevc_decode_nal_sps()
1689 READ_BITS(gb, 4, &sps->pcm.bit_depth_chroma); in mpp_hevc_decode_nal_sps()
1690 sps->pcm.bit_depth_chroma += 1; in mpp_hevc_decode_nal_sps()
1691 READ_UE(gb, &sps->pcm.log2_min_pcm_cb_size ); in mpp_hevc_decode_nal_sps()
1692 sps->pcm.log2_min_pcm_cb_size += 3; in mpp_hevc_decode_nal_sps()
1694 sps->pcm.log2_max_pcm_cb_size = sps->pcm.log2_min_pcm_cb_size + value; in mpp_hevc_decode_nal_sps()
1696 if (sps->pcm.bit_depth > sps->bit_depth) { in mpp_hevc_decode_nal_sps()
1699 sps->pcm.bit_depth, sps->bit_depth); in mpp_hevc_decode_nal_sps()
1703 READ_ONEBIT(gb, &sps->pcm.loop_filter_disable_flag); in mpp_hevc_decode_nal_sps()
1706 READ_UE(gb, &sps->nb_st_rps); in mpp_hevc_decode_nal_sps()
1707 if (sps->nb_st_rps > MAX_SHORT_TERM_RPS_COUNT) { in mpp_hevc_decode_nal_sps()
1709 sps->nb_st_rps); in mpp_hevc_decode_nal_sps()
1713 for (i = 0; (RK_U32)i < sps->nb_st_rps; i++) { in mpp_hevc_decode_nal_sps()
1714 if ((ret = mpp_hevc_decode_short_term_rps(s, &sps->st_rps[i], in mpp_hevc_decode_nal_sps()
1715 sps, 0)) < 0) in mpp_hevc_decode_nal_sps()
1719 READ_ONEBIT(gb, &sps->long_term_ref_pics_present_flag); in mpp_hevc_decode_nal_sps()
1720 if (sps->long_term_ref_pics_present_flag) { in mpp_hevc_decode_nal_sps()
1721 READ_UE(gb, &sps->num_long_term_ref_pics_sps); in mpp_hevc_decode_nal_sps()
1722 for (i = 0; (RK_U8)i < sps->num_long_term_ref_pics_sps; i++) { in mpp_hevc_decode_nal_sps()
1723 READ_BITS(gb, sps->log2_max_poc_lsb, &sps->lt_ref_pic_poc_lsb_sps[i]); in mpp_hevc_decode_nal_sps()
1724 READ_ONEBIT(gb, &sps->used_by_curr_pic_lt_sps_flag[i]); in mpp_hevc_decode_nal_sps()
1728 READ_ONEBIT(gb, &sps->sps_temporal_mvp_enabled_flag); in mpp_hevc_decode_nal_sps()
1732 READ_ONEBIT(gb, &sps->set_mfm_enabled_flag); in mpp_hevc_decode_nal_sps()
1734 READ_ONEBIT(gb, &sps->sps_strong_intra_smoothing_enable_flag); in mpp_hevc_decode_nal_sps()
1736 sps->vui.sar.num = 0; in mpp_hevc_decode_nal_sps()
1737 sps->vui.sar.den = 1; in mpp_hevc_decode_nal_sps()
1740 decode_vui(s, sps); in mpp_hevc_decode_nal_sps()
1744 sps->scaled_ref_layer_window.left_offset = (value << 1); in mpp_hevc_decode_nal_sps()
1746 sps->scaled_ref_layer_window.top_offset = (value << 1); in mpp_hevc_decode_nal_sps()
1748 sps->scaled_ref_layer_window.right_offset = (value << 1); in mpp_hevc_decode_nal_sps()
1750 sps->scaled_ref_layer_window.bottom_offset = (value << 1); in mpp_hevc_decode_nal_sps()
1754 READ_ONEBIT(gb, &sps->sps_extension_flag); in mpp_hevc_decode_nal_sps()
1755 if (sps->sps_extension_flag) { // sps_extension_flag in mpp_hevc_decode_nal_sps()
1756 READ_ONEBIT(gb, &sps->sps_range_extension_flag); in mpp_hevc_decode_nal_sps()
1758 if (sps->sps_range_extension_flag) { in mpp_hevc_decode_nal_sps()
1759 READ_ONEBIT(gb, &sps->transform_skip_rotation_enabled_flag); in mpp_hevc_decode_nal_sps()
1760 READ_ONEBIT(gb, &sps->transform_skip_context_enabled_flag); in mpp_hevc_decode_nal_sps()
1761 READ_ONEBIT(gb, &sps->implicit_rdpcm_enabled_flag); in mpp_hevc_decode_nal_sps()
1762 READ_ONEBIT(gb, &sps->explicit_rdpcm_enabled_flag); in mpp_hevc_decode_nal_sps()
1764 READ_ONEBIT(gb, &sps->extended_precision_processing_flag); in mpp_hevc_decode_nal_sps()
1765 if (sps->extended_precision_processing_flag) in mpp_hevc_decode_nal_sps()
1768 READ_ONEBIT(gb, &sps->intra_smoothing_disabled_flag); in mpp_hevc_decode_nal_sps()
1769 READ_ONEBIT(gb, &sps->high_precision_offsets_enabled_flag); in mpp_hevc_decode_nal_sps()
1770 if (sps->high_precision_offsets_enabled_flag) in mpp_hevc_decode_nal_sps()
1773 READ_ONEBIT(gb, &sps->persistent_rice_adaptation_enabled_flag); in mpp_hevc_decode_nal_sps()
1775 READ_ONEBIT(gb, &sps->cabac_bypass_alignment_enabled_flag); in mpp_hevc_decode_nal_sps()
1776 if (sps->cabac_bypass_alignment_enabled_flag) in mpp_hevc_decode_nal_sps()
1782 sps->output_window.left_offset += sps->vui.def_disp_win.left_offset; in mpp_hevc_decode_nal_sps()
1783 sps->output_window.right_offset += sps->vui.def_disp_win.right_offset; in mpp_hevc_decode_nal_sps()
1784 sps->output_window.top_offset += sps->vui.def_disp_win.top_offset; in mpp_hevc_decode_nal_sps()
1785 sps->output_window.bottom_offset += sps->vui.def_disp_win.bottom_offset; in mpp_hevc_decode_nal_sps()
1788 if (sps->output_window.left_offset & (0x1F >> (sps->pixel_shift))) { in mpp_hevc_decode_nal_sps()
1789 sps->output_window.left_offset &= ~(0x1F >> (sps->pixel_shift)); in mpp_hevc_decode_nal_sps()
1792 sps->output_window.left_offset); in mpp_hevc_decode_nal_sps()
1795 sps->output_width = sps->width - in mpp_hevc_decode_nal_sps()
1796 (sps->output_window.left_offset + sps->output_window.right_offset); in mpp_hevc_decode_nal_sps()
1797 sps->output_height = sps->height - in mpp_hevc_decode_nal_sps()
1798 (sps->output_window.top_offset + sps->output_window.bottom_offset); in mpp_hevc_decode_nal_sps()
1799 if (sps->output_width <= 0 || sps->output_height <= 0) { in mpp_hevc_decode_nal_sps()
1801 sps->output_width, sps->output_height); in mpp_hevc_decode_nal_sps()
1809 sps->pic_conf_win.left_offset = 0; in mpp_hevc_decode_nal_sps()
1810 sps->pic_conf_win.right_offset = 0; in mpp_hevc_decode_nal_sps()
1811 sps->pic_conf_win.top_offset = 0; in mpp_hevc_decode_nal_sps()
1812 sps->pic_conf_win.bottom_offset = 0; in mpp_hevc_decode_nal_sps()
1813 sps->output_width = sps->width; in mpp_hevc_decode_nal_sps()
1814 sps->output_height = sps->height; in mpp_hevc_decode_nal_sps()
1820 s->h265dctx->width = sps->output_width; in mpp_hevc_decode_nal_sps()
1821 s->h265dctx->height = sps->output_height; in mpp_hevc_decode_nal_sps()
1825 sps->log2_ctb_size = sps->log2_min_cb_size + sps->log2_diff_max_min_coding_block_size; in mpp_hevc_decode_nal_sps()
1827 …n_cb_size = %d sps->log2_diff_max_min_coding_block_size = %d", sps->log2_min_cb_size, sps->log2_di… in mpp_hevc_decode_nal_sps()
1829 h265d_dbg(H265D_DBG_SPS, "plus sps->log2_ctb_size %d", sps->log2_ctb_size); in mpp_hevc_decode_nal_sps()
1830 sps->log2_min_pu_size = sps->log2_min_cb_size - 1; in mpp_hevc_decode_nal_sps()
1832 sps->ctb_width = (sps->width + (1 << sps->log2_ctb_size) - 1) >> sps->log2_ctb_size; in mpp_hevc_decode_nal_sps()
1833 sps->ctb_height = (sps->height + (1 << sps->log2_ctb_size) - 1) >> sps->log2_ctb_size; in mpp_hevc_decode_nal_sps()
1834 sps->ctb_size = sps->ctb_width * sps->ctb_height; in mpp_hevc_decode_nal_sps()
1836 sps->min_cb_width = sps->width >> sps->log2_min_cb_size; in mpp_hevc_decode_nal_sps()
1837 sps->min_cb_height = sps->height >> sps->log2_min_cb_size; in mpp_hevc_decode_nal_sps()
1838 sps->min_tb_width = sps->width >> sps->log2_min_tb_size; in mpp_hevc_decode_nal_sps()
1839 sps->min_tb_height = sps->height >> sps->log2_min_tb_size; in mpp_hevc_decode_nal_sps()
1840 sps->min_pu_width = sps->width >> sps->log2_min_pu_size; in mpp_hevc_decode_nal_sps()
1841 sps->min_pu_height = sps->height >> sps->log2_min_pu_size; in mpp_hevc_decode_nal_sps()
1843 sps->qp_bd_offset = 6 * (sps->bit_depth - 8); in mpp_hevc_decode_nal_sps()
1845 if (sps->width & ((1 << sps->log2_min_cb_size) - 1) || in mpp_hevc_decode_nal_sps()
1846 sps->height & ((1 << sps->log2_min_cb_size) - 1)) { in mpp_hevc_decode_nal_sps()
1851 if (sps->log2_ctb_size > MAX_LOG2_CTB_SIZE) { in mpp_hevc_decode_nal_sps()
1852 mpp_err( "CTB size out of range: 2^%d\n", sps->log2_ctb_size); in mpp_hevc_decode_nal_sps()
1855 …if (sps->max_transform_hierarchy_depth_inter > (RK_S32)(sps->log2_ctb_size - sps->log2_min_tb_size… in mpp_hevc_decode_nal_sps()
1857 sps->max_transform_hierarchy_depth_inter); in mpp_hevc_decode_nal_sps()
1860 …if (sps->max_transform_hierarchy_depth_intra > (RK_S32)(sps->log2_ctb_size - sps->log2_min_tb_size… in mpp_hevc_decode_nal_sps()
1862 sps->max_transform_hierarchy_depth_intra); in mpp_hevc_decode_nal_sps()
1865 h265d_dbg(H265D_DBG_SPS, "sps->log2_ctb_size %d", sps->log2_ctb_size); in mpp_hevc_decode_nal_sps()
1866 if (sps->log2_max_trafo_size > (RK_U32)MPP_MIN(sps->log2_ctb_size, 5)) { in mpp_hevc_decode_nal_sps()
1869 sps->log2_max_trafo_size); in mpp_hevc_decode_nal_sps()
1874 HEVCSPS *openhevc_sps = (HEVCSPS *)&info->sps[sps_id]; in mpp_hevc_decode_nal_sps()
1929 HEVCSPS *sps = NULL; in mpp_hevc_decode_nal_pps() local
1977 sps = (HEVCSPS *)s->sps_list[pps->sps_id]; in mpp_hevc_decode_nal_pps()
2043 … if (sps->width > max_supt_width || (sps->height > max_supt_height && pps->tiles_enabled_flag) in mpp_hevc_decode_nal_pps()
2044 || sps->width * sps->height > max_supt_width * max_supt_width) { in mpp_hevc_decode_nal_pps()
2046 sps->width, sps->height, max_supt_width, max_supt_height); in mpp_hevc_decode_nal_pps()
2050 if (sps->width * sps->height > PIXW_8Kx4K * PIXW_8Kx4K * hw_info->cap_core_num) { in mpp_hevc_decode_nal_pps()
2052 sps->width, sps->height, PIXW_8Kx4K, PIXW_8Kx4K); in mpp_hevc_decode_nal_pps()
2064 pps->num_tile_columns >= sps->width) { in mpp_hevc_decode_nal_pps()
2071 pps->num_tile_rows >= sps->height) { in mpp_hevc_decode_nal_pps()
2103 if (sum >= sps->ctb_width) { in mpp_hevc_decode_nal_pps()
2108 bufs->column_width[pps->num_tile_columns - 1] = sps->ctb_width - sum; in mpp_hevc_decode_nal_pps()
2116 if (sum >= sps->ctb_height) { in mpp_hevc_decode_nal_pps()
2121 bufs->row_height[pps->num_tile_rows - 1] = sps->ctb_height - sum; in mpp_hevc_decode_nal_pps()
2154 ret = scaling_list_data(s, &pps->scaling_list, sps); in mpp_hevc_decode_nal_pps()
2170 if (pps->log2_parallel_merge_level > sps->log2_ctb_size) { in mpp_hevc_decode_nal_pps()
2215 bufs->column_width[i] = ((i + 1) * sps->ctb_width) / pps->num_tile_columns - in mpp_hevc_decode_nal_pps()
2216 (i * sps->ctb_width) / pps->num_tile_columns; in mpp_hevc_decode_nal_pps()
2220 bufs->row_height[i] = ((i + 1) * sps->ctb_height) / pps->num_tile_rows - in mpp_hevc_decode_nal_pps()
2221 (i * sps->ctb_height) / pps->num_tile_rows; in mpp_hevc_decode_nal_pps()