diff options
-rw-r--r-- | camera-wrapper/Android.mk | 2 | ||||
-rw-r--r-- | camera-wrapper/CameraWrapper.cpp | 9 |
2 files changed, 10 insertions, 1 deletions
diff --git a/camera-wrapper/Android.mk b/camera-wrapper/Android.mk index bf6dccf..f26719d 100644 --- a/camera-wrapper/Android.mk +++ b/camera-wrapper/Android.mk @@ -20,6 +20,7 @@ include $(CLEAR_VARS) LOCAL_C_INCLUDES := \ framework/native/include \ + frameworks/native/include/media/openmax \ system/media/camera/include LOCAL_SRC_FILES := \ @@ -33,6 +34,7 @@ LOCAL_SHARED_LIBRARIES := \ libhidltransport \ libsensor \ libutils \ + libcutils \ android.hidl.token@1.0-utils LOCAL_STATIC_LIBRARIES := \ diff --git a/camera-wrapper/CameraWrapper.cpp b/camera-wrapper/CameraWrapper.cpp index 8551d25..5bd67ce 100644 --- a/camera-wrapper/CameraWrapper.cpp +++ b/camera-wrapper/CameraWrapper.cpp @@ -25,7 +25,7 @@ #define LOG_TAG "CameraWrapper" #include <cutils/log.h> - +#include <cutils/native_handle.h> #include <utils/threads.h> #include <utils/String8.h> #include <sensor/SensorManager.h> @@ -33,6 +33,7 @@ #include <hardware/camera.h> #include <camera/Camera.h> #include <camera/CameraParameters.h> +#include <media/hardware/HardwareAPI.h> // For VideoNativeHandleMetadata using namespace android; @@ -292,10 +293,16 @@ static void camera_release_recording_frame(struct camera_device *device, if (!device) return; + VideoNativeHandleMetadata* md = (VideoNativeHandleMetadata*) opaque; + native_handle_t* nh = md->pHandle; + ALOGV("%s->%08X->%08X", __FUNCTION__, (uintptr_t)device, (uintptr_t)(((wrapper_camera_device_t*)device)->vendor)); VENDOR_CALL(device, release_recording_frame, opaque); + + native_handle_close(nh); + native_handle_delete(nh); } static int camera_auto_focus(struct camera_device *device) |