DRM-WV: fix video corruption with protected content playback
BZ: 89857
Fix for video corruption in the bottom right corner on Widevine protected
content on Merrifield.
Change-Id: Ia16dd6e32d34128ab68892e13ed5a10fbfe9b1af
Signed-off-by: Paul Zurcher <paul.zurcher@intel.com>
Reviewed-on: http://android.intel.com:8080/119088
Reviewed-by: Poornachandran, Rajesh <rajesh.poornachandran@intel.com>
Reviewed-by: Kandru, Suneel <suneel.kandru@intel.com>
Reviewed-by: Qiu, Junhai <junhai.qiu@intel.com>
Tested-by: Post, DavidX J <davidx.j.post@intel.com>
Reviewed-by: buildbot <buildbot@intel.com>
Tested-by: buildbot <buildbot@intel.com>
diff --git a/videodecoder/securevideo/merrifield/VideoDecoderAVCSecure.cpp b/videodecoder/securevideo/merrifield/VideoDecoderAVCSecure.cpp
index ac9309d..cd8b2ca 100644
--- a/videodecoder/securevideo/merrifield/VideoDecoderAVCSecure.cpp
+++ b/videodecoder/securevideo/merrifield/VideoDecoderAVCSecure.cpp
@@ -309,8 +309,7 @@
uint32_t sliceOffset = mMetadata.naluInfo[naluIndex].naluOffset;
uint32_t slice_offset_shift = sliceOffset % 16;
sliceParam->slice_data_offset += slice_offset_shift;
- sliceParam->slice_data_size += slice_offset_shift;
- sliceData->slice_size = (sliceParam->slice_data_size + 0xF) & ~0xF;
+ sliceData->slice_size = (sliceParam->slice_data_size + slice_offset_shift + 0xF) & ~0xF;
vaStatus = vaCreateBuffer(
mVADisplay,