summaryrefslogtreecommitdiffstats
path: root/camera/BufferSourceAdapter.cpp
diff options
context:
space:
mode:
authorEmilian Peev <epeev@mm-sol.com>2012-07-26 12:23:09 +0300
committerDaniel Levin <dendy@ti.com>2012-11-26 20:09:17 +0200
commit768f0facca72fc96dcc15ba2a914acecf2dd51f0 (patch)
tree34179306189b68690a526ea448b77c03299387f7 /camera/BufferSourceAdapter.cpp
parent8dbacd8e4529b3eebbb28726e50861b268f6a392 (diff)
downloadhardware_ti_omap4-768f0facca72fc96dcc15ba2a914acecf2dd51f0.tar.gz
hardware_ti_omap4-768f0facca72fc96dcc15ba2a914acecf2dd51f0.tar.bz2
hardware_ti_omap4-768f0facca72fc96dcc15ba2a914acecf2dd51f0.zip
CameraHal: Add support for reprocessing with buffer borders
- The header of the processed buffer should be set correctly in order for the camera component to properly match the start of the valid data. Depends on frameworks/av change I788dd738: http://review.omapzoom.org/#/c/29677/ Depends on hardware/libhardware change Ie37ab311: http://review.omapzoom.org/#/c/29676/ Change-Id: I003b7cfae41ddf6bb46661e0803a4fb1b60a99e6 Signed-off-by: Emilian Peev <epeev@mm-sol.com> Signed-off-by: Vladimir Petrov <vppetrov@mm-sol.com>
Diffstat (limited to 'camera/BufferSourceAdapter.cpp')
-rw-r--r--camera/BufferSourceAdapter.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/camera/BufferSourceAdapter.cpp b/camera/BufferSourceAdapter.cpp
index 67fb339..a595b4b 100644
--- a/camera/BufferSourceAdapter.cpp
+++ b/camera/BufferSourceAdapter.cpp
@@ -653,6 +653,10 @@ CameraBuffer* BufferSourceAdapter::getBufferList(int *num) {
err = extendedOps()->get_buffer_dimension(mBufferSource, &mBuffers[0].width, &mBuffers[0].height);
err = extendedOps()->get_buffer_format(mBufferSource, &formatSource);
+ int t, l, r, b, w, h;
+ err = extendedOps()->get_crop(mBufferSource, &l, &t, &r, &b);
+ err = extendedOps()->get_current_size(mBufferSource, &w, &h);
+
// lock buffer
{
void *y_uv[2];
@@ -666,6 +670,8 @@ CameraBuffer* BufferSourceAdapter::getBufferList(int *num) {
mPixelFormat = getFormatFromANW(formatSource);
mBuffers[0].format = mPixelFormat;
+ mBuffers[0].actual_size = CameraHal::calculateBufferSize(mPixelFormat, w, h);
+ mBuffers[0].offset = t * w + l * CameraHal::getBPP(mPixelFormat);
mBufferSourceDirection = BUFFER_SOURCE_TAP_IN;
return mBuffers;