summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkuan.hu <kuan.hu@amlogic.com>2021-09-10 14:06:23 +0800
committerHongguang Chen <hgchen@google.com>2021-09-12 03:37:18 +0000
commit91bcf47b03a1cec8180aed92fdbd1a58812f6d65 (patch)
tree494b4c410310cb42217b199c957197dbb180eb5f
parent728643b855d1e6a7c2da78306d44f534e75bbe8c (diff)
downloadmedia_modules-android-tv-deadpool-4.9-android12.tar.gz
media_module: CB1 vp9 and av1 pts adjustment incorrect. [1/1]android-tv-13.0.0_r0.1android-tv-12.0.0_r0.1android-tv-deadpool-4.9-android12
PD#SWPL-59072 Problem: The logic of adjusting pts is wrong. Solution: Modify the logic of adjusting pts. Verify: ADT3 Signed-off-by: kuan.hu <kuan.hu@amlogic.com> Change-Id: Ia5302afc6e309088e0576276545eadf5bd9f0d7e
-rw-r--r--drivers/frame_provider/decoder/vav1/vav1.c4
-rw-r--r--drivers/frame_provider/decoder/vp9/vvp9.c4
2 files changed, 4 insertions, 4 deletions
diff --git a/drivers/frame_provider/decoder/vav1/vav1.c b/drivers/frame_provider/decoder/vav1/vav1.c
index 641cba8..e7ee9f5 100644
--- a/drivers/frame_provider/decoder/vav1/vav1.c
+++ b/drivers/frame_provider/decoder/vav1/vav1.c
@@ -6412,8 +6412,8 @@ static int prepare_display_buf(struct AV1HW_s *hw,
}
}
} else {
- if ((pic_config->pts == 0) || (pic_config->pts <= hw->last_pts) &&
- (pic_config->pts64 <= hw->last_pts_us64)) {
+ if ((pic_config->pts == 0) || ((pic_config->pts <= hw->last_pts) &&
+ (pic_config->pts64 <= hw->last_pts_us64))) {
for (i = (FRAME_BUFFERS - 1); i > 0; i--) {
if ((hw->last_pts == hw->frame_mode_pts_save[i]) ||
(hw->last_pts_us64 == hw->frame_mode_pts64_save[i])) {
diff --git a/drivers/frame_provider/decoder/vp9/vvp9.c b/drivers/frame_provider/decoder/vp9/vvp9.c
index 02fa2e6..4ab61b4 100644
--- a/drivers/frame_provider/decoder/vp9/vvp9.c
+++ b/drivers/frame_provider/decoder/vp9/vvp9.c
@@ -7374,8 +7374,8 @@ static int prepare_display_buf(struct VP9Decoder_s *pbi,
display_frame_count[pbi->index]++;
if (vf) {
if (!force_pts_unstable) {
- if ((pic_config->pts == 0) || (pic_config->pts <= pbi->last_pts) &&
- (pic_config->pts64 <= pbi->last_pts_us64)) {
+ if ((pic_config->pts == 0) || ((pic_config->pts <= pbi->last_pts) &&
+ (pic_config->pts64 <= pbi->last_pts_us64))) {
for (i = (FRAME_BUFFERS - 1); i > 0; i--) {
if ((pbi->last_pts == pbi->frame_mode_pts_save[i]) ||
(pbi->last_pts_us64 == pbi->frame_mode_pts64_save[i])) {