+void CameraSource::adjustIncomingANWBuffer(IMemory* data) {
+ uint8_t *payload =
+ reinterpret_cast<uint8_t*>(data->pointer());
+ if (*(uint32_t*)payload == kMetadataBufferTypeGrallocSource) {
+ buffer_handle_t* pBuffer = (buffer_handle_t*)(payload + 4);
+ *pBuffer = (buffer_handle_t)((uint8_t*)(*pBuffer) +
+ ICameraRecordingProxy::getCommonBaseAddress());
+ }
+}
+
+void CameraSource::adjustOutgoingANWBuffer(IMemory* data) {
+ uint8_t *payload =
+ reinterpret_cast<uint8_t*>(data->pointer());
+ if (*(uint32_t*)payload == kMetadataBufferTypeGrallocSource) {
+ buffer_handle_t* pBuffer = (buffer_handle_t*)(payload + 4);
+ *pBuffer = (buffer_handle_t)((uint8_t*)(*pBuffer) -
+ ICameraRecordingProxy::getCommonBaseAddress());
+ }
+}
+