dv: fix black screen when play mel video [1/1]
authoryao liu <yao.liu@amlogic.com>
Sun, 5 May 2019 13:57:37 +0000 (21:57 +0800)
committerNick Xie <nick@khadas.com>
Mon, 5 Aug 2019 06:32:56 +0000 (14:32 +0800)
PD#SWPL-8155

Problem:
support el is disabled for default on 2.4.2 ko

Solution:
For mel video, set el flag to ko, to make support el
enable

Verify:
T962E2, Ves_L2DM_23976_3840x2160_10000kbps_hevc
_dvhe_dtr___dt.mp4 display normal

Change-Id: I6e92c012fedb460c373e6e4c0312542564b6ced3
Signed-off-by: yao liu <yao.liu@amlogic.com>
drivers/amlogic/media/enhancement/amdolby_vision/amdolby_vision.c

index 86a66a5..ddedb09 100644 (file)
@@ -4794,6 +4794,7 @@ int dolby_vision_parse_metadata(
        u32 graphic_max = 100; /* 1 */
        int ret_flags = 0;
        int ret = -1;
+       bool melFlag = false;
 
        memset(&req, 0, (sizeof(struct provider_aux_req_s)));
        memset(&el_req, 0, (sizeof(struct provider_aux_req_s)));
@@ -4922,6 +4923,9 @@ int dolby_vision_parse_metadata(
                                vf_notify_provider_by_name("dvbldec",
                                        VFRAME_EVENT_RECEIVER_DOLBY_BYPASS_EL,
                                        (void *)&req);
+                       if (ret_flags == 1) {
+                               melFlag = true;
+                       }
                        if (!is_dv_standard_es(req.dv_enhance_exist,
                                ret_flags, w)) {
                                src_format = FORMAT_SDR;
@@ -5530,7 +5534,7 @@ int dolby_vision_parse_metadata(
                graphic_max * 10000,
                dolby_vision_target_min,
                dolby_vision_target_max[src_format][dst_format] * 10000,
-               (!el_flag) ||
+               (!el_flag && !melFlag) ||
                (dolby_vision_flags & FLAG_DISABLE_COMPOSER),
                &hdr10_param,
                &new_dovi_setting);