diff options
author | Santhosh Behara <santhoshbehara@codeaurora.org> | 2018-08-16 17:46:15 +0530 |
---|---|---|
committer | Chong Zhang <chz@google.com> | 2018-09-05 22:54:03 +0000 |
commit | a9ce4757f75ad260ba6c022cd875ba21fb3f8089 (patch) | |
tree | 49b8cb1e3df317471f34c8a43c5368ea94bc5d4b | |
parent | ab2e9a27fed1550c95c9a8afba547e4848c9d38a (diff) | |
download | media-android-9.0.0_r42.tar.gz |
mm-video-v4l2: vdec: Correct order of reading color primariesandroid-9.0.0_r47android-9.0.0_r46android-9.0.0_r45android-9.0.0_r44android-9.0.0_r43android-9.0.0_r42android-9.0.0_r41android-9.0.0_r40android-9.0.0_r37android-9.0.0_r36pie-qpr3-s1-releasepie-qpr3-releasepie-qpr3-b-releasepie-b4s4-dev
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/media/+/1123749/)
Bug: 111799726
Bug: 112443029
Change-Id: Ic6703dcf7878c27e3e18e437039ddb74cf8d32d6
(cherry picked from commit defe2fa2ca6553b686de3cbac7f65d51584e16fe)
-rw-r--r-- | msm8998/mm-video-v4l2/vidc/vdec/src/omx_vdec_v4l2.cpp | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/msm8998/mm-video-v4l2/vidc/vdec/src/omx_vdec_v4l2.cpp b/msm8998/mm-video-v4l2/vidc/vdec/src/omx_vdec_v4l2.cpp index b61f49b..419d9f5 100644 --- a/msm8998/mm-video-v4l2/vidc/vdec/src/omx_vdec_v4l2.cpp +++ b/msm8998/mm-video-v4l2/vidc/vdec/src/omx_vdec_v4l2.cpp @@ -11399,12 +11399,12 @@ bool omx_vdec::handle_mastering_display_color_info(void* data, MasteringDisplay* mastering_display_mdata->maxDisplayLuminance = mastering_display_payload->nMaxDisplayMasteringLuminance; mastering_display_mdata->minDisplayLuminance = mastering_display_payload->nMinDisplayMasteringLuminance; - 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); @@ -11418,12 +11418,12 @@ bool omx_vdec::handle_mastering_display_color_info(void* data, MasteringDisplay* (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; |