Fix slice params for interlaced video
Bug: 28165661
Change-Id: I912a86bd78ebf0617fd2bc6eb2b5a61afc17bf53
diff --git a/decoder/ih264d_api.c b/decoder/ih264d_api.c
index c264d9a..33e6b67 100644
--- a/decoder/ih264d_api.c
+++ b/decoder/ih264d_api.c
@@ -1066,6 +1066,7 @@
(MAX_DISP_BUFS_NEW) * sizeof(UWORD32));
memset(ps_dec->u4_disp_buf_to_be_freed, 0,
(MAX_DISP_BUFS_NEW) * sizeof(UWORD32));
+ memset(ps_dec->ps_cur_slice, 0, sizeof(dec_slice_params_t));
ih264d_init_arch(ps_dec);
ih264d_init_function_ptr(ps_dec);
diff --git a/decoder/ih264d_parse_pslice.c b/decoder/ih264d_parse_pslice.c
index 2cb2274..0fbbd84 100644
--- a/decoder/ih264d_parse_pslice.c
+++ b/decoder/ih264d_parse_pslice.c
@@ -1494,6 +1494,10 @@
if(ps_dec->ps_pps[i].u1_is_valid == TRUE)
j = i;
{
+ //initialize slice params required by ih264d_start_of_pic to valid values
+ ps_dec->ps_cur_slice->u1_slice_type = P_SLICE;
+ ps_dec->ps_cur_slice->u1_nal_ref_idc = 1;
+ ps_dec->ps_cur_slice->u1_nal_unit_type = 1;
ret = ih264d_start_of_pic(ps_dec, poc, ps_cur_poc,
ps_dec->ps_cur_slice->u2_frame_num,
&ps_dec->ps_pps[j]);