Playing video on an 8-bit microcontroller

The LCD displays for Nokia phones have seen a ton of use as easily interfaced displays for Arduino or other microcontroller projects. Usually, these LCDs are only used for displaying a few lines of text, or if someone is feeling really fancy, a small graph. Shame, then that we don’t see more complicated and computationally difficult tasks like playing video very often. [Vinod] sent us his way of playing video on these small color screens, surprisingly using only an ATMega32 microprocessor.

The build started off by saving uncompressed image data on an SD card using code from a previous project. [Vinod] was able to write a slideshow program to go through the SD card one file at a time and displaying each image. From there, it was simply a matter of using a Python script to convert frames of an .AVI video file to an uncompressed image and display them at 15 frames/second.

Turning these videos into talkies was a bit of a problem, but after taking an uncompressed .WAV file and sending that to a PWM pin on the ATMega, [Vinod] managed to play sound alongside his video.

The result is the ability to play a video with sound at 15 frames a second and a 132 x 65 resolution. You can check out the demo video after the break.

Comments

  1. spiralbrain says:

    Awesome! Vinod is an Ace!

  2. slime says:

    Great!
    I did something like this three years before with a m644p and a miuchiz lcd. Take a look at http://www.youtube.com/watch?v=YYBC6IjbG-M

  3. electro says:

    really really amazing…. Great work….

  4. Vladimir says:

    What is the Quartz Frequency in this project?

  5. Roger Wilco says:

    Nice, it plays full motion videos

  6. edwin says:

    Really really amazing!!! Perfect hack… Couldn’t even believe how an 8 bit avr is doing this!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 94,612 other followers