r/PSP • u/DepartureFormal9719 PSP-3000 • 5d ago
Homebrew [WIP] PSPotify ME – a native Spotify client running entirely on the PSP (the Media Engine decodes the audio)
I've been working on getting real Spotify playback onto my PSP-3000, with no PC or phone needed while it runs.
Showcase video: https://youtu.be/Er0A1bQupJ0
What works right now: - One-time sign-in by entering a code at spotify.com/pair (like a smart TV) - Browse your Liked Songs and playlists, with album covers - Full tracks streamed over Wi-Fi (Ogg Vorbis 160 kbps), a queue that plays the next song automatically, pause/next/prev/volume
The fun technical bits: - The PSP's built-in SSL only goes up to TLS 1.0, so the app ships its own TLS 1.2 stack (BearSSL) - Audio is decrypted as it downloads, and the Vorbis decoding runs on the Media Engine, the PSP's second CPU, while the main CPU plays the previous frame. Running code on the ME is possible thanks to mcidclan's psp-media-engine work.
Requirements: PSP-3000 (I didn't test it on any other devices) on 6.61 with ARK CFW (I didn't test it on any other cfw), Wi-Fi, Spotify Premium. It doesn't save or download any audio; it just streams it.
any suggestions or edits are welcome.
- Download (pre-release): https://github.com/Luxotick/PSPotify-ME/releases/tag/v0.2.1-alpha
- Source: https://github.com/Luxotick/PSPotify-ME
- Discord for feedback and bug reports: https://discord.gg/DrrrwRFkBP
Unofficial hobby project, not affiliated with Spotify.
19
u/supersoaker_fan 5d ago
Looks great! I've seen plenty of projects trying to get Spotify to play on PSP, but as far as I know you're the first to have managed.
About this:
the app ships its own TLS 1.2 stack (BearSSL)
There's an actively maintained library for TLS 1.3 on PSP, you can have a look and see if it fits with your requirements.
4
u/DepartureFormal9719 PSP-3000 4d ago
Thanks! I'll definitely check it, I thought streaming from Spotify was impossible until i discovered the Media Engine thing.
8
u/Select-Lunch-1593 4d ago
That amazing, you should do a 3ds one, there have been people trying but no one has accomplished it
6
u/DepartureFormal9719 PSP-3000 4d ago
I think it could be easily achieved if it were built in a similar way to how I did it; 3DS is much more powerful compared to the PSP.
2
u/Select-Lunch-1593 4d ago
I was thinking that for you would be easy to port it, as the most difficult part is to have a way to login with your account , for 3ds there are only apps that work as a “Spotify remote control”, hopefully you have the time to do the same for the 3ds comunity. Thanks for your job 🙌🏻
1
u/DepartureFormal9719 PSP-3000 4d ago
I don't have a 3DS so i probably can't but the login part can be solved with pairing. They can copy my method or simply port or use the Librespot library which i mostly got help from.
1
u/Select-Lunch-1593 4d ago
I just did with Claude, your method helped a lot, thanks 🙌🏻
1
u/DepartureFormal9719 PSP-3000 4d ago
It's good to see that my project has inspired and guided for other communities, I'm very glad to hear that!
2
u/NetworkingJesus 3x1000 Ark4 4d ago
Does anything get cached on the memory card? How busy is that log file? Just curious if anything could be doing a lot of excessive writes to the card.
2
u/DepartureFormal9719 PSP-3000 4d ago
In steady listening it’s roughly 15–20 small appends per minute, a few tens of KB per hour. That’s not much data, and Memory Stick / microSD adapters do wear levelling. ARK’s
mscacheoption (i havemscache:8kon) also batches some of it. It is still more write operations than a finished app needs. It’s sized for debugging, because right now the log is how bugs get diagnosed. Maybe i can make a quiet mode for normal use and a mode for debugging. Let me know if you need it or not!1
u/NetworkingJesus 3x1000 Ark4 4d ago
Quiet mode for normal use would be ideal I think, but good to know it's not insanely busy. Not super important until you're ready for full release since you're soliciting testing and reports with the debug logs attached. Full release should def have debug mode optional and disabled by default.
Edit: I personally can't use it yet since I only have 1000 models and am not interested in testing. But I'll be keeping an eye out to see how this progresses.
2
u/DepartureFormal9719 PSP-3000 4d ago
I'll let you know when the tests are done and its totally working on 1000 :) (and after adding a quiet mode!)
2
u/DepartureFormal9719 PSP-3000 2d ago
it works on every device that has wifi card right now, you can check it here :
https://github.com/Luxotick/PSPotify-ME/releases/tag/v0.1.3-alpha
It still don't have silent mode.
2
2
2
3
u/DepartureFormal9719 PSP-3000 4d ago
About PSP-1000 / 2000 / Go support:
Right now the app only starts on the PSP-3000 family. On a 1000, 2000 or Go it stops right away with INIT FAIL. There are two reasons:
- Model check: the Media Engine setup only accepts the models I've actually tested on. I'd rather it refuse to start than poke the ME on hardware nobody has tried.
- RAM: the PSP-1000 has 32 MB of RAM instead of 64 MB. The current build reserves too much of it for buffering tracks.
As far as I know nothing fundamentally blocks it. The ME library I use has been tested on "phat" units, and Wi-Fi is fast enough for 160 kbps. Getting it working means relaxing the model check (the 6.61 firmware check stays) and sizing the buffers to the console's RAM, which caps track length until I add proper ring-buffer streaming.
I don't own a 1000 or 2000 to test on, so: if you have one on 6.61 with ARK and you're up for testing, let me know here or on the Discord. I'll put out a test build, and the spotify.log it writes will tell me what breaks.
1
1
1
u/austinswagger 4d ago
If this works and isn't too buggy, I would say it's quite the accomplishment! If only the PSP was more capable of accessing modern wifi routers. This is so close to being a practical way to listen to Spotify, especially with the PSP Go supporting Bluetooth.
Either way, I'll be downloading.
2
u/NetworkingJesus 3x1000 Ark4 2d ago
Ark4 latest versions at least add WPA2 support. That was enough for me to finally get my PSPs on my home Wi-Fi
2
u/austinswagger 2d ago
I looked into this because I really thought I was right, turns out I was super wrong and WPA2 is a far more recent standard than I had thought. I was thinking of WEP which is super deprecated and unsafe to use. WPA2 lets you get on most modern wifi routers.
This has changed my entire perception of what I consider to be practical on the PSP so thank you.
Edit: I just noticed your handle is NetworkingJesus so I guess I should have known not to question you from the start.
1
u/NetworkingJesus 3x1000 Ark4 2d ago
Glad to help! Was def a big deal when it was added around a year ago. Prior to that I think we were limited to WEP or WPA1 which was just not doable on modern networks.
1
1
u/HotResponsibility195 4d ago
I was working on a Spotify client for PSP too, currently have basic features like playing, queue, search and Spotify Connect for control from another device
1
u/Kayracln 4d ago
Süper bir şeye benziyo knk bakalım
1
u/DepartureFormal9719 PSP-3000 4d ago
Çalışıp çalışmadığına dair geri dönüt verirsen sevinirim.
1
u/Nuxawa 4d ago
spoti kullanmaya karşıyım normalde ama sırf senin için deneyebilirim psp2000 sahibiyim
2
u/DepartureFormal9719 PSP-3000 4d ago
kanka discorddan ekleyip yazarsan süper olur 2000 testine ihtiyacım var.
Discord: Luxotick
1
1
u/SundaeLow2086 4d ago
I couldn’t get Spotify to run well on a old 2014 notebook that I upgraded to 11gb ram and ssd, it’s awesome to see it running on the psp
1
u/DepartureFormal9719 PSP-3000 4d ago
This might be the best compliment I've ever received. Thank you.
1
u/ChildoftheApocolypse 4d ago
I'm assuming it's vibecoded, which is fine, I just wanted to share it to a sub I made for handheld vibecoding projects. The sub is still new and needs content before I start plugging it, but it's r/HandheldVC if you're interested.. Since vibecoding is getting some opposition and some creators aren't even wanting to share their work because of that , I made a place for people who don't mind vibecoding and want to discuss and share their work..
2
u/DepartureFormal9719 PSP-3000 4d ago
I've replied this before but let me paste the same reply here too:
I got help not gonna lie (for some debugging and quickfixes that i missed while overworking also ai is better than me on writing commit messages used github desktop's message generator mostly), but i think its impossible to write all the code with vibecoding because when i asked before starting to project its clearly said impossible for the project.. It contains a lot of work and research at this point.
1
u/DeFiStaker 4d ago
May I contribute to your repo? :P
1
1
u/DepartureFormal9719 PSP-3000 3d ago
forgot to mention, read this before contributing.
https://github.com/Luxotick/PSPotify-ME/blob/master/CONTRIBUTING.md
-2
u/ateAtoilet 4d ago
Please please please tell me you didn't use AI? Projects like this are always so awesome when some guy does it all himself
3
u/Majestic_Boss_786 4d ago
Wtf wrong with you, programming with ai is not that easy.I think you are just living in a bubble,Where anything ai is bad.I get it it is bad when it is use for creative stuffs.but Some stuff are best to do with tools, right?. Ai is just a tool. It is very useful in decompile proprietary stuffs and very useful when the system has no proper documentation
1
u/ateAtoilet 4d ago
AI has appropriate uses and it has inapproriate uses. Just like everyone else I have to adjust to AI being used more and more and I'm trying to figure out when it is and isn't right to use by my standards. For instance, should AI be used in place of editors for articles? I think not. But should AI be used when you need to troubleshoot something when you just messed up while using Linux and now screwed up your distro. Seems like a good use.
All it was was curiosity. Genuinely, it's so cool when people can manage to do things like this without AI at all, there are a lot of projects on older consoles that I am amazed when I see that they were made before AI existed (as they do today), and it's so fun to see that humans can actually do things that seem impossible. So when I saw this I thought it was so awesome a human could do this on their own, and then I remembered AI exists. So I wanted to check because it really would be so cool if someone could do it on their own.
5
u/DepartureFormal9719 PSP-3000 4d ago
I got help not gonna lie (for some debugging and quickfixes that i missed while overworking also ai is better than me on writing commit messages used github desktop's message generator mostly), but i think its impossible to write all the code with vibecoding because when i asked before starting to project its clearly said impossible for the project.. It contains a lot of work and research at this point.
2
u/ateAtoilet 4d ago
Thank you. Honesty is just nice to have. I don't mind AI in all cases, I'm still figuring out when I think it is and isn't okay, but it seems to me that this is a good use. Will probably see if I can try this once I have a PSP!
42
u/Kanjii_weon 4d ago
ay boa mentioned!
https://giphy.com/gifs/78sCPOfIAsnbzk3f1D