You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: source/linux/Examples_and_Demos/Application_Demos/Dual_Camera_Demo.rst
+7-11Lines changed: 7 additions & 11 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,27 +6,23 @@ Below diagram illustrates the video data processing flow of dual camera demo.
6
6
7
7
.. Image:: /images/Dual_camera_demo.png
8
8
9
-
**Dual camera example demo demonstrates following-**
9
+
**Dual camera example demo demonstrates the following**
10
10
11
-
1. Video capture using V4L2 interface from up to two cameras.
12
-
2. QT QWidget based drawing of user interface using linuxfb plugin. linuxfb is fbdev based software drawn QPA.
11
+
#. Video capture using V4L2 interface from up to two cameras.
12
+
#. QT QWidget based drawing of user interface using linuxfb plugin, where linuxfb is an fbdev based software drawn QPA.
13
13
#. Hardware accelerated scaling of input video from primary camera to display resolution using DSS IP.
14
14
#. Hardware accelerated scaling of input video from secondary camera (if connected) to lower resolution using DSS IP.
15
15
#. Hardware accelerated overlaying of two video planes and graphics plane using DSS IP.
16
16
#. Scaling of two video planes and overlaying with graphics plane happens on the fly in single pass inside DSS IP using DRM atomic APIs.
17
-
#. Snapshot of the screen using JPEG compression running on ARM. The captured images are stored in filesystem under /usr/share/camera-images/ folder
18
-
#. The camera and display driver shares video buffer using dmabuf protocol. Capture driver writes captured content to a buffer which is directly read by the display driver without copying the content locally to another buffer (zero copy involved).
17
+
#. Snapshot of the screen using JPEG compression running on ARM. The captured images are stored in filesystem under the :file:`/usr/share/camera-images/` folder
18
+
#. The camera and display driver shares video buffer using DMA buffers. The capture driver writes content to a buffer which is directly read by the GPU and potentially the display without copying the content locally to another buffer (zero copy involved).
19
19
#. The application also demonstrates allocating the buffer from either omap_bo (from omapdrm) memory pool or from cmem buffer pool. The option to pick omap_bo or cmem memory pool is provided runtime using cmd line.
20
20
#. If the application has need to do some CPU based processing on captured buffer, then it is recommended to allocate the buffer using CMEM buffer pool. The reason being omap_bo memory pool doesn't support cache read operation. Due to this any CPU operation involving video buffer read will be 10x to 15x slower. CMEM pool supports cache operation and hence CPU operations on capture video buffer are fast.
21
-
#. The application runs in nullDRM/full screen mode (no windows manager like wayland/x11) and the linuxfb QPA runs in fbdev mode. This gives applicationfull control of DRM resource DSS to control and display the video planes.
21
+
#. The application runs in nullDRM/full screen mode (no compositors like Weston) and the linuxfb QPA runs in fbdev mode. This gives application full control of DRM resource DSS to control and display the video planes.
22
22
23
23
**Instructions to run dual camera demo**
24
24
25
25
* Since the application need control of DRM resource (DSS) and there can be only one master, make sure that the wayland/weston is not running.
26
-
#/etc/init.d/weston stop
27
-
28
-
* Run the dual camera application
29
-
#dual-camera -platform linuxfb <0/1>
30
-
26
+
* Run the dual camera application ``dual-camera -platform linuxfb <0/1>``
31
27
* When last argument is set as 0, capture and display driver allocates memory from omap_bo pool.
32
28
* When it is set to 1, the buffers are allocated from CMEM pool.
0 commit comments