Homebrew [Release] Rocket Video Player - Play videos with the ultimate in picture quality

RocketVideoPlayer

RocketRobz

Stylish TWiLight Hero
OP
Developer
Joined
Oct 1, 2010
Messages
15,375
Trophies
2
Age
23
XP
18,339
Country
United States
NOTE: There are no plans on updating this.
Please use the MPEG4Player instead (included in TWiLight Menu++).​

Rocket Video Player logo.png
IMG_20190519_235944_994 (cropped and resized 2).png

After 9 years (as of this post) since the latest version of MoonShell released, the SD-compatible alternative to MoonShell is finally here!
Introducing the Rocket Video Player! It's the video player that plays video files with an extension called ".rvid", bringing you the ultimate in picture quality, thanks to it's lossless frame data.
If the video is uncompressed, you may need a big enough SD card.

Features
  • The same, but improved Rocket Video technology from TWiLight Menu++!
  • Console-based file browser to search for your .rvid file.
  • The video UI from the "DSi + Internet" app.
  • Support for videos up to 60FPS! (25-60FPS video requires the DS Memory Expansion Pak, or a DSi or 3DS with the app on the SD card.)
    .rvid size for those FPS is limited to 11MB (DSi) or 16MB (DSi) (not counting header and sound data, so if it has sound, it may still play).
  • Both progressive and interlaced video.
  • Audio up to 16khz. (If you we're expecting higher, sorry, it's the best the sound could get without slowing things down too much.)

Video UI Controls (touching works too!)
  • A: Play/Pause
  • B: Exit video
  • Left: Jump back to beginning

Downloads
  • Vid2RVID: Video to .rvid converter (Available for both Windows PC and DS/DSi. One is faster, and the other is slower. :P )
  • Rocket Video Player: Requires either nds-hb-menu or TWiLight Menu++ to use this

Known bugs
  • Audio will desync after a few minutes.
    Likely due to the player processing the videos at 24 FPS, instead of 23.976 FPS.
  • The video will freeze from time to time. You'll have to close the lid and open it again, to resume playback.

Integrating to TWiLight Menu++
  1. Place the app .nds in "sd:/_nds/TWiLightMenu/apps/".
  2. Launch any .rvid file in TWiLight Menu++.

Converting a video to .rvid

Preparation
  1. Download Vid2RVID above.
  2. Download an earlier build of VirtualDub2.
  3. Download and install Audacity.
  4. PC: Create a folder called "rvidFrames" in the same directory as "Vid2RVID.exe".
    DS/DSi: Create a folder called "rvidFrames" on the SD root.
Converting the sound (If your video has audio)
  1. Open Audacity.
  2. Click File->Open...
  3. Search for the video file, and open it.
  4. Click Tracks->Stereo Track to Mono
  5. Set Project Rate to 8000hz, 11025hz, or 16000hz.
  6. Click File->Export Audio...
  7. Go to the "rvidFrames" folder.
  8. Set filename to "sound.raw.pcm".
  9. Set "Save as type" to "Other uncompressed files".
  10. Under "Format Options", set header to "RAW (header-less)", and encoding to "Signed 16-bit PCM".
  11. Click "OK" on the remaining windows. If there is metadata visible, click "Clear".
  12. Since Audacity has added ".aiff" or whatever the extension is, to the end of "sound.raw.pcm", you'll need to remove that.
    If you only see "sound.raw.pcm", make sure that file extensions are set to be shown.
Extracting the video frames
  1. Open VirtualDub2.
  2. Click File->Open video file...
  3. Search for the video file, and open it.
  4. Click Video->Filters...
  5. Click Add...
  6. Search for "resize", and click on it.
  7. Click "OK".
  8. Under "New size", change the top-left number to "256".
  9. Under "Codec-friendly sizing", click "Multiples of 2".
  10. (Optional) If you still notice any blockiness after resizing, then download and use a de-blocking filter.
  11. If you want interlaced video (a way of increasing the frame rate), add the "interlaced" filter, and set it to "Even fields first".
  12. Click Video->Frame Rate...
  13. If the frame rate is shown as "current: 23.????", then under "Frame rate conversion", click "Convert to fps", and type in "24".
    If the frame rate is above "24.????", or if the resulting .rvid lags, then under "Frame rate conversion", click "Convert to fps", and type in "24", "15", or "10".
  14. Click File->Export->Image sequence...
  15. Set the exact following in this screenshot:
    vDub export settings.png
    and click "..." to find the "rvidFrames" folder.
  16. Click "OK" to export the frames.
