summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--common/ih264_chroma_intra_pred_filters.c2
-rw-r--r--common/x86/ih264_inter_pred_filters_ssse3.c10
-rw-r--r--common/x86/ih264_iquant_itrans_recon_dc_ssse3.c26
-rw-r--r--decoder/ih264d_api.c8
-rw-r--r--decoder/ih264d_parse_islice.c14
-rw-r--r--decoder/ih264d_parse_slice.c2
-rw-r--r--decoder/ih264d_process_intra_mb.c5
-rw-r--r--encoder/ih264e_api.c12
-rw-r--r--encoder/irc_rd_model.c11
-rw-r--r--encoder/x86/ime_distortion_metrics_sse42.c4
10 files changed, 55 insertions, 39 deletions
diff --git a/common/ih264_chroma_intra_pred_filters.c b/common/ih264_chroma_intra_pred_filters.c
index ee145e5..1894bfc 100644
--- a/common/ih264_chroma_intra_pred_filters.c
+++ b/common/ih264_chroma_intra_pred_filters.c
@@ -117,7 +117,6 @@ void ih264_intra_pred_chroma_8x8_mode_dc(UWORD8 *pu1_src,
WORD32 top_avail; /* availability of top predictors (only for DC) */
UWORD8 *pu1_left = NULL; /* Pointer to start of left predictors */
UWORD8 *pu1_top = NULL; /* Pointer to start of top predictors */
- UNUSED(src_strd);
/* temporary variables to store accumulated first left half,second left half,
* first top half,second top half of U and V values*/
@@ -127,6 +126,7 @@ void ih264_intra_pred_chroma_8x8_mode_dc(UWORD8 *pu1_src,
WORD32 val_u1 = 0, val_u2 = 0, val_v1 = 0, val_v2 = 0;
WORD32 col, row; /*loop variables*/
+ UNUSED(src_strd);
left_avail = ngbr_avail & 0x11;
left_avail1 = ngbr_avail & 1;
diff --git a/common/x86/ih264_inter_pred_filters_ssse3.c b/common/x86/ih264_inter_pred_filters_ssse3.c
index c8537da..480a8c7 100644
--- a/common/x86/ih264_inter_pred_filters_ssse3.c
+++ b/common/x86/ih264_inter_pred_filters_ssse3.c
@@ -1171,8 +1171,6 @@ void ih264_inter_pred_luma_horz_hpel_vert_hpel_ssse3(UWORD8 *pu1_src,
// Horizontal 6-tap filtering
{
- ht_tmp = ht + 5;
-
__m128i src_r0_16x8b, src_r1_16x8b, src_r0_sht_16x8b, src_r1_sht_16x8b;
__m128i src_r0_t1_16x8b, src_r1_t1_16x8b;
@@ -1181,6 +1179,8 @@ void ih264_inter_pred_luma_horz_hpel_vert_hpel_ssse3(UWORD8 *pu1_src,
__m128i coeff0_1_16x8b, coeff2_3_16x8b, coeff4_5_16x8b;
+ ht_tmp = ht + 5;
+
coeff0_1_16x8b = _mm_set1_epi32(0xFB01FB01); //c0 c1 c0 c1 c0 c1 c0 c1 c0 c1 c0 c1 c0 c1 c0 c1
coeff2_3_16x8b = _mm_set1_epi32(0x14141414); //c2 c3 c2 c3 c2 c3 c2 c3 c2 c3 c2 c3 c2 c3 c2 c3
coeff4_5_16x8b = _mm_set1_epi32(0x01FB01FB); //c4 c5 c5 c5 c4 c5 c5 c5 c4 c5 c5 c5 c4 c5 c5 c5
@@ -2121,6 +2121,9 @@ void ih264_inter_pred_luma_horz_qpel_vert_qpel_ssse3(UWORD8 *pu1_src,
UWORD8 *pu1_tmp1, *pu1_tmp2;
WORD32 x_offset, y_offset;
+ __m128i coeff0_1_16x8b, coeff2_3_16x8b, coeff4_5_16x8b;
+ __m128i const_val16_8x16b;
+
pu1_tmp1 = pu1_tmp;
dydx &= 0xf;
@@ -2133,9 +2136,6 @@ void ih264_inter_pred_luma_horz_qpel_vert_qpel_ssse3(UWORD8 *pu1_src,
pu1_pred_horiz = pu1_src + (y_offset >> 1) * src_strd - 2;
//the filter input starts from x[-2] (till x[3])
- __m128i coeff0_1_16x8b, coeff2_3_16x8b, coeff4_5_16x8b;
- __m128i const_val16_8x16b;
-
coeff0_1_16x8b = _mm_set1_epi32(0xFB01FB01); //c0 c1 c0 c1 c0 c1 c0 c1 c0 c1 c0 c1 c0 c1 c0 c1
coeff2_3_16x8b = _mm_set1_epi32(0x14141414); //c2 c3 c2 c3 c2 c3 c2 c3 c2 c3 c2 c3 c2 c3 c2 c3
coeff4_5_16x8b = _mm_set1_epi32(0x01FB01FB); //c4 c5 c5 c5 c4 c5 c5 c5 c4 c5 c5 c5 c4 c5 c5 c5
diff --git a/common/x86/ih264_iquant_itrans_recon_dc_ssse3.c b/common/x86/ih264_iquant_itrans_recon_dc_ssse3.c
index 83a23ac..bcfe503 100644
--- a/common/x86/ih264_iquant_itrans_recon_dc_ssse3.c
+++ b/common/x86/ih264_iquant_itrans_recon_dc_ssse3.c
@@ -113,6 +113,13 @@ void ih264_iquant_itrans_recon_4x4_dc_ssse3(WORD16 *pi2_src,
UWORD32 *pu4_out = (UWORD32 *)pu1_out;
WORD32 q0 = pi2_src[0];
WORD16 i_macro, rnd_fact = (u4_qp_div_6 < 4) ? 1 << (3 - u4_qp_div_6) : 0;
+
+ __m128i predload_r,pred_r0, pred_r1, pred_r2, pred_r3;
+ __m128i sign_reg;
+ __m128i zero_8x16b = _mm_setzero_si128(); // all bits reset to zero
+ __m128i temp4, temp5, temp6, temp7;
+ __m128i value_add;
+
UNUSED (pi2_tmp);
INV_QUANT(q0, pu2_iscal_mat[0], pu2_weigh_mat[0], u4_qp_div_6, rnd_fact, 4);
@@ -122,11 +129,7 @@ void ih264_iquant_itrans_recon_4x4_dc_ssse3(WORD16 *pi2_src,
i_macro = ((q0 + 32) >> 6);
- __m128i predload_r,pred_r0, pred_r1, pred_r2, pred_r3;
- __m128i sign_reg;
- __m128i zero_8x16b = _mm_setzero_si128(); // all bits reset to zero
- __m128i temp4, temp5, temp6, temp7;
- __m128i value_add = _mm_set1_epi16(i_macro);
+ value_add = _mm_set1_epi16(i_macro);
zero_8x16b = _mm_setzero_si128(); // all bits reset to zero
//Load pred buffer
@@ -235,6 +238,13 @@ void ih264_iquant_itrans_recon_8x8_dc_ssse3 (WORD16 *pi2_src,
{
WORD32 q0 = pi2_src[0];
WORD16 i_macro, rnd_fact = (qp_div < 6) ? 1 << (5 - qp_div) : 0;
+
+ __m128i predload_r,pred_r0, pred_r1, pred_r2, pred_r3,pred_r4,pred_r5,pred_r6,pred_r7;
+ __m128i sign_reg;
+ __m128i zero_8x16b = _mm_setzero_si128(); // all bits reset to zero
+ __m128i temp1,temp2,temp3,temp4, temp5, temp6, temp7,temp8;
+ __m128i value_add;
+
UNUSED (pi2_tmp);
UNUSED (iq_start_idx);
UNUSED (pi2_dc_ld_addr);
@@ -242,11 +252,7 @@ void ih264_iquant_itrans_recon_8x8_dc_ssse3 (WORD16 *pi2_src,
INV_QUANT(q0, pu2_iscale_mat[0], pu2_weigh_mat[0], qp_div, rnd_fact, 6);
i_macro = ((q0 + 32) >> 6);
- __m128i predload_r,pred_r0, pred_r1, pred_r2, pred_r3,pred_r4,pred_r5,pred_r6,pred_r7;
- __m128i sign_reg;
- __m128i zero_8x16b = _mm_setzero_si128(); // all bits reset to zero
- __m128i temp1,temp2,temp3,temp4, temp5, temp6, temp7,temp8;
- __m128i value_add = _mm_set1_epi16(i_macro);
+ value_add = _mm_set1_epi16(i_macro);
//Load pred buffer row 0
predload_r = _mm_loadl_epi64((__m128i *)(&pu1_pred[0])); //p0 p1 p2 p3 p4 p5 p6 p7 0 0 0 0 0 0 0 0 -- all 8 bits
diff --git a/decoder/ih264d_api.c b/decoder/ih264d_api.c
index 332e4ad..6ea75c6 100644
--- a/decoder/ih264d_api.c
+++ b/decoder/ih264d_api.c
@@ -2431,9 +2431,9 @@ WORD32 ih264d_init(iv_obj_t *dec_hdl, void *pv_api_ip, void *pv_api_op)
{
ih264d_init_ip_t *ps_init_ip;
ih264d_init_op_t *ps_init_op;
+ WORD32 init_status = IV_SUCCESS;
ps_init_ip = (ih264d_init_ip_t *)pv_api_ip;
ps_init_op = (ih264d_init_op_t *)pv_api_op;
- WORD32 init_status = IV_SUCCESS;
init_status = ih264d_init_video_decoder(dec_hdl, ps_init_ip, ps_init_op);
@@ -2592,11 +2592,11 @@ WORD32 ih264d_video_decode(iv_obj_t *dec_hdl, void *pv_api_ip, void *pv_api_op)
WORD32 ret,api_ret_value = IV_SUCCESS;
WORD32 header_data_left = 0,frame_data_left = 0;
UWORD8 *pu1_bitstrm_buf;
- ithread_set_name((void*)"Parse_thread");
-
-
ivd_video_decode_ip_t *ps_dec_ip;
ivd_video_decode_op_t *ps_dec_op;
+
+ ithread_set_name((void*)"Parse_thread");
+
ps_dec_ip = (ivd_video_decode_ip_t *)pv_api_ip;
ps_dec_op = (ivd_video_decode_op_t *)pv_api_op;
ps_dec->pv_dec_out = ps_dec_op;
diff --git a/decoder/ih264d_parse_islice.c b/decoder/ih264d_parse_islice.c
index 534c785..1e4fdfa 100644
--- a/decoder/ih264d_parse_islice.c
+++ b/decoder/ih264d_parse_islice.c
@@ -132,21 +132,23 @@ WORD32 ih264d_parse_imb_cavlc(dec_struct_t * ps_dec,
/*--------------------------------------------------------------------*/
if (!ps_cur_mb_info->u1_tran_form8x8)
{
+ UWORD8 *pu1_temp;
ih264d_read_intra_pred_modes(ps_dec,
((UWORD8 *)ps_dec->pv_parse_tu_coeff_data),
((UWORD8 *)ps_dec->pv_parse_tu_coeff_data+16),
ps_cur_mb_info->u1_tran_form8x8);
- UWORD8 *pu1_temp = (UWORD8 *)ps_dec->pv_parse_tu_coeff_data;
+ pu1_temp = (UWORD8 *)ps_dec->pv_parse_tu_coeff_data;
pu1_temp += 32;
ps_dec->pv_parse_tu_coeff_data = (void *)pu1_temp;
}
else
{
+ UWORD8 *pu1_temp;
ih264d_read_intra_pred_modes(ps_dec,
((UWORD8 *)ps_dec->pv_parse_tu_coeff_data),
((UWORD8 *)ps_dec->pv_parse_tu_coeff_data+4),
ps_cur_mb_info->u1_tran_form8x8);
- UWORD8 *pu1_temp = (UWORD8 *)ps_dec->pv_parse_tu_coeff_data;
+ pu1_temp = (UWORD8 *)ps_dec->pv_parse_tu_coeff_data;
pu1_temp += 8;
ps_dec->pv_parse_tu_coeff_data = (void *)pu1_temp;
}
@@ -403,8 +405,8 @@ WORD32 ih264d_parse_imb_cavlc(dec_struct_t * ps_dec,
(tu_sblk4x4_coeff_data_t *)ps_dec->pv_parse_tu_coeff_data;
WORD16 *pi2_coeff_block =
(WORD16 *)ps_dec->pv_parse_tu_coeff_data;
- ps_tu_4x4->u2_sig_coeff_map = 0;
UWORD32 u4_num_coeff;
+ ps_tu_4x4->u2_sig_coeff_map = 0;
ret = ps_dec->pf_cavlc_parse4x4coeff[(ui_N > 7)](pi2_dc_coef, 0, ui_N,
ps_dec, &u4_num_coeff);
@@ -542,23 +544,25 @@ WORD32 ih264d_parse_imb_cabac(dec_struct_t * ps_dec,
/*--------------------------------------------------------------------*/
if (!ps_cur_mb_info->u1_tran_form8x8)
{
+ UWORD8 *pu1_temp;
ih264d_read_intra_pred_modes_cabac(
ps_dec,
((UWORD8 *)ps_dec->pv_parse_tu_coeff_data),
((UWORD8 *)ps_dec->pv_parse_tu_coeff_data+16),
ps_cur_mb_info->u1_tran_form8x8);
- UWORD8 *pu1_temp = (UWORD8 *)ps_dec->pv_parse_tu_coeff_data;
+ pu1_temp = (UWORD8 *)ps_dec->pv_parse_tu_coeff_data;
pu1_temp += 32;
ps_dec->pv_parse_tu_coeff_data = (void *)pu1_temp;
}
else
{
+ UWORD8 *pu1_temp;
ih264d_read_intra_pred_modes_cabac(
ps_dec,
((UWORD8 *)ps_dec->pv_parse_tu_coeff_data),
((UWORD8 *)ps_dec->pv_parse_tu_coeff_data+4),
ps_cur_mb_info->u1_tran_form8x8);
- UWORD8 *pu1_temp = (UWORD8 *)ps_dec->pv_parse_tu_coeff_data;
+ pu1_temp = (UWORD8 *)ps_dec->pv_parse_tu_coeff_data;
pu1_temp += 8;
ps_dec->pv_parse_tu_coeff_data = (void *)pu1_temp;
}
diff --git a/decoder/ih264d_parse_slice.c b/decoder/ih264d_parse_slice.c
index 73073c7..eef9db5 100644
--- a/decoder/ih264d_parse_slice.c
+++ b/decoder/ih264d_parse_slice.c
@@ -447,8 +447,8 @@ WORD32 ih264d_start_of_pic(dec_struct_t *ps_dec,
if(!ps_dec->ps_cur_pic)
{
- H264_DEC_DEBUG_PRINT("------- Display Buffers Reset --------\n");
WORD32 j;
+ H264_DEC_DEBUG_PRINT("------- Display Buffers Reset --------\n");
for(j = 0; j < MAX_DISP_BUFS_NEW; j++)
{
diff --git a/decoder/ih264d_process_intra_mb.c b/decoder/ih264d_process_intra_mb.c
index 72ad9c8..dde2a7e 100644
--- a/decoder/ih264d_process_intra_mb.c
+++ b/decoder/ih264d_process_intra_mb.c
@@ -1944,11 +1944,12 @@ WORD32 ih264d_process_intra_mb(dec_struct_t * ps_dec,
UWORD8 *pu1_ngbr_pels = (UWORD8 *)au2_ngbr_pels;
UWORD16 *pu2_left_uv;
UWORD16 *pu2_topleft_uv;
- pu2_topleft_uv = (UWORD16 *)pu1_u_top_left;
- pu2_left_uv = (UWORD16 *)pu1_uleft;
WORD32 use_left1 = (u2_use_left_mb_pack & 0x0ff);
WORD32 use_left2 = (u2_use_left_mb_pack & 0xff00) >> 8;
+ pu2_topleft_uv = (UWORD16 *)pu1_u_top_left;
+ pu2_left_uv = (UWORD16 *)pu1_uleft;
+
/* Get neighbour pixels */
/* left pels */
if(u2_use_left_mb_pack)
diff --git a/encoder/ih264e_api.c b/encoder/ih264e_api.c
index 0dec740..96122de 100644
--- a/encoder/ih264e_api.c
+++ b/encoder/ih264e_api.c
@@ -2624,10 +2624,11 @@ static WORD32 ih264e_init(codec_t *ps_codec)
*/
static WORD32 ih264e_get_num_rec(void *pv_api_ip, void *pv_api_op)
{
- UNUSED(pv_api_ip);
/* api call I/O structures */
ih264e_num_mem_rec_op_t *ps_op = pv_api_op;
+ UNUSED(pv_api_ip);
+
ps_op->s_ive_op.u4_num_mem_rec = MEM_REC_CNT;
return IV_SUCCESS;
@@ -4512,13 +4513,14 @@ static WORD32 ih264e_set_flush_mode(iv_obj_t *ps_codec_obj,
void *pv_api_ip,
void *pv_api_op)
{
- UNUSED(pv_api_ip);
/* codec ctxt */
codec_t *ps_codec = (codec_t *) ps_codec_obj->pv_codec_handle;
/* ctrl call I/O structures */
ih264e_ctl_flush_op_t *ps_ctl_op = pv_api_op;
+ UNUSED(pv_api_ip);
+
ps_ctl_op->s_ive_op.u4_error_code = 0;
/* signal flush frame control call */
@@ -4557,7 +4559,6 @@ static WORD32 ih264e_get_buf_info(iv_obj_t *ps_codec_obj,
void *pv_api_ip,
void *pv_api_op)
{
- UNUSED(ps_codec_obj);
/* ctrl call I/O structures */
ih264e_ctl_getbufinfo_ip_t *ps_ip = pv_api_ip;
ih264e_ctl_getbufinfo_op_t *ps_op = pv_api_op;
@@ -4567,6 +4568,8 @@ static WORD32 ih264e_get_buf_info(iv_obj_t *ps_codec_obj,
WORD32 ht = ALIGN16(ps_ip->s_ive_ip.u4_max_ht);
WORD32 i;
+ UNUSED(ps_codec_obj);
+
ps_op->s_ive_op.u4_error_code = 0;
/* Number of components in input buffers required for codec &
@@ -5273,13 +5276,14 @@ static WORD32 ih264e_reset(iv_obj_t *ps_codec_obj,
void *pv_api_ip,
void *pv_api_op)
{
- UNUSED(pv_api_ip);
/* codec ctxt */
codec_t * ps_codec = (codec_t *) (ps_codec_obj->pv_codec_handle);
/* ctrl call I/O structures */
ih264e_ctl_reset_op_t *ps_op = pv_api_op;
+ UNUSED(pv_api_ip);
+
ps_op->s_ive_op.u4_error_code = 0;
if (ps_codec != NULL)
diff --git a/encoder/irc_rd_model.c b/encoder/irc_rd_model.c
index a04412c..62c7811 100644
--- a/encoder/irc_rd_model.c
+++ b/encoder/irc_rd_model.c
@@ -115,11 +115,6 @@ static UWORD8 find_model_coeffs(UWORD32 *pi4_res_bits,
UWORD8 u1_num_frms_used = 0;
UWORD8 u1_frm_indx;
-#if !(ENABLE_QUAD_RC_MODEL||ENABLE_LIN_MODEL_WITH_INTERCEPT)
- UNUSED(pu1_num_skips);
- UNUSED(pmc_model_coeff);
- UNUSED(pmc_model_coeff_lin);
-#endif
float sum_y = 0;
float sum_x_y = 0;
float sum_x2_y = 0;
@@ -131,6 +126,12 @@ static UWORD8 find_model_coeffs(UWORD32 *pi4_res_bits,
float x0, y0;
float model_coeff_a = 0.0, model_coeff_b = 0.0, model_coeff_c = 0.0;
+#if !(ENABLE_QUAD_RC_MODEL||ENABLE_LIN_MODEL_WITH_INTERCEPT)
+ UNUSED(pu1_num_skips);
+ UNUSED(pmc_model_coeff);
+ UNUSED(pmc_model_coeff_lin);
+#endif
+
for(i = 0; i < u1_num_frms; i++)
{
if(-1 == pi1_frame_index[i])
diff --git a/encoder/x86/ime_distortion_metrics_sse42.c b/encoder/x86/ime_distortion_metrics_sse42.c
index baf18a4..0266916 100644
--- a/encoder/x86/ime_distortion_metrics_sse42.c
+++ b/encoder/x86/ime_distortion_metrics_sse42.c
@@ -249,12 +249,12 @@ void ime_compute_sad_16x8_sse42(UWORD8 *pu1_src,
WORD32 i4_max_sad,
WORD32 *pi4_mb_distortion)
{
- UNUSED (i4_max_sad);
__m128i src_r0, src_r1, src_r2, src_r3;
__m128i est_r0, est_r1, est_r2, est_r3;
__m128i res_r0, res_r1, res_r2, res_r3;
__m128i sad_val;
int val1, val2;
+ UNUSED (i4_max_sad);
// Row 0-3 sad calculation
src_r0 = _mm_loadu_si128((__m128i *) (pu1_src));
@@ -500,7 +500,6 @@ void ime_compute_sad_16x16_fast_sse42(UWORD8 *pu1_src,
WORD32 i4_max_sad,
WORD32 *pi4_mb_distortion)
{
- UNUSED (i4_max_sad);
__m128i src_r0, src_r1, src_r2, src_r3;
__m128i est_r0, est_r1, est_r2, est_r3;
__m128i res_r0, res_r1, res_r2, res_r3;
@@ -509,6 +508,7 @@ void ime_compute_sad_16x16_fast_sse42(UWORD8 *pu1_src,
WORD32 i4_sad;
UWORD8 *pu1_src_temp = pu1_src + src_strd;
UWORD8 *pu1_est_temp = pu1_est + est_strd;
+ UNUSED (i4_max_sad);
// Row 0,2,4,6 sad calculation
src_r0 = _mm_loadu_si128((__m128i *) (pu1_src));