TriPlayer - A feature-rich audio player for Nintendo Switch

wd7qBy2.png


Hey everyone! I'd like to introduce a little something I've been working on since February. After 9 months I believe it's at a state where it's ready for a public release!

Let me introduce TriPlayer, my project that came to be due to the lack of a "proper" audio player for the Nintendo Switch. TriPlayer automatically scans and organizes any audio files you have in the /music folder on the root of your SD card. As pictures speak a thousand words, I'll let the following screenshot help describe it:

ci80MLQ.jpg

As you can see, it handles the metadata embedded within audio files in order to create a complete music library. The music will keep playing while you're playing a game or using another application. Playback can be controlled via the provided Tesla overlay or by pressing button combinations on the controller.

Requirements:
  • A recent version of Atmosphere (0.10.0+)
    • TriPlayer may work on other CFWs, however this is untested
    • The sysmodule requires ~3MB of free memory, so this may clash with other sysmodules
  • A recent firmware version
    • Once again this hasn't been tested, but some code relies on newer firmwares so I suggest 10.0.0+
  • Some music!
    • FLAC, MP3 and WAV are supported at this time
Installation:

1. Download the latest release as a .zip from here
2. Extract the contents to the root of your SD card
3. Place some music in /music
4. Launch the application and wait for the initial scan to complete

GitHub:

A lot more information and usage is covered on my GitHub repo. See the readme for a brief introduction and link to the wiki where everything is covered in detail.
https://github.com/tallbl0nde/TriPlayer

Final Notes:

I hope TriPlayer is useful to many of you who have been wanting a music player on the Switch. As it's quite complex, there's a good chance I've missed some major bugs. Please report these as issues on GitHub. Note that should the sysmodule crash, it will crash the entire OS. While I personally haven't had any crashes while both listening and not listening to music, I recommend stopping the sysmodule (either via the app or overlay) when you're not using it if you want to be extra safe.

Enjoy! :)
 
Last edited by tallbl0nde, , Reason: Update supported formats

Tmofnrev

Well-Known Member
Newcomer
Joined
Oct 13, 2021
Messages
77
Trophies
0
Age
34
XP
279
Country
United States
I can't get it to work for the life of me, it either says can't connect to sysmodule or just hangs on preparing your library I tried deleting all the funky characters I tried the nsp I tried the nro... I'm on 13.0.0|AMS 1.1.1|S
 
  • Like
Reactions: falcorr

MagnesG

GBAtemp Lurker
Member
Joined
Sep 11, 2016
Messages
432
Trophies
0
XP
1,974
Country
United States
I can't get it to work for the life of me, it either says can't connect to sysmodule or just hangs on preparing your library I tried deleting all the funky characters I tried the nsp I tried the nro... I'm on 13.0.0|AMS 1.1.1|S
Not sure if it would work on the latest 13 fw...
 
  • Like
Reactions: Tmofnrev

Maskyyy

Member
Newcomer
Joined
Aug 13, 2021
Messages
10
Trophies
0
Age
28
XP
139
Country
Philippines
this is probs so niche that its not worth your time to fix but triplayer seems to crash when playing Nintendo switch online SNES & NES games



Maybe it’s an issue with 12.1.0 firmware and atmosphere 19.5?

(P.S. this homebrew app is so awesome, thanks for the work you’ve done on this! so many games have become much more enjoyable now that I have the option to play my favorite songs over them)
 

Thorhax

Well-Known Member
Member
Joined
Apr 15, 2020
Messages
476
Trophies
0
Age
43
XP
2,132
Country
Canada
I just updated to 13.1.0 and it doesn't work for me

is it working for anyone else?
Works for me, I have the newest everything. firmware + atmos.
Also I always update all my plugins and overlays when updating atmos.

Do it all manually if you want it done right imho
 

tallbl0nde

