Decoding metadata from a CSI2 video stream on imx6

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Decoding metadata from a CSI2 video stream on imx6

Jump to solution
1,724 Views
ofer_livny
Contributor III

Hi

I am  currently using an iMX6Q processor with a MIPI-CSI2 camera sensor for streaming high resolution YUV422 video.

I'm using freescale's linux 3.0.35 LTIB BSP.

My CSI2 camera sensor is able to send a status line of the frame parameters along with the csi2 data stream.

According to its documentation, each line of the image has its datatype indicated in the beginning of the line - YUV422 for all the lines but the last one, and GENERIC for the last one, which holds the meta data.

In case it matters, the IPU is currently configured to convert the YUV422 into YUV420 in the IDMAC.

How does the CSI-IPU handle such data?  Does the IDMAC discriminate between the two datatypes? Is it considered as the same stream/channel? or a different one?

And most important - is this method supported in the existing linux MIPI CSI / IPU / V4L drivers ?

Thanks,

Ofer

Labels (4)
0 Kudos
1 Solution
816 Views
rogerio_silva
NXP Employee
NXP Employee

Hi ofer.livny,


     i.MX CSI will not receive mixed signal (YUV + metadata) and be able to discriminate and handle the YUV data. In order to receive this kind of data, you'll have to set i.MX CSI to receive generic data and store it on memory. After YUV correctly be stored on memory, you can use IPU/VPU to make some post processing operation on it.

     You will not take advantage of some on-the-fly operations that CSI/IPU can do. You will have to make it in software.


Rgds

Rogerio

View solution in original post

0 Kudos
1 Reply
817 Views
rogerio_silva
NXP Employee
NXP Employee

Hi ofer.livny,


     i.MX CSI will not receive mixed signal (YUV + metadata) and be able to discriminate and handle the YUV data. In order to receive this kind of data, you'll have to set i.MX CSI to receive generic data and store it on memory. After YUV correctly be stored on memory, you can use IPU/VPU to make some post processing operation on it.

     You will not take advantage of some on-the-fly operations that CSI/IPU can do. You will have to make it in software.


Rgds

Rogerio

0 Kudos