DART-MX8M CSI: Difference between revisions
No edit summary |
No edit summary |
||
Line 41: | Line 41: | ||
== Testing Camera JPEG Snapshot / Taking Single Picture == | == Testing Camera JPEG Snapshot / Taking Single Picture == | ||
To | |||
To capture JPEG snapshot run one of pipelines below depending upon the required picture resolution. | |||
* 480P 640x480: | * 480P 640x480: |
Revision as of 14:07, 11 July 2018
Testing our MIPI cameras
Before you start any of below pipeline make sure you have camera connected. IMX family of processor uses gstreamer as multimedia framework. Please refer to https://gstreamer.freedesktop.org/
Camera Probe
Run below command to see if you have got the camera detected
root@imx8m-var-dart:~# v4l2-ctl --list-devices
This should output below
root@imx8m-var-dart:~# v4l2-ctl --list-devices i.MX6S_CSI (platform:30a90000.csi1_bridge): /dev/video0 i.MX6S_CSI (platform:30b80000.csi2_bridge): /dev/video1
As you can see above there are 2 cameras accessible as /dev/video0 and /dev/video1
Testing Camera Loopback / Camera Preview on Display
In the examples below /dev/videoX is either /dev/video0 or /dev/video1
- 480P 640x480@30fps:
# gst-launch-1.0 v4l2src device=/dev/videoX ! video/x-raw,width=640,height=480 ! kmssink
- NTSC 720x480@30fps:
# gst-launch-1.0 v4l2src device=/dev/videoX ! video/x-raw,width=720,height=480 ! kmssink
- 720P 1280x720@30fps:
# gst-launch-1.0 v4l2src device=/dev/videoX ! video/x-raw,width=1280,height=720 ! kmssink
- 1080P: 1920x1080@30fps:
# gst-launch-1.0 v4l2src device=/dev/videoX ! video/x-raw,width=1920,height=1080 ! kmssink
- QSXGA 2592x1944@15fps:
# gst-launch-1.0 v4l2src device=/dev/videoX ! video/x-raw,width=2592,height=1944 ! kmssink
Testing Camera JPEG Snapshot / Taking Single Picture
To capture JPEG snapshot run one of pipelines below depending upon the required picture resolution.
- 480P 640x480:
# gst-launch-1.0 v4l2src device=/dev/videoX num-buffers=1 ! video/x-raw,width=640,height=480 ! jpegenc ! filesink location=/tmp/test.jpg
- NTSC 720x480:
# gst-launch-1.0 v4l2src device=/dev/videoX num-buffers=1 ! video/x-raw,width=720,height=480 ! jpegenc ! filesink location=/tmp/test.jpg
- 720P 1280x720:
# gst-launch-1.0 v4l2src device=/dev/videoX num-buffers=1 ! video/x-raw,width=1280,height=720 ! jpegenc ! filesink location=/tmp/test.jpg
- 1080P 1920x1080:
# gst-launch-1.0 v4l2src device=/dev/videoX num-buffers=1 ! video/x-raw,width=1920,height=1080 ! jpegenc ! filesink location=/tmp/test.jpg
- QSXGA 2592x1944:
# gst-launch-1.0 v4l2src device=/dev/videoX num-buffers=1 ! video/x-raw,width=2592,height=1944 ! jpegenc ! filesink location=/tmp/test.jpg
Please note : jpegenc is opensource software based jpeg encoder. This gets executed on CPU not using JPEG hardware acceleration. To see your recently taken picture, transfer /tmp/test.jpg to your PC via scp or winscp and see whether you got correct snapshot or not.
References
You can find more examples in the GStreamer section.
Please note: IMX7 has different multimedia capabilities than IMX6. All the references mentioned above for GStreamer section should only be considered as examples. The pipelines may not work on IMX7 software stack.
For detailed camera training for IMX family refer to : http://cache.freescale.com/files/training/doc/ftf/2014/FTF-CON-F0119.pdf