|
|
(8 intermediate revisions by one other user not shown) |
Line 1: |
Line 1: |
| <seo title="IMX296 Linux Driver for NVIDIA Jetson | Sony IMX296 Linux Driver | RidgeRun" titlemode="replace" keywords="GStreamer, Linux SDK, Linux BSP, Embedded Linux, Device Drivers, Nvidia, Xilinx, TI, NXP, Freescale, Embedded Linux driver development, Linux Software development, Embedded Linux SDK, Embedded Linux Application development, GStreamer Multimedia Framework, IMX296 Jetson TX2, IMX296, V4L2 Driver, Sony IMX296, Sony IMX296, IMX296 Linux driver, Sony IMX296 Linux Driver, Sony, Sony IMX296, IMX 296." description="Check out our comprehensive overview and features of the Sony IMX296 Linux driver for NVIDIA Jetson!."></seo> | | <seo title="IMX296 Linux Driver for NVIDIA Jetson | Sony IMX296 Linux Driver | RidgeRun" titlemode="replace" metakeywords="GStreamer, Linux SDK, Linux BSP, Embedded Linux, Device Drivers, Nvidia, Xilinx, TI, NXP, Freescale, Embedded Linux driver development, Linux Software development, Embedded Linux SDK, Embedded Linux Application development, GStreamer Multimedia Framework, IMX296 Jetson TX2, IMX296, V4L2 Driver, Sony IMX296, Sony IMX296, IMX296 Linux driver, Sony IMX296 Linux Driver, Sony, Sony IMX296, IMX 296." metadescription="Check out our comprehensive overview and features of the Sony IMX296 Linux driver for NVIDIA Jetson!."></seo> |
|
| |
|
| <table>
| | {{Driver-shoppingcart & NVIDIA logo & RR Contact}} |
| <tr>
| | <br> |
| <td><div class="clear; float:right">__TOC__</div></td> | |
| <td> | | <td> |
| <html>
| | {{GStreamer debug}} |
| <div id='product-component-1594671854188'></div>
| |
| <script type="text/javascript">
| |
| /*<![CDATA[*/
| |
| (function () {
| |
| var scriptURL = 'https://sdks.shopifycdn.com/buy-button/latest/buy-button-storefront.min.js';
| |
| if (window.ShopifyBuy) {
| |
| if (window.ShopifyBuy.UI) {
| |
| ShopifyBuyInit();
| |
| } else {
| |
| loadScript();
| |
| }
| |
| } else {
| |
| loadScript();
| |
| }
| |
| function loadScript() {
| |
| var script = document.createElement('script');
| |
| script.async = true;
| |
| script.src = scriptURL;
| |
| (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(script);
| |
| script.onload = ShopifyBuyInit;
| |
| }
| |
| function ShopifyBuyInit() {
| |
| var client = ShopifyBuy.buildClient({
| |
| domain: 'ridgerun1.myshopify.com',
| |
| storefrontAccessToken: 'b0ca98633a82de5d2f63cd51f5af30ac',
| |
| });
| |
| ShopifyBuy.UI.onReady(client).then(function (ui) {
| |
| ui.createComponent('product', {
| |
| id: '1684420821063',
| |
| node: document.getElementById('product-component-1594671854188'),
| |
| moneyFormat: '%24%7B%7Bamount%7D%7D',
| |
| options: {
| |
| "product": {
| |
| "styles": {
| |
| "product": {
| |
| "@media (min-width: 601px)": {
| |
| "max-width": "calc(25% - 20px)",
| |
| "margin-left": "20px",
| |
| "margin-bottom": "50px"
| |
| }
| |
| },
| |
| "button": {
| |
| "font-family": "Open Sans, sans-serif",
| |
| "font-weight": "bold",
| |
| "font-size": "18px",
| |
| "padding-top": "17px",
| |
| "padding-bottom": "17px",
| |
| ":hover": {
| |
| "background-color": "#0187a7"
| |
| },
| |
| "background-color": "#0196ba",
| |
| ":focus": {
| |
| "background-color": "#0187a7"
| |
| },
| |
| "border-radius": "5px",
| |
| "padding-left": "50px",
| |
| "padding-right": "50px"
| |
| },
| |
| "quantityInput": {
| |
| "font-size": "18px",
| |
| "padding-top": "17px",
| |
| "padding-bottom": "17px"
| |
| }
| |
| },
| |
| "text": {
| |
| "button": "Add to cart"
| |
| },
| |
| "googleFonts": [
| |
| "Open Sans"
| |
| ]
| |
| },
| |
| "productSet": {
| |
| "styles": {
| |
| "products": {
| |
| "@media (min-width: 601px)": {
| |
| "margin-left": "-20px"
| |
| }
| |
| }
| |
| }
| |
| },
| |
| "modalProduct": {
| |
| "contents": {
| |
| "img": false,
| |
| "imgWithCarousel": true,
| |
| "button": false,
| |
| "buttonWithQuantity": true
| |
| },
| |
| "styles": {
| |
| "product": {
| |
| "@media (min-width: 601px)": {
| |
| "max-width": "100%",
| |
| "margin-left": "0px",
| |
| "margin-bottom": "0px"
| |
| }
| |
| },
| |
| "button": {
| |
| "font-family": "Open Sans, sans-serif",
| |
| "font-weight": "bold",
| |
| "font-size": "18px",
| |
| "padding-top": "17px",
| |
| "padding-bottom": "17px",
| |
| ":hover": {
| |
| "background-color": "#0187a7"
| |
| },
| |
| "background-color": "#0196ba",
| |
| ":focus": {
| |
| "background-color": "#0187a7"
| |
| },
| |
| "border-radius": "5px",
| |
| "padding-left": "50px",
| |
| "padding-right": "50px"
| |
| },
| |
| "quantityInput": {
| |
| "font-size": "18px",
| |
| "padding-top": "17px",
| |
| "padding-bottom": "17px"
| |
| }
| |
| },
| |
| "googleFonts": [
| |
| "Open Sans"
| |
| ]
| |
| },
| |
| "cart": {
| |
| "styles": {
| |
| "button": {
| |
| "font-family": "Open Sans, sans-serif",
| |
| "font-weight": "bold",
| |
| "font-size": "18px",
| |
| "padding-top": "17px",
| |
| "padding-bottom": "17px",
| |
| ":hover": {
| |
| "background-color": "#0187a7"
| |
| },
| |
| "background-color": "#0196ba",
| |
| ":focus": {
| |
| "background-color": "#0187a7"
| |
| },
| |
| "border-radius": "5px"
| |
| },
| |
| "title": {
| |
| "color": "#4c4c4c"
| |
| },
| |
| "header": {
| |
| "color": "#4c4c4c"
| |
| },
| |
| "lineItems": {
| |
| "color": "#4c4c4c"
| |
| },
| |
| "subtotalText": {
| |
| "color": "#4c4c4c"
| |
| },
| |
| "subtotal": {
| |
| "color": "#4c4c4c"
| |
| },
| |
| "notice": {
| |
| "color": "#4c4c4c"
| |
| },
| |
| "currency": {
| |
| "color": "#4c4c4c"
| |
| },
| |
| "close": {
| |
| "color": "#4c4c4c",
| |
| ":hover": {
| |
| "color": "#4c4c4c"
| |
| }
| |
| },
| |
| "empty": {
| |
| "color": "#4c4c4c"
| |
| },
| |
| "noteDescription": {
| |
| "color": "#4c4c4c"
| |
| },
| |
| "discountText": {
| |
| "color": "#4c4c4c"
| |
| },
| |
| "discountIcon": {
| |
| "fill": "#4c4c4c"
| |
| },
| |
| "discountAmount": {
| |
| "color": "#4c4c4c"
| |
| }
| |
| },
| |
| "googleFonts": [
| |
| "Open Sans"
| |
| ]
| |
| },
| |
| "toggle": {
| |
| "styles": {
| |
| "toggle": {
| |
| "font-family": "Open Sans, sans-serif",
| |
| "font-weight": "bold",
| |
| "background-color": "#0196ba",
| |
| ":hover": {
| |
| "background-color": "#0187a7"
| |
| },
| |
| ":focus": {
| |
| "background-color": "#0187a7"
| |
| }
| |
| },
| |
| "count": {
| |
| "font-size": "18px"
| |
| }
| |
| },
| |
| "googleFonts": [
| |
| "Open Sans"
| |
| ]
| |
| },
| |
| "lineItem": {
| |
| "styles": {
| |
| "variantTitle": {
| |
| "color": "#4c4c4c"
| |
| },
| |
| "title": {
| |
| "color": "#4c4c4c"
| |
| },
| |
| "price": {
| |
| "color": "#4c4c4c"
| |
| },
| |
| "fullPrice": {
| |
| "color": "#4c4c4c"
| |
| },
| |
| "discount": {
| |
| "color": "#4c4c4c"
| |
| },
| |
| "discountIcon": {
| |
| "fill": "#4c4c4c"
| |
| },
| |
| "quantity": {
| |
| "color": "#4c4c4c"
| |
| },
| |
| "quantityIncrement": {
| |
| "color": "#4c4c4c",
| |
| "border-color": "#4c4c4c"
| |
| },
| |
| "quantityDecrement": {
| |
| "color": "#4c4c4c",
| |
| "border-color": "#4c4c4c"
| |
| },
| |
| "quantityInput": {
| |
| "color": "#4c4c4c",
| |
| "border-color": "#4c4c4c"
| |
| }
| |
| }
| |
| }
| |
| },
| |
| });
| |
| });
| |
| }
| |
| })(); | |
| /*]]>*/
| |
| </script>
| |
| </html>
| |
| <td> | | <td> |
| {{GStreamer debug}}
| | |
| <td>
| | {{message|title=Driver List Information|Refer to the [[RidgeRun_Linux_Camera_Drivers/Available_Camera_Drivers/List_of_Tested_Camera_Sensors|RidgeRun Linux Camera Drivers]] to meet all the list of Drivers available}} |
| <center>
| |
| {{ContactUs Button}} | |
| </center>
| |
| </tr>
| |
| </table>
| |
|
| |
|
| == Sony IMX296 Features == | | == Sony IMX296 Features == |
Line 394: |
Line 136: |
| {{ContactUs}} | | {{ContactUs}} |
|
| |
|
| [[Category:Jetson]][[Category:Jetson V4L2 Drivers]][[Category:V4L2 Drivers]] | | [[Category:Jetson]][[Category:Jetson V4L2 Drivers]][[Category:Sony]] |
Problems running the pipelines shown on this page? Please see our GStreamer Debugging guide for help.
|
Driver List Information
Sony IMX296 Features
The IMX296 is a CMOS imaging sensor with an optical size-type of 1/2.9 and with approximately 1.58M effective pixels that enable high resolution and high speed imaging without distortion. (Taken from Vision Components).
Learn more about the sensor at the Vision Components webpage!
Supported Platforms
Features Included in the Driver
TX2
|
Feature
|
Details
|
SDK Support
|
RAW10 Bayer RGGB Capture
|
|
L4T 32.3.1 / Jetpack 4.3
|
1440x1080@60fps
|
1 Lane
|
L4T 32.3.1 / Jetpack 4.3
|
Gain control
|
|
L4T 32.3.1 / Jetpack 4.3
|
Exposure control
|
|
L4T 32.3.1 / Jetpack 4.3
|
V4l2 Media Controller driver
|
|
L4T 32.3.1 / Jetpack 4.3
|
ISP usage through NvArgusCameraSrc
|
|
L4T 32.3.1 / Jetpack 4.3
|
|
Enabling the Driver
In order to use this driver, you have to patch and compile the kernel source using JetPack:
- Once you have the source code, apply the following patch in order to add the changes required for the IMX296 camera at kernel and dtb level.
4.3_imx296-v0.2.0.patch
- Follow the instructions in (Build Kernel) for building the kernel, and then flash the image.
Make sure to enable IMX296 driver support:
make menuconfig
-> Device Drivers
-> Multimedia support
-> NVIDIA overlay Encoders, decoders, sensors and other helper chips
-> <*> IMX296 camera sensor support
Using the Driver
GStreamer Examples
Capture and Display
gst-launch-1.0 nvarguscamerasrc ! "video/x-raw(memory:NVMM),width=1440,height=1080" ! nvoverlaysink
Video Encoding
RECORDING_FILE="recording.mp4"
gst-launch-1.0 nvarguscamerasrc ! "video/x-raw(memory:NVMM),width=1440,height=1080" ! nvv4l2h264enc ! h264parse ! qtmux ! filesink location=$RECORDING_FILE -e
The sensor will capture in the 1440x1080@60 mode and the pipeline will encode the video and save it into recording.mp4 file.
Global Gain Example
The driver allows global gain control.
v4l2-ctl -d /dev/video0 --set-ctrl gain=$GAIN_VALUE
Exposure Example
The driver allows also exposure time control.
v4l2-ctl -d /dev/video0 --set-ctrl exposure=$EXPOSURE_VALUE
Performance
Using the next pipeline we were able to measure the framerate and CPU load for single capture with perf element:
gst-launch-1.0 nvarguscamerasrc ! "video/x-raw(memory:NVMM),width=1440,height=1080" ! perf print-arm-load=true ! fakesink
GST-PERF INFO: timestamp 0:05:30.224956703; bps: 483840,000; fps: 60,000; cpu: 17;
GST-PERF INFO: timestamp 0:05:31.224502705; bps: 483840,000; fps: 60,001; cpu: 16;
GST-PERF INFO: timestamp 0:05:32.225708807; bps: 483840,000; fps: 60,000; cpu: 15;
GST-PERF INFO: timestamp 0:05:33.226909308; bps: 483840,000; fps: 59,900; cpu: 17;
GST-PERF INFO: timestamp 0:05:34.227202400; bps: 483840,000; fps: 60,002; cpu: 16;