Making the .rvid file
  1. Open a text editor.
  2. Type in [RVID], then press Enter.
  3. Type in the following:
    FRAMES = (Number shown on .png of last frame) (Example result: FRAMES = 1000)
    FPS = (The frame rate number you're using) (Example result: FPS = 24) (NOTE: FPS will be doubled by the player, if video is interlaced)
    V_RES = (The vertical resolution of the .png) (Example result: V_RES = 144)
  4. Save as "info.ini" in the "rvidFrames" folder.
  5. Open "Vid2RVID.exe", or if on the DS console, "Vid2RVID.nds".
  6. Press "A" to start the conversion.
  7. If "sound.raw.pcm" is found in "rvidFrames", you'll be asked what sample rate the sound is.
    Go for the project rate you used in Audacity.
  8. You're done! Rename "new.rvid" to a new filename with ".rvid" at the end, then copy it to your SD card to play in the Rocket Video Player!

Credits
  • Drenn: GameYob's .bmp renderer.
  • devkitPro: nds-hb-menu's file browsing code, and the use of devkitPro, devkitARM, libnds, and libfat.
  • chyyran: Sound streaming code used in TWiLight Menu++.

FAQs

Q: Does this work on a flashcard?
A: Yes.

Q: Will this ever read long progressive 25-60FPS videos?
A: Sadly, no. Too much for the hardware to handle.
 
Last edited by RocketRobz,

PRAGMA

Well-Known Member
Member
Joined
Dec 29, 2015
Messages
2,203
Trophies
1
Location
127.0.0.1
Website
pragma.pw
XP
4,801
Country
Ireland
ISL0QV9.jpg


This is my Pokemon S10 E01 1080p Remaster file converted to RVID playing on Rocket Video Player, it's 24000/1000 (24FPS), 256x192 (192p 4:3), just about 3GB filesize (.rvid file) and around 32k frames.
It does also have audio but the video does lag on my DSi LL (XL). It's running through TwilightMenu++ DSi Theme and doesnt have any of the Memory Expansion stuff.
 
Last edited by PRAGMA,

Alexander1970

XP not matters.
Member
Joined
Nov 8, 2018
Messages
14,602
Trophies
3
Age
52
Location
Austria
XP
908
Country
Austria
After 9 years (as of this post) since the latest version of MoonShell released, the SD-compatible alternative to MoonShell is finally here!

@Robz8 Do you have a normal life at all ? :P
Now you can be sure that you have none left.....only until Rocket player supports 7.1 sound and 4k with 3D.:rofl2:

Thank you for this great Application.
Finally i can watch ALL Lord of the Ring & The Hobbit extended movies on my DSi.

NINTENDO-DSI-XhhgghghgL-NITNENDO-DSI-XL-E45364-0(1).jpg


Great work,my tireless and magnificient friend.:bow:
 

RocketRobz

Stylish TWiLight Hero
OP
Developer
Joined
Oct 1, 2010
Messages
15,375
Trophies
2
Age
23
XP
18,339
Country
United States
Updated the VirualDub2 link to point to an earlier build.
If you're not getting the "frame0.png" filename, and instead shows more then one "0", please download the earlier build from the first post.
 
Last edited by RocketRobz,
  • Like
Reactions: Alexander1970

leo82309

Member
Newcomer
Joined
Sep 10, 2010
Messages
6
Trophies
0
XP
93
Country
United States
Looks great on flashcard (acekard 2i) and nds-bootstrap but I'm having a weird de-sync between the video and audio as the video progresses. I'll have to try a couple more videos but it seems to become noticeable around the 2 minute mark. Other than that I can't seem to get the prompt for compression on Vid2RVID v1.1 in windows. Great little app though, looking forward to your work on it.
 
  • Like
Reactions: Tarmfot

leo82309

Member
Newcomer
Joined
Sep 10, 2010
Messages
6
Trophies
0
XP
93
Country
United States
To help with the conversion process, you can use ffmpeg to convert frames and audio. Hope this is helpful.

Audio (16000hz):
ffmpeg -i video.mp4 -ac 1 -ar 16000 -f s16le -acodec pcm_s16le "sound.raw.pcm"

Video to PNG:
ffmpeg -i video.mp4 -r 24 -s 256x144 -start_number 0 frame%00d.png

My info.ini
[RVID]
FRAMES =[frame count]
FPS = 24
V_RES = 144
 
  • Like
Reactions: cimo95 and chronoss

RocketRobz

Stylish TWiLight Hero
OP
Developer
Joined
Oct 1, 2010
Messages
15,375
Trophies
2
Age
23
XP
18,339
Country
United States
Looks great on flashcard (acekard 2i) and nds-bootstrap but I'm having a weird de-sync between the video and audio as the video progresses. I'll have to try a couple more videos but it seems to become noticeable around the 2 minute mark. Other than that I can't seem to get the prompt for compression on Vid2RVID v1.1 in windows. Great little app though, looking forward to your work on it.
This app isn't booted by nds-bootstrap. It's booted by whatever app that can boot modern DS(i) homebrew, which in your case, is TWiLight Menu++.
 
  • Like
Reactions: Alexander1970

leo82309

Member
Newcomer
Joined
Sep 10, 2010
Messages
6
Trophies
0
XP
93
Country
United States
This app isn't booted by nds-bootstrap. It's booted by whatever app that can boot modern DS(i) homebrew, which in your case, is TWiLight Menu++.
Oh really, That's nice. Didn't know TWiLight Menu could do that on 3DS. Shows me my inexperience with it.
 
Last edited by leo82309,
General chit-chat
Help Users
    KenniesNewName @ KenniesNewName: Well these names make sense