Homebrew [WIP] 3ds-vgmstream new audio player (port of vgmstream)

froggestspirit

Aspiring Game Dev
Member
Joined
Jul 28, 2011
Messages
1,281
Trophies
1
XP
1,561
Country
United States
Droidsound-e is open-sourced, but it uses different libraries for those formats. It'd be nice to have this as a 3DS version of DSE though.
With a combination of DSE, and VGMStream, it would pretty much be the ultimate portable game music player... as long as there's a setting to play songs with built in loop points infinitely
 
  • Like
Reactions: SLiV3R

loco365

Well-Known Member
Member
Joined
Sep 1, 2010
Messages
5,457
Trophies
0
XP
2,927
With a combination of DSE, and VGMStream, it would pretty much be the ultimate portable game music player... as long as there's a setting to play songs with built in loop points infinitely
DSE has support for VGMStream, and it also has support for infinite file playback as well. I abuse both of those on a near-daily basis.
 
  • Like
Reactions: froggestspirit

froggestspirit

Aspiring Game Dev
Member
Joined
Jul 28, 2011
Messages
1,281
Trophies
1
XP
1,561
Country
United States
I knew it had the infinite playback, though I didn't know about the VGMStream support (since I figured if the music is streamed anyways, I have it in Mp3)
 

TricksterGuy

Well-Known Member
OP
Newcomer
Joined
Jan 16, 2016
Messages
81
Trophies
0
Age
37
Location
California
XP
221
Country
United States
Could you do a .CIA build?

Update done - https://github.com/TricksterGuy/3ds-vgmstream/releases/download/v0.1.3/3ds-vgmstream.cia

Tried porting this awesome player to CIA. Crashes after install but after restart it works fine. Nooby at this so it currently have a black icon and no name :P

EDIT: Closing the software also crashes the system. Unless someone can made a better banner and icon and a working RSF. I can probably make newer and working version of the CIA

EDIT 2: Pressing Start to exit works! Use that instead of shutting down the software. Currently finding a way to make the Home Button unresponsive

So I have modified my repo to build CIA files now. Unfortunately my cia does suffer from the same problems. I can take it from here now :) I can at least build a cia file now. In addition to those above issues try playing something and then hitting the home menu. BAM I hope you like what you are playing because its now your home menu music (along with the home menu theme music that is also playing).

(In addition updated my own 3ds template here for building cias)

Just so you know, BFWAV == FWAV, just as BRSTM == RSTM. There's probably a few more, but all that's different is the file extension. They're the exact same file format.

I'm not too sure about the RSTM == BRSTM claim taking a quick skim of vgmstream source code BRSTM is Nintendo (Wii I believe?); however, there is another RSTM format used by Rockstar Games (PS2) and there are two different codepaths to read each of them in (brstm and rstm)

But anyway the PS2 rstm format works.

These formats are sequenced. They would require implementing an emulator to play them, which might be found in something like droidsound-e (cant remember if it's open source). I think this is nice, but seeing some sequenced formats like USF, and 2SF would be awesome, though it'd be quite some work

I've never heard of droidsoound-e. I use audacious which has support for most of these video game formats via plugins, I have previously built the vgmstream plugin for it, and added infinite loop playing support for the 2sf format. It shouldn't be too terrible for me to port those plugins, the only issue though is finding the time to do so. I would like to tackle this at a later point, but my priority now is there are still a number of outstanding issues with the program as it is now.

With a combination of DSE, and VGMStream, it would pretty much be the ultimate portable game music player... as long as there's a setting to play songs with built in loop points infinitely

This player supports loop points right out of the box since the first release.


TL;DR There is now a CIA build available
 

froggestspirit

Aspiring Game Dev
Member
Joined
Jul 28, 2011
Messages
1,281
Trophies
1
XP
1,561
Country
United States
I've never heard of droidsoound-e. I use audacious which has support for most of these video game formats via plugins, I have previously built the vgmstream plugin for it, and added infinite loop playing support for the 2sf format. It shouldn't be too terrible for me to port those plugins, the only issue though is finding the time to do so. I would like to tackle this at a later point, but my priority now is there are still a number of outstanding issues with the program as it is now. This player supports loop points right out of the box since the first release.
Keep this up, and My ipod might start collecting dust! :)
 

TricksterGuy

Well-Known Member
OP
Newcomer
Joined
Jan 16, 2016
Messages
81
Trophies
0
Age
37
Location
California
XP
221
Country
United States
Well no big news. I will do another release once I fix more bugs.
(Already knocked out the sound popping issue)

Thanks for the cia version. I'm looking forward to the plugin support that can handle all the 8 & 16 bit formats :)

Well you may be waiting for some time. We will see how things go.

@TricksterGuy You could try talking to Rinnegatamante since his CHMM2 is able to preview .ogg files

Thanks, but I'm good. The code for ogg support is already there, there is just one problem or another that prevents it from working properly. I'll need to take a deeper dive to figure out whats going on. Anyway I love debugging.

Keep this up, and My ipod might start collecting dust! :)

Thanks
 

TricksterGuy

Well-Known Member
OP
Newcomer
Joined
Jan 16, 2016
Messages
81
Trophies
0
Age
37
Location
California
XP
221
Country
United States
Yeah old thread, but new update.

Good news
I just bothered to switch this from using the csnd service to dsp.

Bad news
I am not planning on improving the UI, at all. I have no intention of writing a full fledged music player so instead once I fix the remaining issues I will clean up the code and turn it into a library so someone who wants to make a music player with all of the various audio formats can use it (or someone who wants to play brstms in their homebrew). I will leave the UI as is as an example for how to use it. This was only a starter project for me to get into 3ds programming.

I may look into porting other audio format decoder libraries, but that is left for another day.

Release link
https://github.com/TricksterGuy/3ds-vgmstream/releases/tag/v0.2.0

Two things to note
1: see the known issues
2: you will need to dump your dsp firmware - See this tool written by The Cruel


QR code for FBI.
Ws9nPaR.png


How is the 3DS's battery life while it's playing music in sleep mode?

Don't know haven't tested.
 

Platinum Lucario

Well-Known Member
Member
Joined
May 17, 2014
Messages
535
Trophies
0
Age
31
Location
Warrnambool, Victoria, Australia
XP
499
Country
Australia
There's one bug that I've found in 3DS Vgmstream, all the audio formats play at a much lower quality bitrate than what the audio file actually is. As such, playing a CSTRM or a BCSTM will play a much lower quality than what the file itself supports
 

TinchoX

Azure Flame Kite
Member
Joined
Apr 18, 2015
Messages
627
Trophies
0
Age
35
XP
492
Country
Argentina
There's one bug that I've found in 3DS Vgmstream, all the audio formats play at a much lower quality bitrate than what the audio file actually is. As such, playing a CSTRM or a BCSTM will play a much lower quality than what the file itself supports
Yup, also the sound is on MONO instead of STEREO.

Hope the OP fixes it in a near future so everyone can enjoy music in a decent quality :P
 

PandaPandel

Active Member
Newcomer
Joined
Mar 17, 2024
Messages
31
Trophies
0
Age
30
XP
60
Country
United States
I just started using this app, and every file even supported types with the CIA version say "Bad File" every time loading a track.

anyone have any ideas?

Video of what happens:
 

Attachments

  • 20240318_215825.mp4
    5.7 MB

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    K3Nv2 @ K3Nv2: Lol rappers still promoting crypto