Shop OBEX P1 Docs P2 Docs Learn Events
VGA In — Parallax Forums

VGA In

peterdovepeterdove Posts: 1
edited 2007-01-02 08:32 in Propeller 1
Hi All,

I want to receive a high res VGA signal in, and then convert that to an LED display ( several hundred across ). Is this posssible, doesn anyone have an object which can read a VGA signal in?

Cheers

Peter

Comments

  • Mike GreenMike Green Posts: 23,101
    edited 2006-12-31 20:56
    The current Propeller is not fast enough to handle a high resolution VGA signal. First of all, VGA uses analog signals and you'd have to have a high speed analog to digital converter for each color channel. They only need to be 2 bit resolution so this could be done with some high speed comparators. You'd need to have enough memory to hold a screen image (640x480 = 300+K) and the built-in memory of the Propeller is limited (32K of main memory). You could use external memory with some external circuitry to do this.

    The existing high resolution drivers are mostly for use with text so the driver only needs a screen buffer for the text characters. The highest resolution that can be done with two cogs is 1024 x 768.

    To answer your question more directly: No, there isn't an object and there likely is not going to be for standard video input (either TV or VGA) because of the external circuitry needed and the fact that there is special shift register/counter circuitry on the current Propeller chip to support video output, but no corresponding circuitry for video input so all of the work would have to be done by the processor(s) directly and they're not fast enough for the task.
  • Areal PersonAreal Person Posts: 197
    edited 2007-01-01 01:57
    Question:

    Would it·be possiable to build a Propeller based electronic circuit that would process a VGA input signal
    and store a certain amount of the processed video signal·as data in memory buffers?

    Obviously, the propeller could only process the signal at around 80mhz or so.
    My guess is this would not be at +30fps which is needed for fluid motion (correct ?)
    and the input signal speed would need to balanced with the processors signal processing·as not to drop frames.

    If this is possiable, then the Propeller would be able to manage still frame video presentations,
    even some types of buffered VGA animations.·Things that you would see in a powerpoint
    presentation. Lower speed stuff.

    Could it be done with multi-propeller synchronized Parallel Processing· ? (IEEEkkk I·bit myself) tongue.gif

    But, then again, Insted of VGA input, if you just had the video in a file. or other, like SD card
    then you would not need any Video input processing, you would just need to read the stored data
    and display it. Using the LED Matrix as the final memory area ?

    Is this correct ? Please correct my mistakes.

    Thank you,

    -Areal Person


    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    I have a tree growing out of my head, but

    what do you expect ? I'm a programmer.

    Post Edited (Areal Person) : 1/1/2007 2:16:34 AM GMT
  • Dennis FerronDennis Ferron Posts: 480
    edited 2007-01-02 08:17
    If you look at it from the standpoint of the VGA signal it looks like too much data for the Prop to handle, but turn the problem around - rather than dumping an entire VGA signal into an LCD, what you really want to do is fill a little teaspoon of data (the LCD) from a big ocean of data (the VGA signal). For still-life displays you can take as long as you want to "dip into" this ocean and take as many sips of the data as you want. Even for motion video, the LCD can't update all that fast anyhow so you're not looking at 640x480 at 60 FPS, you're really looking at 128x90 or so at just 10 or 15 FPS.

    What I'm talking about when I say "dipping into the ocean" is that you could just use an ADC with a good sample-hold to take snapshots of the incoming signal and process them one pixel at a time slowly. All you need to do is have accurate timing from the sync signals. Let's say you can only process fast enough to handle every 10th pixel. What you do is you sample columns 0, 10, 20, etc., then on the next frame you delay exactly 1 pixel-time interval from the HSync, by means of a counter, and then sample columns 1, 11, 21, etc.

    The idea is based on research I did on how commercial VGA signal converters work many years ago when someone needed to convert a proprietary video signal to VGA. It was the first project I did for a real, paying client (I was still in high school), but it turned out that rather than having to build a real converter, all I needed to do was build an adapter because a good multisync VGA monitor can sync to darn near anything. Thanks to the plethora of kinds of computer graphics modes, modern monitors have to be able to handle almost anything you throw at them, and they do it well.

    I really want to see someone get the Propeller to process video input. As a hack challenge, I plan to build a Propeller based TV receiver inside of an Altoids tin, and this subsampling technique is why I think it will be possible. I will still need extra circuitry to tune in the TV signal and separate out the sync signals, and I will probably ignore color; I will just be sampling the luminance signal with a sample-hold ADC.
  • Harrison.Harrison. Posts: 484
    edited 2007-01-02 08:32
    I did almost exactly what Dennis is talking about, except I did it with a PIC micro. I used a EL1881N sync separator chip to sync to the horizontal scan lines and then I sampled every 20-ish pixels using the onboard ADC and sent the data to a vb application. I got a very ugly, but somewhat recognizable result. This was a quick project to prove to me that a small microcontroller could capture pixels and get a relatively good grayscale value per pixel.

    I hope to do the same with the Propeller. Actually I hope to be able to downsample a ntsc video signal into a 128x128 grayscale bitmap, display it on a vga monitor, and serve it over the internet via my WIP (work in progress) tcp stack. Of course I will probably end up with something like 0.01 fps, but it should be good for still images such as outdoor scenery, etc.

    Attached is an image from the project that I noted earlier.

    Harrison
    417 x 467 - 28K
Sign In or Register to comment.