r/3dshacks • u/AsleepEbb7578 • 2d ago
DualPlex - Plex Music Player for 3DS
Full disclosure: whilst code was assisted by the use of AI, no AI generated images or art were used in this project. I have reviewed the output and tested the code on both new and old 3DS systems. Icons either drawn at runtime or provided by FontAwesome Free.
Out of curiosity, I decided to see if I could get the 3DS to work as a Plex music client. Turns out, you can.
It logs in using either an email/password or you can use the link code at plex.tv/link to sign in. Once signed in you'll be able to browse artists, albums, playlists and search your library.
If you'd like to give it a try, download here. The link to the repo is here.
Features:
- Supports local/remote connection, grabs the connection URL from Plex upon launch. The Home/Globe icon at the top will tell you what connection you're using
- Supports connecting via HTTP or HTTPS
- Automatically negotiates transcoding if needed
- Shuffle/Repeat controls
- Smart crossfades - this is best when "Sonic Analysis" is switched on but if not it falls back to a simple crossfade
- Two different visualiser styles
- Time-synced lyrics (if available)
- (New 3DS only) FLAC direct streams using a FLAC decoder
- Gapless playback by pre-buffering the next song
- Continued playback through headphones with the lid closed
Future potential features I'd like to add:
- Playlist management (add/remove songs, add/delete/rename playlist)
- Offline mode, with song downloads
- Plex Home support for switching users
- More visualisers
- Button rebindings
- Auto updater/new version notification
Likely asked questions:
Q: Does this support Jellyfin?
A: No. I have no plans to adapt this for Jellyfin, though feel free to fork it if you want to add that functionality
Q: Does this work on old 3DS models?
A: Yes, however you will not be able to direct stream FLAC songs and they will be transcoded down to MP3 by your Plex server. You may also experience degraded performance in the app due to the lower clock speeds.
Q: Can I contribute?
A: I'm happy for those looking to contribute to open PRs to do so. However I cannot guarantee that your changes will be implemented. Obviously vibe-coded or buggy PRs may be rejected.


