Tutorial Homebrew Tuna-ViDS guide for DSi

HxOr1337

Member
OP
Newcomer
Joined
Jun 9, 2022
Messages
9
Trophies
0
Age
17
Location
United States
XP
53
Country
United States
Hello, I figured a lot of people ran into some problems trying to get Tuna-ViDS to work on their DSi. (App launches but then turns off DSi or returns to TWiLight Menu++). Note that this guide is for DSi and 3DS. I haven't tested on 3DS yet, but I assume the process is the same.

It is better to install the nightly version of TWiLight Menu++ to make this guide easier, as it has integration with TunaViDS. If you don't you have to set up `.argv` files, which can be very tedious to set up.

I will not share any videos for you to convert, since I know that is against ToS and whatnot. Please be careful to not share any copyrighted videos in this thread. You may be banned.


A special version of Tuna-ViDS is required to play on SD cards. This version works on both flashcards AND DSi SDs.
You can now use the current Tuna-ViDS rom.

Download the NDS rom from the end of the forum and place it somewhere in `sd:/tuna/`

Once you do this, do NOT change the default setting of the rom, it may not boot properly. Another thing is, do not download homebrew from untrusted sources. You can trust me, because the ROM is just original but with a modification to work with SD cards.


You must install the latest version of FFMpeg for your platform at ffmpeg dot org (I can't link or I will trip the spam detection).
Since it has been discovered that the DSi can support up to 20fps* VidX video, you can use a new version of the encoding command.

Update:
*High FPS videos may cause the player to crash early, so i recommend staying in the safe zone of around 10fps to 15fps.

So far, recent testing shows that changing just the bitrate has little to no effect IF FPS STAYS IN THE SAFE ZONE (up to 750kbps, tested with a 9 minute video), and will not cause any slowdowns. However, if the framerate is too high, the player WILL and CAN crash at some point in the video. Also note that large bitrate sizes might cause the DSi to crash in areas where lots of action on screen (ex: flashing colors, grafitti, or static)
Basically, if your framerate is too high, your video will likely crash at some point.

Stuff like rain and confetti will cause crashes on high framerates

Here is an example command that I use. (Volume will be 400% the original)

Bash:
ffmpeg -i video.mp4 -vsync cfr -f avi -r 15 -vf "scale=256:-2" -b 192k -bt 64k -vcodec libxvid -deinterlace -acodec libmp3lame -ar 32000 -ab 96k -ac 2 -filter:a "volume=4" video-ds.avi
Okay, now that you've learned how to encode videos, you can start putting them on your DSi for playback and entertainment.
If you haven't installed a nightly version of TWiLight Menu++, please do so now, because it allows you to open .AVI directly from the rom from `sd;/_nds/TWiLightMenu/apps/tuna-vids.nds`

If you'd rather stay on release, put the Tuna-ViDS rom in the same folder as your videos and make an ARGV file in the same folder containing something like the following:

`tuna-vids.nds movie.mp4`

Next, you want to eject your SD from your PC or Android after copying somewhere to your SD and boot TWiLight Menu++

Note: If you're not on nightly, make sure you open the ARGV file instead.

Video playback should be normal, and the video should not be quiet

As I pour more research into this, I will update this forum post to keep you updated on the limits. This means that if any new insightful discoveries are made, they will be posted here without hesitation.

Q&A: Why Tuna-ViDS?

A: It turns out that this is the only DSi SD compatible video player homebrew application capable of playing long videos. This is partly due to the video not needing to be a special codec, allowing viewing of the resulting file from anywhere that is able to decode XVid codec and MP3 audio.

Q: What's up with the negative number in the command?

A: By default FFMpeg stretches the video to fit the screen. Putting a -2 in the height preserves aspect ratio.

Q: Will there ever be more updates to the DSi version?

A: Maybe, we'll just have to wait and see.


Q: Is there a way to do this on a flashcard?

A: Yes, but it should be pretty much the same as doing it normally. But at that point, you would probably just want to use Moonshell2 and TWLM++ on the flashcard to load Moonshell in TWL mode for better results. The only purpose for doing this at all is to run it on the DSi's SD card, not a flash card.

Q: I have a flashcard now but I deleted the original files I used to convert. How do I convert my videos to DPG?

A: Easy, just use the latest DPG4x, although I'm not entirely sure it will work without a pre-encoding. If it doesn't, then you need to try the following:
Bash:
ffmpeg -i video.avi -a:c copy -v:c x264 preconvert.mp4
This code copies the audio codec, but re-encodes it back to x264.
 

Attachments

  • tuna-vidsDSi.zip
    242.6 KB · Views: 30
Last edited by HxOr1337,

RocketRobz

Stylish TWiLight Hero
Developer
Joined
Oct 1, 2010
Messages
15,380
Trophies
2
Age
23
XP
18,364
Country
United States
I've found that changing "-b 192k" to "-b 512k" greatly improves image quality, and plays without slowdown on DSi. This is tested with a 12FPS video, so a higher frame rate (maybe above 15FPS) may cause slowdown.

For DS consoles, "-b 320k" may work better, as the 512k setting on DS causes slowdown and crashes with an arm7 error later on. If there's still slowdown, then either "-b 256k" or "-b 192k" will work.
 

RocketRobz

Stylish TWiLight Hero
Developer
Joined
Oct 1, 2010
Messages
15,380
Trophies
2
Age
23
XP
18,364
Country
United States
  • Love
Reactions: chronoss

chronoss

Well-Known Member
Member
Joined
May 26, 2015
Messages
2,743
Trophies
1
XP
3,611
Country
Congo, Republic of the
In TWLMenu++ Settings, you can hide folders/directories, after you've opened the "roms" folder.
If you have on rom folder and you hide all folder/directories, you can't see any rom if your roms are in other folder (gb, gba...)... but you only see the rom which is in the rom folder if there is any...
Here's the guide: https://wiki.ds-homebrew.com/ds-index/videoplayers#tunavids-guide
You can just drag and drop the video file(s) into one of the batch files.
I need to reboot my pc because when i drop my video, the script do nothing...
I put all .exe file on the same folder with the script and it working... :)
 
General chit-chat
Help Users
  • No one is chatting at the moment.
    KenniesNewName @ KenniesNewName: Lame yuzu won't read subfolders on the deck