From b62bf4378796e285f9467a37e33b07c9d15bbe98 Mon Sep 17 00:00:00 2001 From: Yinming Ding Date: Tue, 27 Nov 2018 20:02:56 +0800 Subject: [PATCH] media_module: fix last few seconds of the DD+ stream are not smooth [1/4] PD#SWPL-714 Problem: The last few seconds of the DD+ stream are not smooth by DTV playback. Solution: check the apts and vpts both discontinue,then replay. Verify: P321 Change-Id: I125a64905623ad639b5e96089e6650dfcb96607b Signed-off-by: Yinming Ding --- .../amlogic/media_modules/stream_input/parser/tsdemux.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/drivers/amlogic/media_modules/stream_input/parser/tsdemux.c b/drivers/amlogic/media_modules/stream_input/parser/tsdemux.c index 05f235c821c3..ac34cf74c3d3 100644 --- a/drivers/amlogic/media_modules/stream_input/parser/tsdemux.c +++ b/drivers/amlogic/media_modules/stream_input/parser/tsdemux.c @@ -666,12 +666,13 @@ s32 tsdemux_init(u32 vid, u32 aid, u32 sid, u32 pcrid, bool is_hevc, } curr_pcr_id = pcrid; + pcrscr_valid = reset_pcr_regs(); + if ((pcrid < 0x1FFF) && (pcrid != vid) && (pcrid != aid) && (pcrid != sid)) tsdemux_set_pcrid(pcrid); } - pcrscr_valid = reset_pcr_regs(); first_pcr = 0; return 0; @@ -1164,8 +1165,8 @@ u8 tsdemux_pcrvideo_valid(void) void tsdemux_pcr_set(unsigned int pcr) { if (pcr_init_flag == 0) { - timestamp_pcrscr_set(pcr); - timestamp_pcrscr_enable(1); + /*timestamp_pcrscr_set(pcr); + timestamp_pcrscr_enable(1);*/ pcr_init_flag = 1; } }