Well-Known Member
OP
Member
Joined
Jan 11, 2019
Messages
147
Trophies
0
Age
24
XP
1,538
Country
Australia
Hey all, I've been receiving a lot of requests for external HDD support recently so I wanted to address a few things. First of all, I've moved on from Switch homebrew now (a full-time programming job takes the excitement of coding away :P) so I'm not intending to continue development on TriPlayer. Should there be a major breakage due to a new FW or any other reasons I'll do my best to fix it however.

Thanks for all the support (both with NX-Activity-Log and TriPlayer), I've enjoyed developing both pieces of software and hope they continue to be useful! As the code is open source, maybe someone else can continue development or at least implement external HDD support.

I'll continue to lurk on GBAtemp so you might see me around the place!
 

Maskyyy

Member
Newcomer
Joined
Aug 13, 2021
Messages
10
Trophies
0
Age
28
XP
139
Country
Philippines
Hey all, I've been receiving a lot of requests for external HDD support recently so I wanted to address a few things. First of all, I've moved on from Switch homebrew now (a full-time programming job takes the excitement of coding away :P) so I'm not intending to continue development on TriPlayer. Should there be a major breakage due to a new FW or any other reasons I'll do my best to fix it however.

Thanks for all the support (both with NX-Activity-Log and TriPlayer), I've enjoyed developing both pieces of software and hope they continue to be useful! As the code is open source, maybe someone else can continue development or at least implement external HDD support.

I'll continue to lurk on GBAtemp so you might see me around the place!

sad news for me that you're done with it

but this app is awesome

makes some games more tolerable
it was something I didn't know I really needed

thanks for making it! :yayswitch:
 

Allen-R

