FPGA Intellectual Property
PCI Express*, Networking and Connectivity, Memory Interfaces, DSP IP, and Video IP
6356 Discussions

VIP scaler - dare I say Interlace?

Altera_Forum
Honored Contributor II
1,052 Views

Hello all, 

 

does the VIP scaler support interlace? 

 

 

My test system: 

 

1080i Test pattern generator 

Clipper producing 720 x 540i clipped frame (top left quadrant) 

Scaler - 720 x 540i -> 720 x 576i 

Clocked video out 720 x576i 

RGB out 

 

(I think you can see where I am going in this design ;) ) 

 

 

I know this all works apart from the scaler. When its in the system and working it *seems* to discard every other frame and just insert 36 blank lines at the top of the frame. 

 

 

We all know the documentation is a bit weak on the VIP stuff, so can anyone let me know how to impliment my slight vertical upscale if possible? I would settle for a way to fool the CVO to give me a 576i output with a 540i input if at all possible... 

 

Cheers
0 Kudos
5 Replies
Altera_Forum
Honored Contributor II
354 Views

In general, scaling interlaced video does not look very good but I believe the scaler can do that. The catch is probably that you have to set up the core to scale up from 270 to 288 rather than from 540 to 576. This is certainly true for the clipper as well; to get the quadrant you are interested in you should clip to 720 x 220.

0 Kudos
Altera_Forum
Honored Contributor II
354 Views

The scaler only accepts progressive video (as the documentation indicates). However, that being said, the scaler will take in interlaced video and scale each field individually. The problem though is that I believe it will output a video control packet marked as progressive. Not sure what this will do to the CVO block. 

 

Jake
0 Kudos
Altera_Forum
Honored Contributor II
354 Views

Ah yes thanks, if I do a search It's hidden away in table 5-8 right at the end of the scaler section. Progressive only :( ah well its not my money :)  

 

I have a clipper set up to 720x540 and it *seems* to be clipping ok - but then with a bars test pattern its hard to tell if its getting the vertical right!  

The documentation states:  

 

"Either. Interlaced inputs are accepted but are treated as progressive inputs"  

 

So I'm guessing that if I feed in a 576i signal and I tell it to clip 500 it will clip 288 from field 0 (the whole field) and then 212 from field 1? Does the clipper then output a progressive control packet? 

 

If thats how it works I shall be trying 720x220 as suggested by vgs. 

 

 

I imagine If i feed the CVO with progressive while set to interlace output it will go awfully wrong ;) but I will give it a try. 

 

 

Thanks for your comments!
0 Kudos
Altera_Forum
Honored Contributor II
354 Views

Hi, 

 

I am assuming that you generator is a proper Avalon-ST Video Generator and that it generates a valid control packet before each interlaced field packet. 

 

If you feed in a 576i signal and tell the clipper to clip to 500 things could go horribly wrong because the clipper will attempt to clip your input fields to 500 which if higher than what they actually are. 

 

This is what "Interlaced inputs are accepted but are treated as progressive inputs" means. The clipper will consider each field as an individual frame so the heights should be field heights not frame heights (cf VIP example design, there is a clipper before the deinterlacer). 

 

I think the scaler is exactly the same and can scale interlaced fields but Jake could be right when he mentions that it will output an incorrect control packet after the scaling.
0 Kudos
Altera_Forum
Honored Contributor II
354 Views

If you want to do interleaved without the nuance of above, you could use a de-interlacer followed by a interlacer (the later is in 10.0 I think). Unfortunately doing a interleaved scale requires deinterlacing/interlacing at some level, although it would be more efficient if it were all done at once.

0 Kudos
Reply