{"id":9557,"url":"https://patchwork.libcamera.org/api/covers/9557/?format=json","web_url":"https://patchwork.libcamera.org/cover/9557/","project":{"id":1,"url":"https://patchwork.libcamera.org/api/projects/1/?format=json","name":"libcamera","link_name":"libcamera","list_id":"libcamera_core","list_email":"libcamera-devel@lists.libcamera.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20200909155457.153907-1-jacopo@jmondi.org>","date":"2020-09-09T15:54:49","name":"[libcamera-devel,0/8] android: camera_device: Allocate internal buffers","submitter":{"id":3,"url":"https://patchwork.libcamera.org/api/people/3/?format=json","name":"Jacopo Mondi","email":"jacopo@jmondi.org"},"mbox":"https://patchwork.libcamera.org/cover/9557/mbox/","series":[{"id":1282,"url":"https://patchwork.libcamera.org/api/series/1282/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=1282","date":"2020-09-09T15:54:49","name":"android: camera_device: Allocate internal buffers","version":1,"mbox":"https://patchwork.libcamera.org/series/1282/mbox/"}],"comments":"https://patchwork.libcamera.org/api/covers/9557/comments/","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 17EE6BDB1D\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed,  9 Sep 2020 15:51:19 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 8880B62CBA;\n\tWed,  9 Sep 2020 17:51:18 +0200 (CEST)","from relay8-d.mail.gandi.net (relay8-d.mail.gandi.net\n\t[217.70.183.201])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 97F5360534\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed,  9 Sep 2020 17:51:17 +0200 (CEST)","from uno.lan (93-34-118-233.ip49.fastwebnet.it [93.34.118.233])\n\t(Authenticated sender: jacopo@jmondi.org)\n\tby relay8-d.mail.gandi.net (Postfix) with ESMTPSA id 790A81BF20D;\n\tWed,  9 Sep 2020 15:51:16 +0000 (UTC)"],"X-Originating-IP":"93.34.118.233","From":"Jacopo Mondi <jacopo@jmondi.org>","To":"libcamera-devel@lists.libcamera.org","Date":"Wed,  9 Sep 2020 17:54:49 +0200","Message-Id":"<20200909155457.153907-1-jacopo@jmondi.org>","X-Mailer":"git-send-email 2.28.0","MIME-Version":"1.0","Subject":"[libcamera-devel] [PATCH 0/8] android: camera_device: Allocate\n\tinternal buffers","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Cc":"hanlinchen@chromium.org","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"},"content":"This series adds to the CameraDevice class the ability to reserve buffers\non behalf of CameraStream instances used for post-processing purposes.\n\nAs the comments in patch 1/8 details, libcamera streams that are created\nby the HAL to be processed to produce frames in Android required format need\nto have memory allocated on their behalf by libcamera.\n\nThe series instruments the FrameBufferAllocator class with an interface\nto get and return references to the FrameBuffer allocated in the internal pool.\n\nCameraDevice gets instrumented with a FrameBufferAllocator which gets used\nto provide buffers to HAL-created streams.\n\nThe series is developed on top of:\n[PATCH v3 00/11] android: camera_device: Fix JPEG/RAW sizes\n\nWith these series, and the following patch applied:\n[RFC] libcamera: ipu3: Always use sensor full frame size\n\nthis is the result of cros_camera_test:\n\n[----------] 61 tests from Camera3StillCaptureTest/Camera3JpegResolutionTest (43379 ms total)\n\n[----------] Global test environment tear-down\n[==========] 61 tests from 1 test suite ran. (43379 ms total)\n[  PASSED  ] 59 tests.\n[  FAILED  ] 2 tests, listed below:\n[  FAILED  ] Camera3StillCaptureTest/Camera3JpegResolutionTest.JpegResolutionTest/4, where GetParam() = (0, 320x240, 4160x3104)\n[  FAILED  ] Camera3StillCaptureTest/Camera3JpegResolutionTest.JpegResolutionTest/20, where GetParam() = (0, 4160x3104, 320x240)\n\nThanks\n  j\n\nJacopo Mondi (8):\n  android: camera_device: Add CameraStream::Type\n  android: camera_device: Add frame allocator\n  libcamera: frame_buffer_allocator: Add clear()\n  android: camera_device: Clear allocator at configureStream\n  libcamera: framebuffer_allocator: Get and return buffers\n  android: camera_device: Allocate buffer pool\n  android: camera_device: Use libcamera buffer pool\n  android: camera_device: Add stream mapping log\n\n include/libcamera/framebuffer_allocator.h |   6 ++\n src/android/camera_device.cpp             | 106 ++++++++++++++++++----\n src/android/camera_device.h               |  89 +++++++++++++++++-\n src/libcamera/framebuffer_allocator.cpp   |  68 +++++++++++++-\n 4 files changed, 245 insertions(+), 24 deletions(-)\n\n--\n2.28.0"}