AnsweredAssumed Answered

Slow-motion deinterlacing HD video with VDIC

Question asked by Carsten Behling on May 12, 2015
Latest reply on Jul 31, 2015 by Carsten Behling

Hi,

 

I try to get the following GStreamer pipeline working:

 

gst-launch-1.0 filesrc location=/vertrezmotion.ts ! tsdemux ! mpegvideoparse ! imxvpudec  ! imxipuvideotransform deinterlace-mode=1 ! imxg2dvideosink

 

It ends up with the following error:

 

...

Setting pipeline to PAUSED ...

[INFO]  Product Info: i.MX6Q/D/S

Pipeline is PREROLLING ...

[INFO]  bitstreamMode 1, chromaInterleave 0, mapType 0, tiled2LinearEnable 0

imx-ipuv3 2400000.ipu: IPU Warning - IPU_INT_STAT_10 = 0x40000000

imx-ipuv3 2800000.ipu: IPU Warning - IPU_INT_STAT_10 = 0x40000000

imx-ipuv3 2400000.ipu: IPU Warning - IPU_INT_STAT_10 = 0x40000000

imx-ipuv3 2400000.ipu: IPU Warning - IPU_INT_STAT_10

...

 

'deinterlace-mode=2' is working.

 

The test video resolution is 1920x1080. Origin of the test video:

http://www.w6rz.net/vertrezmotion.zip

 

Freescale kernel: 3.10.53,

Plugins: http://www.w6rz.net/vertrezmotion.zip Tag: 9ab6c7cc3c634d464a9f8933dd6657a796b6aafc

 

I already know that the IPU has to run in split mode for the left and right 960 pixel stripe due to the buffer limitation. The user interface driver (drivers/mxc/ipu_device.c) seems to split

the stripes in two completions.

 

A discussion of the split mode was already started here:

Regarding input resolution of i.MX6 IPU-VDIC

 

It seems that the current implementation in linux-3.10.53 doesn't support the deinterlacing of 1920x1080 frames.

 

a) So how can we fix it?

b) Is there a way to deinterlace the two stripes in parallel on the IPU, or maybe each of them on one of the two IPU's?

c) Or could we only deinterlace one stripe at a time?

 

Best regards

-Carsten

Outcomes