1 Copyright (c) 2016, NVIDIA CORPORATION. All rights reserved.
3 @page nvee_jpeg_capture_group Camera JPEG Capture Sample
7 - [Overview](#overview)
8 - [Key Structure and Classes](#key)
10 - - - - - - - - - - - - -
14 This sample shows how to use libargus to create camera objects and
interface as frame producer so either EGL
15 image renderer can display, preview, or perform image capture to a JPEG file.
17 
19 #### Prerequisites ####
20 Before running the sample, you must have the following:
22 * README that provides details on the environment requirements to build and run the sample
25 #### Additional Details
27 The sample uses producer and consumer model to establish frame flow from camera object producing frame
28 output to consumer connecting EGLstream buffer for rendering preview mode.
30 The programming model is quite straightforward and efficient once you are familiar with it.
32 The API is frame-based cross-platform user mode API. The design is to ensure zero buffer copy when it
33 comes to consuming output frame.
35 - - - - - - - - - - - - - - -
37 ## Key Structure and Classes ##
39 Regarding libargus and EGLStream, please refer to libargus document.
43 | class [NvEGLRender](classNvEglRenderer.html) | The class contains elements and functions to render frames to EGL window. |
44 | class [NvJpegEncoder](classNvJPEGEncoder.html) | The class contains elements and functions to encode JPEG images.
46 %NvEGLRender is the class that packages all the functions for video rendering. Key members used in the
47 sample are as follows:
49 | %NvEGLRender | Description |
50 |-------------|-------------|
51 | render | Render the FD to an EGL window. |
53 %NvJpegEncoder is the class that packages all the functions for JPEG encoding. Key members used are:
56 |--------------------|-------------|
57 | [encodeFromFd](classNvJPEGEncoder.html#a4c7f16d4d8ee39fcc52279ee14418fea) | Encode form FD of buffer exported by V4L2 element. |
Defines a helper class for operations performed on a V4L2 Element plane.