summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSanthosh Behara <santhoshbehara@codeaurora.org>2018-08-16 17:46:15 +0530
committerChong Zhang <chz@google.com>2018-09-05 22:52:53 +0000
commit96454aaa4ab9f17690ecd4f5f147f3afe5e0361d (patch)
treeea2aaf11052ce1b5e6c2f34ec1b4c1a03a47d644
parentdeb7e33ac65e8a0e0749e657d0586d170e751c3b (diff)
downloadmedia-pie-qpr3-b-release.tar.gz
According to H265 spec, the color primaries should be in G,B,R order. But in the exisisting code they are read in R, G, B order. Correct the order of reading bitstream as per the specification. (Cherry-picked from: https://partner-android-review.googlesource.com/c/platform/hardware/qcom/sdm845/media/+/1120439) Bug: 111799726 Change-Id: Ic6703dcf7878c27e3e18e437039ddb74cf8d32d6 (cherry picked from commit acb885f628ccf4731d887d47300e5d9ff58b72b4)
-rw-r--r--mm-video-v4l2/vidc/vdec/src/omx_vdec_v4l2.cpp24
1 files changed, 12 insertions, 12 deletions
diff --git a/mm-video-v4l2/vidc/vdec/src/omx_vdec_v4l2.cpp b/mm-video-v4l2/vidc/vdec/src/omx_vdec_v4l2.cpp
index 6590fe11..71db9824 100644
--- a/mm-video-v4l2/vidc/vdec/src/omx_vdec_v4l2.cpp
+++ b/mm-video-v4l2/vidc/vdec/src/omx_vdec_v4l2.cpp
@@ -9671,12 +9671,12 @@ bool omx_vdec::handle_mastering_display_color_info(void* data)
HDRStaticInfo* hdr_info = &m_internal_hdr_info.sInfo;
bool internal_disp_changed_flag = false;
- internal_disp_changed_flag |= (hdr_info->sType1.mR.x != mastering_display_payload->nDisplayPrimariesX[0]) ||
- (hdr_info->sType1.mR.y != mastering_display_payload->nDisplayPrimariesY[0]);
- internal_disp_changed_flag |= (hdr_info->sType1.mG.x != mastering_display_payload->nDisplayPrimariesX[1]) ||
- (hdr_info->sType1.mG.y != mastering_display_payload->nDisplayPrimariesY[1]);
- internal_disp_changed_flag |= (hdr_info->sType1.mB.x != mastering_display_payload->nDisplayPrimariesX[2]) ||
- (hdr_info->sType1.mB.y != mastering_display_payload->nDisplayPrimariesY[2]);
+ internal_disp_changed_flag |= (hdr_info->sType1.mG.x != mastering_display_payload->nDisplayPrimariesX[0]) ||
+ (hdr_info->sType1.mG.y != mastering_display_payload->nDisplayPrimariesY[0]);
+ internal_disp_changed_flag |= (hdr_info->sType1.mB.x != mastering_display_payload->nDisplayPrimariesX[1]) ||
+ (hdr_info->sType1.mB.y != mastering_display_payload->nDisplayPrimariesY[1]);
+ internal_disp_changed_flag |= (hdr_info->sType1.mR.x != mastering_display_payload->nDisplayPrimariesX[2]) ||
+ (hdr_info->sType1.mR.y != mastering_display_payload->nDisplayPrimariesY[2]);
internal_disp_changed_flag |= (hdr_info->sType1.mW.x != mastering_display_payload->nWhitePointX) ||
(hdr_info->sType1.mW.y != mastering_display_payload->nWhitePointY);
@@ -9690,12 +9690,12 @@ bool omx_vdec::handle_mastering_display_color_info(void* data)
(hdr_info->sType1.mMinDisplayLuminance != mastering_display_payload->nMinDisplayMasteringLuminance);
if (internal_disp_changed_flag) {
- hdr_info->sType1.mR.x = mastering_display_payload->nDisplayPrimariesX[0];
- hdr_info->sType1.mR.y = mastering_display_payload->nDisplayPrimariesY[0];
- hdr_info->sType1.mG.x = mastering_display_payload->nDisplayPrimariesX[1];
- hdr_info->sType1.mG.y = mastering_display_payload->nDisplayPrimariesY[1];
- hdr_info->sType1.mB.x = mastering_display_payload->nDisplayPrimariesX[2];
- hdr_info->sType1.mB.y = mastering_display_payload->nDisplayPrimariesY[2];
+ hdr_info->sType1.mG.x = mastering_display_payload->nDisplayPrimariesX[0];
+ hdr_info->sType1.mG.y = mastering_display_payload->nDisplayPrimariesY[0];
+ hdr_info->sType1.mB.x = mastering_display_payload->nDisplayPrimariesX[1];
+ hdr_info->sType1.mB.y = mastering_display_payload->nDisplayPrimariesY[1];
+ hdr_info->sType1.mR.x = mastering_display_payload->nDisplayPrimariesX[2];
+ hdr_info->sType1.mR.y = mastering_display_payload->nDisplayPrimariesY[2];
hdr_info->sType1.mW.x = mastering_display_payload->nWhitePointX;
hdr_info->sType1.mW.y = mastering_display_payload->nWhitePointY;