Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
16 years ago

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's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored 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's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored 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's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    The BOB deinterlacer always supported 4:2:2. The MA algorithm required 4:4:4 prior to 9.1.

    Jake
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored 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's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored 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's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored 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