Forum Discussion
De-interlacer with no frame buffer
Does the De-interlacer (BOB line duplication) work with no frame buffer?
We have a good NTSC with embedded syncs as a source. We tested the source: CVI-->CVO and the image was fine. Now adding a de-interlacer seems to cause problems with every of the frame. One frame is good, the other frame looks like the Y and the Cr/Cb are out of position and stretched. CVI --> clip to 486 --> de-interlace --> CVO 27MHZ 54MHz (the sopc clock is 54MHz) Any thooughts?7 Replies
- Altera_Forum
Honored Contributor
Two things I can think of:
1 - It seems to me you need to clip each field to 262 lines. 2 - 54MHz should be enough. You might try upping it. How big is the line buffer in the CVI? Jake - Altera_Forum
Honored Contributor
are you using 4:2:2 YCbCr? if so are you using VIP 9.1? i think 4:2:2 deinterlacer support was only added in the newest release.
- Altera_Forum
Honored Contributor
The BOB deinterlacer always supported 4:2:2. The MA algorithm required 4:4:4 prior to 9.1.
Jake - Altera_Forum
Honored Contributor
ah, thanks
- Altera_Forum
Honored Contributor
--- Quote Start --- Two things I can think of: 1 - It seems to me you need to clip each field to 262 lines. 2 - 54MHz should be enough. You might try upping it. How big is the line buffer in the CVI? Jake --- Quote End --- So, move the clip after the de-interlacer? CVI->de-interlace-clip(262 lines)->CVO Yes we are running 4:2:2 -- YCb/Cr Speeding up the sopc_clk will give the clip and de-interlacer a faster clock. What would you recommend? Should it be a simple multiple of the output clock or input clock? Does it need to be a simple multiple? We are feeding the PLL with th pixel clock from the decoder. Thanks, - Altera_Forum
Honored Contributor
The deinterlacer does not handle NTSC very well because F0 and F1 have different sizes (respectively 244 lines and 243 lines). If you use the bob algorithm without buffering directly after the CVI then different things could happen depending on the parameterization. With "synchronize on F1" you will get a progressive 486 lines output, with "synchronize on F0" you will get a progressive 488 lines output, with "synchronize on both" you will end up with an output that alternates between these two dimensions.
You may place the clipper before the deinterlacer and clip the input fields to a common size (eg, with clip to height=240) or after the deinterlacer to clip the progressive frame (eg, with clip to height=480). What is the height supported by your output? - Altera_Forum
Honored Contributor
CVI->clip(262 lines)->de_interlace->CVO
The reason for clipping each field to 262 is so that each field is presented to the de-interlacer with the same number of lines. As far as clock speed. Remember the deinterlacer has got to produce two lines of video for every one line that comes in. I'd have to do the calculation to see exactly what speed would be sufficient. Are you producing 480p30 or 480p60 on the output? Jake