diff options
author | Austin Hu <austin.hu@intel.com> | 2016-06-02 20:58:47 +0000 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2016-06-02 20:58:47 +0000 |
commit | e928a0cc911dc921b209aeae685356a373671a7d (patch) | |
tree | 5d5eb4c9ea7862f5bf0b44acbe9acbfcf9a532b1 | |
parent | 7bfdf1393dd0e40802bfdd9bf1cfeb7bb5eb896a (diff) | |
parent | aeb7b876641a50941ccd4ce270aa20a97f4d8420 (diff) | |
download | utils-e928a0cc911dc921b209aeae685356a373671a7d.tar.gz |
ISV: Support for both HAL_PIXEL_FORMAT_YV12 and HAL_PIXEL_FORMAT_INTEL_YV12 formats.
am: aeb7b87664
* commit 'aeb7b876641a50941ccd4ce270aa20a97f4d8420':
ISV: Support for both HAL_PIXEL_FORMAT_YV12 and HAL_PIXEL_FORMAT_INTEL_YV12 formats.
Change-Id: I25b5ec01a9d176fd433f0dbbac90fc9d6519de3c
-rw-r--r-- | ISV/base/isv_worker.cpp | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/ISV/base/isv_worker.cpp b/ISV/base/isv_worker.cpp index 156b844..9cddd1c 100644 --- a/ISV/base/isv_worker.cpp +++ b/ISV/base/isv_worker.cpp @@ -232,7 +232,7 @@ status_t ISVWorker::allocSurface(uint32_t* width, uint32_t* height, memset(&vaExtBuf, 0, sizeof(VASurfaceAttribExternalBuffers)); switch(format) { - case HAL_PIXEL_FORMAT_INTEL_YV12: + case HAL_PIXEL_FORMAT_YV12: vaExtBuf.pixel_format = VA_FOURCC_YV12; vaExtBuf.num_planes = 3; vaExtBuf.pitches[0] = stride; @@ -244,6 +244,19 @@ status_t ISVWorker::allocSurface(uint32_t* width, uint32_t* height, vaExtBuf.offsets[2] = vaExtBuf.offsets[1] + (stride / 2) * (*height / 2); vaExtBuf.offsets[3] = 0; break; + case HAL_PIXEL_FORMAT_INTEL_YV12: + vaExtBuf.pixel_format = VA_FOURCC_YV12; + vaExtBuf.num_planes = 3; + vaExtBuf.pitches[0] = stride; + vaExtBuf.pitches[1] = stride / 2; + vaExtBuf.pitches[2] = stride / 2; + vaExtBuf.pitches[3] = 0; + vaExtBuf.offsets[0] = 0; + // The height of HAL_PIXEL_FORMAT_INTEL_YV12 gralloc buffer has been aligned with 32 pixels. + vaExtBuf.offsets[1] = stride * ((*height + 31) & ~31); + vaExtBuf.offsets[2] = vaExtBuf.offsets[1] + (stride / 2) * (((*height + 31) & ~31) / 2); + vaExtBuf.offsets[3] = 0; + break; #ifdef TARGET_VPP_USE_GEN case HAL_PIXEL_FORMAT_NV12_Y_TILED_INTEL: case HAL_PIXEL_FORMAT_NV12_X_TILED_INTEL: |