Well-Known Member
Member
Joined
Sep 4, 2020
Messages
108
Trophies
0
Age
24
XP
519
Country
Philippines
After some trial & error (using Hekate), I think I finally got the list for supported characters.
(I prolly wasn't thorough enough but I also don't exactly have all the time in the world so...)
Maybe this has more to do with the switch filesystem in general than TriPlayer since other homebrew also seems to not show special characters (Tinfoil MTP doesn't even let you copy some and if they do make it, they won't show up when you reconnect unless it's through Hekate).

Characters for filenames in TriPlayer:

Music File Detected:
  • !
  • #
  • $
  • %
  • &
  • '
  • (
  • )
  • +
  • , [code 44]
  • -
  • .
  • 0-9
  • ;
  • =
  • @
  • A-Z
  • [
  • ]
  • ^
  • _
  • `
  • a-z
  • {
  • }
  • ~
  • space

The usual NOT OK (in Windows):
  • *
  • "
  • /
  • \
  • :
  • |
  • <
  • >
  • ?

Music File not detected in songlist (but makes TriPlayer go past the loading screen):
  • [code 145] - Left single quotation mark
  • ’ [code 146] - Right single quotation mark
  • “ [code 147] - Left double quotation mark
  • ” [code 148] - Right double quotation mark
  • • [code 149] - Bullet
  • Japanese Unicode characters

Doesn't even make TriPlayer go past the loading screen:
I'm assuming all other characters in extended ASCII code, so:
  • € [code 128]
  • [code 129 ?]
  • ‚ [code 130]
  • [code 131-144]
  • [code 150-255]

  • other Unicode characters (like Hebrew)
 

Allen-R

Well-Known Member
Member
Joined
Sep 4, 2020
Messages
108
Trophies
0
Age
24
XP
519
Country
Philippines
Tho, it seems like the names in the tags are ok to be any character.

(in this case, I guess it's prolly fine if the filename isn't really exactly the same as long as it's close enough -I also just translated my Japanese track names with google- since TriPlayer just shows the name from the tags anyway which can be the exact and correct name of the song)
 
Last edited by Allen-R,

Allen-R

Well-Known Member
Member
Joined
Sep 4, 2020
Messages
108
Trophies
0
Age
24
XP
519
Country
Philippines
Finally!!! All 755 Tracks are now detected in TriPlayer after checking & renaming them using this as a guideline:
Characters for filenames in TriPlayer:

Music File Detected:
  • !
  • #
  • $
  • %
  • &
  • '
  • (
  • )
  • +
  • , [code 44]
  • -
  • .
  • 0-9
  • ;
  • =
  • @
  • A-Z
  • [
  • ]
  • ^
  • _
  • `
  • a-z
  • {
  • }
  • ~
  • space


A while ago (maybe around ~2pm? UTC +8), I thought TriPlayer had a limit and maybe I had put too many music files that it's just stuck in some kind of loading loop. At first, I thought it needed to take some time but after maybe an hour it was still "loading." Turns out it really was just a filename problem.
 
Last edited by Allen-R,

Allen-R

Well-Known Member
Member
Joined
Sep 4, 2020
Messages
108
Trophies
0
Age
24
XP
519
Country
Philippines
For some reason, some of the Album art is broken when imported (showing this repeating pattern):
1644866121545.png


original:
folder.jpg


I have to fix it by extracting the artwork from the music file and editing it in photoshop by reducing it to 400x400 and saving it as a png with the same filename as the corrupted cover art from "switch\TriPlayer\images\album" and just replacing that with the newly edited one.
 

tallbl0nde

Well-Known Member
OP
Member
Joined
Jan 11, 2019
Messages
147
Trophies
0
Age
24
XP
1,538
Country
Australia
After some trial & error (using Hekate), I think I finally got the list for supported characters.
(I prolly wasn't thorough enough but I also don't exactly have all the time in the world so...)
Maybe this has more to do with the switch filesystem in general than TriPlayer since other homebrew also seems to not show special characters (Tinfoil MTP doesn't even let you copy some and if they do make it, they won't show up when you reconnect unless it's through Hekate).

Characters for filenames in TriPlayer:

Music File Detected:
  • !
  • #
  • $
  • %
  • &
  • '
  • (
  • )
  • +
  • , [code 44]
  • -
  • .
  • 0-9
  • ;
  • =
  • @
  • A-Z
  • [
  • ]
  • ^
  • _
  • `
  • a-z
  • {
  • }
  • ~
  • space

The usual NOT OK (in Windows):
  • *
  • "
  • /
  • \
  • :
  • |
  • <
  • >
  • ?

Music File not detected in songlist (but makes TriPlayer go past the loading screen):
  • [code 145] - Left single quotation mark
  • ’ [code 146] - Right single quotation mark
  • “ [code 147] - Left double quotation mark
  • ” [code 148] - Right double quotation mark
  • • [code 149] - Bullet
  • Japanese Unicode characters

Doesn't even make TriPlayer go past the loading screen:
I'm assuming all other characters in extended ASCII code, so:
  • € [code 128]
  • [code 129 ?]
  • ‚ [code 130]
  • [code 131-144]
  • [code 150-255]

  • other Unicode characters (like Hebrew)
Thanks for this, it's not a limitation of TriPlayer but the Switch FS service itself (at least I believe so) as if for example you name a text file using a 'bad' character and try to view it or edit it using homebrew bad things tend to happen.

For some reason, some of the Album art is broken when imported (showing this repeating pattern):
View attachment 298146

original:
View attachment 298149

I have to fix it by extracting the artwork from the music file and editing it in photoshop by reducing it to 400x400 and saving it as a png with the same filename as the corrupted cover art from "switch\TriPlayer\images\album" and just replacing that with the newly edited one.
This looks like an image channel issue, I'm using a library to handle images so you may have found a bug in the library :P
 
  • Like
Reactions: Allen-R

falcorr

Well-Known Member
Member
Joined
Sep 26, 2019
Messages
139
Trophies
0
XP
746
Country
Australia
TriPlayer v1.1.1: An error occurred communicating with the sysmodule ... etc

Firmware 13.2.1
Atmosphere 1.2.6

Edit: appears to have needed a first run through the application.
 
Last edited by falcorr,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Psionic Roshambo @ Psionic Roshambo: https://www.youtube.com/watch?v=pkYA4rALqEE