Low res video scaling

Hi.. I'm not having much luck finding some stuff but I'm trying to see if something like an Ardunio Nano (i kinda needs to be fairly small) is able to take a video input which is pretty low res, about 160x120, scale it up (possible with customisable 'pixel' size for height and width) and then output it about 320x240 for a small screen.

I've looked around and seen things like MRETV which seams to be able to do the ouput video and maybe scaling but not with a video input source. The input signal is either Composite or RGB (both are an option), with the screen taking an composite signal.

Any ideas or just not really that possible? my skill level is.. mmm.. not fantastic

Probably not a project for Arduino.
More likely an RPI or an FPGA.

Is there not a product available already?

It is very unlikely that any Arduino can do this, but the answer really depends on what you mean by "video input". There are many different types of video signals, digital and analog.

took a couple of moments to figure out RPI was Raspberry Pi and not the retail price index (sorry, I'm english and we stil use the rpi a fair bit^_^). I don't have any experince with a Pi or a FPGA.. there are some things which are drag and drop components for doing things but not really too interested in that.. they are a bit overkill with bits anyway..

The video input is either composite or RGB. the composite signal is Analogue, And I'm pretty sure the RGB is too. I've seen a couple of things hint about analogue scaling circuits but nothing which really makes too much sense and I can't quite see how it would work.

With a self-admitted skill level that is not fantastic, you probably won't get too far on a project like this using such low-recourse microcontrollers. Raspberry Pi and those drag and drop components are likely your best bet.
I'm not sure why you're opposed to them.

If you insist on trying though:

  1. Input your video to your Arduino
  2. Capture a frame
  3. Antialias that frame with 4:1 resolution
  4. Send that frame to your output stream

I think on most Arduinos you'll be lucky to get 1 fps.
The ESP32 is probably your best bet. There are graphics libraries already for it, but they have a steep learning curve.

What is this for?

A Raspberry Pi which has a good GPU would do the job.

Fair enough :slight_smile: thanks.

the project isn't really anything, just screwing around which I find can be a nice way to learn what I can and cannot do.

I'll look into ESP32 and Pi's..

If you are a bit more tech savvy I'd go with a BeagleBone over a RPi. The BeagleBorne has 3 processors for use. The mainprocessor runs the OS (Debian is my choice) and IDE and web server and other things that need an OS. Oh, the mainprocessor can run C++, Python, JS, and a few others under a single IDE. The BeagleBone comes with 2 PRU's, Programmable Real Time Units. The PRU's are 2 32 bit 200Mhz microcontrollers that interface with the main processor.

I like the Cloud9 IDE with the BeagleBone, allows for the running and debug of multiple development codes at the same time.

1 Like

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.