From GameBrew

AuthorDominic Ludlam
Last Updated2008/12/08
TypeMedia players

DSVideo player is a DS Media Player offers a simple and intuitive interface.


  • Video playback up to 12.5 fps.
  • Stereo Audio playback (MPEG-1 Layer 2 @ 112kbps/32kHz).
  • Full seeking support.
  • Feature-complete video playback controls.
  • File browser.


Download contains the following:

  • DSVideo - Main program.
  • DSVIdeo Converter - Command-line encoder binaries for windows. Requires Microsoft .NET Framework 3.5.
  • DSVEGUI - 3rd party GUI tools by rWatcher (optional). It presents a graphical interface for DSVideo encoding and depends on the command-line encoder binaries.

To install, DLDI patch .nds file and copy it to the root directory of the card.

For the converter, unzip then run Start/Accessories/Command Prompt (for Windows users) and use the dsvideo command-line tool provided.

Notes from developer:

There is a special version of DSVideo for the R4, which has been patched with a slightly modifier version of the R4 dldi driver. If you have an R4, you'll need to use the r4tf7.dldi patch and stop the R4 from autopatching it when it boots. This can be done with the dldinoap tool (source is in the thirdparty directory).

User guide

The top screen is devoted to video playback, and the bottom screen contains the touchscreen navigation interface.

The DSVideo encoder is flexible, accommodates a wide variety of source material, and is based on the widely used and highly portable ffmpeg.

Encode videos

The encoder is a command line utility. The following command will convert the file input_video.avi into a file called input_video.dsv which can then by copied onto your homebrew flashcard:

dsvideo input_video.avi

By default, 16:9 (or other widescreen sizes) will be encoded as centre-cut-out, meaning the height will fit the DS screen and the sides will be removed. The original video size can be kept by passing the -l option to the encoder, for example:

dsvideo -l input_video.avi

There are some other options to control the encoder which are explained (briefly) by running the encoder with no arguments. More details are available at the DSVideo website.


Stylus - Full control of the application


DSVideo 1.0 (Dekuwa)


Tested on DSTT/TTDS (firmware 1.17a12).


Version 1.01


  • Update help information when the encoder is run with no arguments to include the version number, to clarify the usage of the "-w" option and to show some examples of common use.
  • Remove -s option on windows, as it doesn't work there yet.
  • Add support for videos at 23.97fps.
  • Fix the makefile for x86_64 linux platforms.
  • Fix audio resampling bug when converting from sample rates lower than 32kHz.
  • Fix freezing / memory allocation problem with certain video inputs.
  • Change default output filename to be the input file name with the extension changed to ".dsv".


  • Unchanged.


  • DSVideo was developed by Dominic Ludlam.
  • Artwork and design by Denise Wilton.
  • Additional artwork and the website by Nick Ludlam.
  • Nick also made the spiffy intro video.
  • Many thanks to Lee Maguire for testing and feedback.
  • The sound track for the intro video is by James Tubbritt (Sharp), downloadable from

The following additional software is used:

  • devkitPro - Used to build the decoder.
  • FFMpeg - Used by the encoder to provide input video and audio data.
  • TwoLAME - Used by the encoder for audio encoding.
  • Libfatdragon - Used by the decoder to access the flash card on the DS.
  • Freetype2 - Used during the build process to convert a freetype font to a bitmap font usable on the DS.
  • Libungif - Used during the build process to convert images into a format usable on the DS.
  • Yasm - Used while building the encoder.

External links