CSI Capture device deinterlacing on i.MX6

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

CSI Capture device deinterlacing on i.MX6

3,665 Views
ottob
Contributor IV

Hi There,


Does the latest released (Yocto 3.10.17 GA1.0.2) BSP support deinterlacing of video captured on the CSI port ? It would be preferable to deinterlace the input to avoid having to deal with it in the encoder or playback side.


I did see the post below, but it is fairly old so I figured I'd check for any updates


https://community.freescale.com/docs/DOC-93633#


Thanks, /Otto

12 Replies

1,810 Views
igorpadykov
NXP Employee
NXP Employee

Hi Otto

one can look at imx-test-3.10.17 mxc_v4l2_tvin.c

IMX6Q Interlaced TVIN bt656

Patch to Support BT656 and BT1120 Output For i.MX6 BSP

Best regards

igor

0 Kudos
Reply

1,810 Views
ottob
Contributor IV

Hi Igor,

Looks like mxc_v4l2_tvin.c does the deinterlacing on the output side, unless I'm mistaken... My main concern is when feeding CSI captured video to the encoder. I would like to avoid encoding interlaced video

Thanks,

/Otto

0 Kudos
Reply

1,810 Views
igorpadykov
NXP Employee
NXP Employee

Hi Otto

one can deinterlace to buffer, then encode it with vpu.

~igor

0 Kudos
Reply

1,810 Views
vikaspatil
Senior Contributor I

Hi Igor,

Do you mean the following mentioned path to show de-interlaced image ?

Camera --> V4l2 Capture -->[interlaced data] V4l2 Display (what output device to use here? virtual FB?) [de-interlaced data] -> [how to pass de-inteaced buffer here?]Encode --> Decode [like to use GPU path here for display] --> LCD

I think mxc_vpu_test might be modified to do what i mentioned above. But as I am not much familiar with VPU and video processing, it doesn't look trivial to me.

As I am also facing this saw kind artifacts issue and looking for solutions. See my post: How to avoid aliasing artifacts using X11/GLES2 to display interlaced YUYV camera output?

Regards,

Vikash

0 Kudos
Reply

1,810 Views
igorpadykov
NXP Employee
NXP Employee

Hi vikash

regarding csi deinterlacing one can look at simple SDK example

i.MX 6Series Platform SDK : Bare-metal SDK :

adv7180_capture.c, camera_test.c

Best regards

igor

0 Kudos
Reply

1,810 Views
vikaspatil
Senior Contributor I

Hi Igor,

I think you misunderstood my question. I am able to de-interlace using mxc_v4l2_tvin with -m option but it is V4l2 output path. I am not getting how to de-interlace using X11/GLES2.0 as v4l2 output path is not used with this?

Regards,

Vikash

0 Kudos
Reply

1,810 Views
igorpadykov
NXP Employee
NXP Employee

Hi vikash

I am not aware of de-interlacing methods using GLES2.0.

Best regards

igor

0 Kudos
Reply

1,810 Views
ottob
Contributor IV

Hi Igor,

Unfortunately I'm fairly green to the mx6 video processing. Any hints on what needs to be done or other similar code examples ?

Thanks,

/Otto

0 Kudos
Reply

1,810 Views
igorpadykov
NXP Employee
NXP Employee

Hi Otto

I think one can also look at adv7180 example (adv7180_capture.c)

in SDK

i.MX 6Series Platform SDK : Bare-metal SDK

~igor

1,810 Views
ottob
Contributor IV

Will do. Thanks a lot for the quick replies. Have a good weekend !

/Otto

0 Kudos
Reply

1,810 Views
saurabh206
Senior Contributor III

Hi

ottoblom

Did you able to implement the CSI De-interlacing support?

0 Kudos
Reply

1,810 Views
ottob
Contributor IV

Not yet

0 Kudos
Reply