I want to play video from SD card by using arduino mega 2560 and TFT 3.2" touch screen is it possible ?

if yes please tell me.

thanks in adavance

  • 2
    No, it is not possible.
    – Majenko
    Apr 8, 2017 at 9:23
  • @Majenko is it possible to play video from mobile via USB cable Apr 8, 2017 at 9:24
  • You mean watch a video on your phone? Sure. Plug the SD card into your phone and open the video.
    – Majenko
    Apr 8, 2017 at 9:25
  • 3
    It is not possible to play video on an Arduino from any source. The closest you could get would be to cycle through a set of images somewhat slowly.
    – Majenko
    Apr 8, 2017 at 10:03
  • 1
    The easiest way to understand why this is not possible is to "do the numbers", i.e. calculate the max frame rate for the TFT and image read from SD when using an Arduino. Even simply trying to read a file without decompression and writing to the TFT with give a very low frame rate. Apr 8, 2017 at 20:01

1 Answer 1


An ATMEGA2560 has no enough computational power to perform on-the-fly decoding, even at resolutions as low as 160x128 pixels and low frame rates.

The best you can hope for is a 20 fps, 16 bpp, 160x128 pixel video, directly streamed from the SD card, uncompressed (800kB/s), if the MCU runs at 16MHz. Even with such low specs, you'll have to use a trick, to implement a direct peripheral to peripheral transfer.

We made a guide here for the Arduino Uno (i.e. ATMEGA328P), but it should work also for ATMEGA2560 with little modifications: https://next-hack.com/index.php/2017/08/14/how-to-play-a-video-on-arduino-uno-46-playing-a-20-fps-animation-from-sd-card/

On the same link you'll find also the youtube links for a video guide.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.