3DAmnesic 3DS

From GameBrew - a wiki dedicated to Video Game Homebrew.

Author(s) Lectem
Type Media players
Version alpha
Licence Mixed
Last Updated 2015/01/03
Website Website
Download Download
Source Source

3Damnesic is a proof of concept media player for 3DS using ffmpeg, capable of playing MPEG4 and H264 video (no sound).

The project is no longer in development (abandoned).


  • Video.
  • MPEG4, H.264.
  • Hardware acceleration with Y2R for YUV -> RGB conversions.



  • DevkitArm.
  • Latest ctrulib.
  • ffmpeg compiled with the following instructions.


  • Copy the ffmpeg-configure3ds script in your ffmpeg source folder.
  • Open a shell/command line in ffmpeg directory.
    • Windows users please use sh before starting the script).
    • ./ffmpeg-configure3ds
    • make install

This will compile ffmpeg (with only a few features) with devkitArm and install it as a portlib.


With the Makefile:

  • Simply use make

With CMake:

  • mkdir cbuild && cd cbuild
  • For *NIX cmake -DCMAKE_TOOLCHAIN_FILE=DevkitArm3DS.cmake ..
  • For Windows cmake -DCMAKE_TOOLCHAIN_FILE=DevkitArm3DS.cmake -G"Unix Makefiles" ..
  • make

More information on the 3ds-cmake repository.

At the moment, you have to specify the file path in the main.c file at compilation time.

User guide

The file has to be named test.mp4 and be placed at the root of your SD card.

Use a video with dimensions multiple of 8 for best performance.

Videos up to 1024x1024 are supported (but will not run fullspeed and only if width<800, if you set up the framebuffers to be using RGBA).

This homebrew runs MPEG4 better than H.264 (H.264 is ~4 times slower). Some stats (video only, old 3DS):

  • 400x240 mpeg4 - 37fps.
  • 400x240 h264 - 16fps.

Known issues

No sound.

External links