[{"id":4733,"web_url":"https://patchwork.libcamera.org/comment/4733/","msgid":"<20200503024137.GA19853@pendragon.ideasonboard.com>","date":"2020-05-03T02:41:37","subject":"Re: [libcamera-devel] [PATCH] README.rst: Add FAQ section.","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"Hi Kieran,\n\nThanks for your work on this.\n\nJust a few comments already, I'll provide more tomorrow.\n\nOn Sun, May 03, 2020 at 02:17:20AM +0100, Kieran Bingham wrote:\n> Provide an initial set of Questions and Answers.\n> \n> Hopefully these will provide quick insights to the project from the\n> README, and can be incorporated into the website.\n> \n> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n> ---\n>  README.rst | 65 ++++++++++++++++++++++++++++++++++++++++++++++++++++++\n>  1 file changed, 65 insertions(+)\n> \n> diff --git a/README.rst b/README.rst\n> index 40d45196c7d6..af44686b969c 100644\n> --- a/README.rst\n> +++ b/README.rst\n> @@ -89,3 +89,68 @@ default video display element on your system.\n>    gst-launch-1.0 libcamerasrc camera-name=\"Camera 1\" ! videoconvert ! autovideosink\n>  \n>  .. section-end-getting-started\n> +.. section-begin-faq\n> +\n> +Frequently Asked Questions\n> +--------------------------\n> +\n> +What is libcamera?\n> +  libcamera is an open source camera stack implemented entirely in user space.\n> +  It aims to encourage the development of new embedded camera applications by\n> +  limiting the complexity that developers have to deal with.  The interface is\n\ns/  The/ The/\n\n> +  designed around the way that modern embedded camera hardware works.\n> +\n> +What is the correct way to display the name 'libcamera'\n\ns/$/?/\n\n> +  libcamera, is always in lowercase; in titles, or at the beginning of\n> +  sentences.\n> +\n> +How is libcamera different from V4L2?\n> +  We see libcamera as a continuation of V4L2. One that can more easily handle\n> +  the recent advances in hardware design. As embedded cameras have developed,\n> +  all of the complexity has been pushed on to the developers. With libcamera,\n> +  all of that complexity is simplified and a single model is presented to\n> +  application developers.\n> +\n> +Does this mean the camera stack is completely open?\n> +  libcamera is open-source friendly which means all of libcamera itself is open\n> +  source. Because vendors are reluctant to open-source their Image Processing\n> +  Algorithms, libcamera can support closed-source Image Processing Algorithm\n> +  modules (IPAs) which will be sandboxed to minimise the exposure of binary\n> +  blobs.\n> +\n> +libcamera has been described as “the MESA of the camera stack”. What does that mean?\n> +  Mesa provides powerful high-level APIs to applications and implements\n> +  device-specific code in userspace to support the implementation. libcamera\n> +  provides high-level APIs that handle device-specific code in userspace to\n> +  simplify development for application developers.\n> +\n> +Which cameras SoCs (pipelines) are supported?\n> +  Currently supported pipelines include the Intel IPU3, RockChip RK3399, UVC,\n> +  and VIMC/VIVID test drivers\n> +\n> +Which camera protocols are supported?\n> +  libcamera supports cameras that use MIPI/CSI2 protocols.\n\ns/MIPI\\/CSI2/MIPI CSI-2/\n\n> +\n> +Can I use libcamera to access photos on digital cameras?\n> +  No, libcamera is a library for controlling embedded camera hardware, it’s not\n> +  an application for accessing photos and has no relationship to gphoto2.\n> +  libcamera supports internal cameras designed for point-and-shoot still image\n> +  and video capture and external UVC cameras designed for video conferencing.\n> +\n> +Can libcamera handle multiple cameras simultaneously?\n> +  libcamera can support multiple cameras within a system, and allows only a\n> +  single application to consume each stream. An application must ‘acquire’ a\n\nWe lock at the camera level, not at the stream level, don't we ?\n\n> +  Camera to start operations on it, and should release it when finished.\n> +  Logical cameras where multiple cameras are treated as a single camera is a\n> +  pipeline and hardware specific extension that will be supported in the\n> +  future.\n> +\n> +Does libcamera do format conversion and debayering?\n> +  Format conversion and debayering operations are dependent upon the Image\n> +  Signal Processor (ISP) and hardware available. Our demonstration application,\n> +  QCam, does basic software format conversions to handle display but we aim to\n> +  move to using OpenGL to improve real time conversion performance. Where\n> +  possible, QCam will request formats that can be displayed natively without\n> +  requiring software conversions.\n> +\n> +.. section-end-faq","headers":{"Return-Path":"<laurent.pinchart@ideasonboard.com>","Received":["from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id BA0B2603F0\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tSun,  3 May 2020 04:41:41 +0200 (CEST)","from pendragon.ideasonboard.com (81-175-216-236.bb.dnainternet.fi\n\t[81.175.216.236])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 290DA304;\n\tSun,  3 May 2020 04:41:41 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key; \n\tunprotected) header.d=ideasonboard.com\n\theader.i=@ideasonboard.com\n\theader.b=\"CSoStP9w\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1588473701;\n\tbh=+k9VQaqmMoXUB331yiv0smXmfBIKtUgPATKdMmygvh0=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=CSoStP9wb1deUt61GU0k6fcymS9fuP/EdLQLz9P/0ovxnxZxadvNgmVt/uEjVIR2o\n\teIdu9ylyymifWsl4LHkap+MWVcklnUY13hq6+NmQJ0xRPfcnEZ8v8tY9iA+NNrQlDC\n\tOtx0sf14u6Gev+f0x36qrkvgDn82rDdRdm1Q5Fk4=","Date":"Sun, 3 May 2020 05:41:37 +0300","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"Kieran Bingham <kieran.bingham@ideasonboard.com>","Cc":"libcamera devel <libcamera-devel@lists.libcamera.org>","Message-ID":"<20200503024137.GA19853@pendragon.ideasonboard.com>","References":"<20200503011720.3382710-1-kieran.bingham@ideasonboard.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","Content-Transfer-Encoding":"8bit","In-Reply-To":"<20200503011720.3382710-1-kieran.bingham@ideasonboard.com>","Subject":"Re: [libcamera-devel] [PATCH] README.rst: Add FAQ section.","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>","X-List-Received-Date":"Sun, 03 May 2020 02:41:42 -0000"}}]