dv: fix the error setting in dv core [1/1]
authorYi Zhou <yi.zhou@amlogic.com>
Tue, 25 Dec 2018 09:08:39 +0000 (17:08 +0800)
committerLuan Yuan <luan.yuan@amlogic.com>
Thu, 27 Dec 2018 12:40:42 +0000 (20:40 +0800)
PD#SWPL-3046

Problem:
movie player will keep video layer when playing video films.
Even if jumping to the next films, it will not close video layer.
When meeting this situation, dv core will keep the front
film's setting.

Solution:
when jumping the next film, we know the first frame.
So we clean the setting in the first frames.

Verify:
u212

Change-Id: I61ebc8f58baed32abc519018676e40b08d059cac
Signed-off-by: Yi Zhou <yi.zhou@amlogic.com>
drivers/amlogic/media/enhancement/amdolby_vision/amdolby_vision.c

index f95d717..ee7de00 100644 (file)
@@ -5098,7 +5098,9 @@ int dolby_vision_parse_metadata(
                dst_format = FORMAT_SDR;
 #ifdef V2_4
        if ((src_format != dovi_setting.src_format)
-               || (dst_format != dovi_setting.dst_format))
+               || (dst_format != dovi_setting.dst_format) ||
+               ((!(dolby_vision_flags & FLAG_CERTIFICAION))
+               && (frame_count == 0)))
                p_funcs->control_path(
                        FORMAT_INVALID, 0,
                        comp_buf[currentId], 0,