- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Board: Altera Cyclone III
Daughtercard: Bitec DVI card (only DVI in and DVI out, nothing else. http://www.bitec.ltd.uk/hsmc_dvi.html) Software: Quartus 8.1 Hi Everybody, So I have DVI input and DVI output using the aforementioned set and Bitec's " dvi 1024x768 loop-through c25 eval (beta) " bundled software. This program tripple-buffers the input on DDR SDRAM and then outputs. Its is running without any problems. So I can get the exact copy of my DVI input as my DVI out. my goal for now is to be able to change the color of some part of the screen (say a square or something.) while the rest of the screen looks normal on dvi out. And I preferably want to do it without using SOPC Image and video processing tools because I need to modify my code for extra manipulations on the display screen in order to reach my main goal. If SOPC is the way to go though, I wouldn't mind at all. My problem is that I am a newbie and I don't know how you work on pixels in FPGA environment using VHDL. any start up ideas on how to implement this thing would be highly appreciated. any sample code to work on pixels, etc. I looked up at Avalon S-T architecture and all that but as of now I can't combine all that info together. another thing, should i use vhdl (i think the bundled software was written in vhdl)or can i do this using nios hence by using c ?Link Copied
9 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Check out the Altera VIP Suite, it will do all you want and more; not the cheapest; but well worth the cost for a commercial design (IP License cost about $1000); however, you can try it all out before hand using the OpencorePlus method.
Mike- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you so much, Mike...
I have the VIP Suite but I still can't do it. I don't know how I can manipulate individual pixels. With VIP Suite you can "crop" part of your DVI input etc. but it is not what I want to accomplish here. I want to be able to work on individual pixels and manipulate them using Bitec's videostream sample code that I mentioned above. That is downloadable if anyone wants to check out to help me here. So can your or someone else help me understand how to get this thing started ? Thank you so much in advance- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
--- Quote Start --- Thank you so much, Mike... I have the VIP Suite but I still can't do it. I don't know how I can manipulate individual pixels. With VIP Suite you can "crop" part of your DVI input etc. but it is not what I want to accomplish here. I want to be able to work on individual pixels and manipulate them using Bitec's videostream sample code that I mentioned above. That is downloadable if anyone wants to check out to help me here. So can your or someone else help me understand how to get this thing started ? Thank you so much in advance --- Quote End --- If you use the Frame Buffer, you can manipulate the pixels all you want and MIX them into you stream or just work on the stream pixels while in the buffer. Or do you want to do something more? I'll admit, I have not looked at the BiTec code yet. Mike
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Again thank you for your guidance, Mike.
I will eventually want to do more but for now manipulating the pixels would be enough. By the way, the sample code on BiTec's website "dvi 1024x768 loop-through c25 eval (beta)" is already using the Frame Buffer (it is clearly seen in SOPC). But unfortunately I couldn't quite get a grasp of how they did the Frame buffering. Of course I am not talking about adding the Frame Buffer in VIP Suite and changing couple of parameters but about the written or computer generated part of the code. I was thinking if I could get help for better understanding of how video streaming is handled with "Altera Cyclone III - Bitec DVI Card" using VHDL so that I could -maybe- mimic it and inject my own code into BiTec's DVI sample code and manipulate the pixels the way I want. Thanks, Tyler- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi
You may want to consider a "Clocked Video Output" feeding into a "Clocked Video Input" SoPC components. You can then insert your pixel manipulation between the output and input using the datavalid signal to qualify pixels. You would have to insert some arbitrary video timing parameters on the "Clocked Video Output". Hope this helps ;->- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The biggest problem right now is that i don't know how to manipulate pixels; for example changing the rgb values of some random individual pixels besides using VIP suite and choosing a rectangle on the display to manipulate pixels and etc which is not what I want to do.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Can somebody help me out, please ?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Tyler,
I think the problem we are all having is understanding what it is you're trying to do. We have described how to manipulate the pixels in the frame buffer, how to manipulate the data as a stream. All video is based on a rectangle (Horz. x Vert.) and you can manipulate data as memory (Frame Buffer) by calculating the X/Y posistion you want to work on; you can count the lines and rows in the data stream (Decoding the X/Y point via decoding and counters). Tell us what you are actually attempting and maybe we can help. Mike- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Mike,
I want to ask you something else instead. Resolution in both of my displays are 1024x768 @60 Hz (That's how bitec's software needs them to be). When I add "clipper" into project and choose a rectangle of any size, 640x480, 1024x768,etc. , the output is very "shaky". It is impossible to see anything at the output. Do you know of any reasons that might have caused this ? PS: I am sorry, as I mentioned before, I am a newbie. So, even though you said you had described how to manipulate pixels, I just don't get it.
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page