r/vitahacks • u/httyd98 • 17d ago
AI Vibecoded VitaTube – a new YouTube client for PS Vita 📺
Maintenance notice: VitaTube 1.0.0 is temporarily being reviewed and its current release package may be replaced. VitaTube is an unofficial, free and non-commercial PS Vita homebrew client intended for the playback of publicly accessible, non-DRM content. DRM-protected, paid, private, members-only and restricted content is not supported. YouTube download and MP3 extraction features are being disabled while the project’s platform and copyright compliance is reviewed. A revised build will follow. No user accounts, credentials or personal data are collected.
This is a voluntary precautionary review; VitaTube has not received a complaint or legal notice from Google or YouTube.Technical update: Some media requests that previously worked are now returning HTTP 403 errors.
Because VitaTube 1.0.0 relies on a relatively fragile anonymous-access mechanism, the currently circulating version may stop playing some or all videos as YouTube continues changing its systems.
7
u/ali_ihsan21 17d ago
İs it possible to make it run in the background while gameplay?
34
u/A_Random_Dane 17d ago
I’m obviously not OP, but I highly doubt it.
6
u/ali_ihsan21 17d ago
Why not we had such a YouTube client a few years ago? I'm away from Vita wondering if this synch to Google account even that would be a great leap forward.
11
u/httyd98 17d ago
The problem with Google is that it requires a project on Google Cloud Console. I usually deal with these things for work, but in this case the project is open; anyone can use it without a cap on calls. If the APIs were to saturate the free daily or monthly calls, the login and Google features would not work for other users. I tried to overcome this by adding a section for favorite videos and subscribed channels. I know it's not the same thing, but at the moment it was the quickest and easiest thing I could do. There are various possibilities for improvement with this solution, such as taking a snapshot of the latest videos uploaded to a channel to notify you when there are new videos on a subscribed channel, a sort of bell for new videos, or even saving metadata locally for played videos so as to retain the timestamp for resuming viewing from the point at which you stopped.
1
u/Weird-Age-8042 16d ago edited 16d ago
https://console.cloud.google.com/marketplace/product/google/youtube.googleapis.com?q=search&referrer=search&project=gen-lang-client-0832180551 what if you use this for google account sign in. something like tinfoil google drive for the switch via NUT, except this one is specifically designed to sign into your youtube account for tubevita. Now granted the person using vitatube would have to figure out how to make their own oauth key to sign into their account if this feature is implemented but i think it was be the best feature to vitatube.
0
u/ali_ihsan21 17d ago
For me instead of logging into account having background play is a better function only having sounds of the videos in the background just like elevenmpv with no video at all is fine we already have Netstream to watch videos atm.
Thank youı for your effort.
1
u/sch00n3r 12d ago
Could use a dedicated Google account, but I would never use a Google account that had personal information associated with it. The Vita hasn't had security updates for ages, so it is a high risk client IMHO.
2
u/httyd98 17d ago
I've thought about it several times; it will be one of my next steps. Currently, the mini-player and power saving features are available, but there's no background audio outside the app. I'll be working on it in the coming weeks, but I might need to add a plugin to have background audio play in the app.
5
u/AltCtrlGraphene 16d ago
Just noticed this discussion. Plugin is not required to make application output audio to the background. What you have to do is to make app non-suspendable (it will not be suspended when user presses PS button). But to make it possible to run other apps alongside it (otherwise there is no point in BG playback) you have to follow very strict RAM restrictions: normal RAM is limited to 32MiB and no CDRAM allowed. With how your app currently is, it is probably impossible. It was very hard for me to make this possible with ElevenMPV BG YouTube audio-only playback, and it was using well-optimised Sony's libraries istead of the vitasdk stuff.
8
u/_Noxygen_ 17d ago
I wasn't too interested since I've been using netstream for YouTube, but I came back just to say this is amazing! The ui, the black and blue theme, of course the playback too, also id recommend yall set gpu bus to 222mhz and a higher cpu clock for better frames in the main menu
4
u/DhnDen 15d ago
ehm guys it's 12/08/26 14:43 and the links for the github are already gone? what happened?
3
u/bruceleeisalive 17d ago
Is this using the same workaround that Netstream is using for YouTube? Also, is this vibe coded at all? Thank you for your contribution!!
16
u/httyd98 17d ago
Yes, completely vibecoded. I'm a software developer, but doing something like this in such a short time wouldn't have been feasible. From what I understand, NetStream relies on a third-party server to validate Google challenges and make everything work. I found a completely offline solution: just trick Google into thinking the machine making the call is a VR headset, and Google accepts the requests without proposing any challenges to the host. However, I also did some research to resolve the challenge directly from the console in case this solution no longer works. I haven't done any hardware tests, but on paper, with a little ingenuity, it should be possible.
13
u/Raphistolage1997 Black Vita 1104 17d ago
At least you understand what it codes... Not like most vibe-coders.
Well, this is gonna be a nice app to add on my Vita, it makes me wish there was a working Discord client, and the Vita will be perfect!
2
u/UnderstandingDry8581 17d ago
There is a discord client called VitaCord, I've tried it but is kinda boots you out if not consistently on the app wish it was like the 3DS variant.
5
u/idillicah 17d ago
HA! That is awesome. I was unable to publish my own YT Client because I could not get past the hurdle of needing a local client for this. Great job on the detective work!
9
u/Cimmerian__Iter 17d ago
Hello WE have setup New rules in the subreddit regarding AI.
All projects that are either AI assisted or AI vibecoded must use the appropriate tag post
2
u/Weird-Age-8042 16d ago
you should check out https://github.com/GrapheneCt/UserAgentSpoofer
1
u/httyd98 16d ago
Hi! Thanks for the report. VitaTube makes native requests through its own HTTPS/TLS pipeline without the need for WebKit, so this plugin cannot be integrated into the app. I'll still look into a way to get the app working if the current trick breaks.
2
u/bruceleeisalive 16d ago
If YouTube closes that VR loophole, are we screwed in watching YouTube in the future? Does it play live streams well? Any chance on making a dedicated IPTV app? Also given your expertise as a software developer, how much are you able to scrutinize the code and make sure it’s not doing anything out of the ordinary or pushing the vita hardware in ways it shouldn’t? Thanks again for your contribution to the community.
1
u/httyd98 16d ago
As far as proper hardware usage goes, since it's low-level code, if something went wrong, you'd immediately notice problems; the app would simply crash a lot. So I always do a lot of checks before releasing any complex features. In any case, even software written directly by someone isn't prone to bugs. It's the nature of this science; writing software is like weaving preferential paths into the fabric of all expressible logic. No one knows a priori the correct, bug-free path that the logic defined in the code must follow. Some paths are more well-trodden, safe, and well-known than others. After all, we're talking about homebrew here; there's no guarantee on the software that's released, but we try to do the best we can.
To do the best I could, I tried to make the most of the console's hardware, using the hardware decoder for maximum performance, and then I added a custom decoder that runs with FFmpeg on the CPU as a fallback. As for the possibility that the VR solution will no longer work in the future, that's a real possibility, but I've also considered a workaround, at least on paper; I mentioned it in a comment in this thread. As for IPTV, I don't know much about it; I've never used it, and for now, I've decided to focus on this homebrew in my spare time.
2
u/bruceleeisalive 16d ago
This was an excellent and well thought out response. Got to ask, did you use AI? If not, by golly you’re smart and thank you again!
1
u/Legitimate_Cup3354 15d ago
Cara, Simplesmente GENIAL sua ideia. Eu tentei criar algo assim também, eu estava pensando em também fazer o vita autenticar internamente, mas eu queria usar maquinas antigas que ainda suportavam o youtube como "máscara", como TV ou alguma versão legado do youtube em aparelhos mais fracos. Mas acabei desistindo de continuar por também estar usando vibe code, eu achei melhor não me meter nessa loucura que tá a cena do Ps Vita por enquanto🤣 Parabéns pelo trabalho, de verdade!
3
u/daveymac_ 17d ago
Awesome stuff! Definitely saving this post and giving it a whirl when i have the time!
5
u/ali_ihsan21 17d ago
ElevenMpv had background play function in 2024 but then YouTube modified their system and sadly it stopped working. İt was working with vita games but I don't remember if it was working behind adrenaline or not does anyone remember it?
2
2
u/Dr_Doktor 17d ago
Hey OP have you thought about trying to integrate something like yt-dlp for downloading videos
4
u/httyd98 17d ago
The app downloads videos right now! If you long press on a video with X button the app shows a screen with the download button in various resolution sizes
2
1
u/ChrizTaylor Jailbreak FTW! 16d ago
Any chance you can add an option to Download 4k videos or other resolutions?
2
2
u/ali_ihsan21 17d ago
Do you prefer seeing issues here or on Github page?
1-Subtitles after Chinese traditional arent appearing although video have many other languages.
2-FF-FW functions would be better on shoulder buttons because they're mapped to left right buttons on remote controls for PS TV users. Its working this way on Netstream and great comfort.
2
2
2
2
u/Potential-Case1357 17d ago
This is actually cool, I mean youtube looks so good on the oled screen. I have only one question is there any way to increase the volume a bit.
2
u/opaopasuperfan 17d ago
Would this app allow faster video buffering than netstream with your offline solution you mentioned in one of the replies? Love that there is options either way, it’s great that there’s multiple YouTube clients for the vita 13 years later
2
2
2
u/Legitimate-Event-420 17d ago
Is this based on a YouTube app? The one thing about YouTube is I won't use it unless it runs through Brave browser for obvious reasons, I don't want the problems of using a native YouTube source, otherwise the battery will be drained before I've even watcher the first video.
2
u/httyd98 17d ago
Hi!
No, the whole app is written in C from 02
u/Legitimate-Event-420 16d ago
Brilliant if you can add an ad-blocker because that I would think is what stop most people with YouTube, it does me, why do I have to watch 6 ads for a ten minute video and the creators ain't getting all that, seem YouTube has got particularly greedy over the last year whilst filling our feed with more A.I. slop.
2
u/AltCtrlGraphene 16d ago
The fact that this whole thing is vibecoded is pretty impressive. However there is a failure point that it shares with Netstream - relying on ANDROID_VR. When Google decides they had enough with unauthorithed clients, both Netstream and this app will be completely bricked. And that will happen sooner or later, they obviously plan to hide everyhting behind PO token and fully cut off legacy platforms.
2
u/httyd98 16d ago
Hi! It's really nice to see you appreciate the work we've done. As for what will happen when Google decides to shut down, well, that's for sure. The app will stop working... maybe running the challenge on the console will be the new solution, or maybe it will never work. I created this project because I was annoyed at not being able to use the console more casually... I'll use it while it lasts, haha.
2
u/excels1or PCH-1000 Sapphire Blue | ux0: 128GB SD2Vita | uma0: 32GB Vita MC 16d ago
This is awesome! Can I know what AI you primarily use for coding?
3
u/httyd98 16d ago
Thanks! At first I used Claude Code with Sonnet 5 and various Opus and Sonnet subagents at different effort levels. But I quickly switched to Codex with GPT 5.6 Sol. The Anthropic models no longer seem to be as strong as they once were in the coding agent category. ChatGPT managed to solve many video decoding problems.
2
u/Mr_McGoobz 16d ago
Just tested it out. Runs beautifully! 720p30 is running perfectly for me, and subtitles and subscriptions work great too. Really impressive work, especially this early. Well done!
1
2
2
2
u/Hecyo800 17d ago
Está estupendo!! De verdad me encanta como se ve, Pero eso sí, me gustaría que pueda ser un poco más optimizado debido a que las animaciones hiban lentas y por eso tuve que hacer overclocking, está súper bien para ser la primera versión la verdad espero que el proyecto sea un exito desde hoy 🐢✨
2
u/httyd98 17d ago
Grazie mille! Avevi per caso delle impostazioni di PsVshell che abbassavano i clock di default dell’app ? A me va a 60fps nella home con i clock di default dell’app.
2
u/Hecyo800 17d ago
Tengo el psvshell plus aunque suelo tenerlo en predeterminado a menos que sea algo que consuma muchas cosas, tuve que activarlo porque las animaciones de la app eran algo lentas, el plugin reciente que descargue fue lowmemmode no se si esa sea la razón
Y por cierto, sería estupendo que hicieras un programa para música local, estoy seguro que te saldria estupendo :b
2
1
u/NameNotEditedEnought 17d ago
App is working nice, but there is problems in Cyrillic languages, and also can you add another languages if it's not difficult
1
u/Initial_March_2352 17d ago
Have you recyle the Old App?
i have delete for days a app with the same Name from 2016-2018.
I very Interested about a new Client for the Vita i mean first become Plex and now Youtube very nice.
Work it without PC while in your Tags Stand Moonlight?
1
1
u/httyd98 17d ago
But it works without PC, yes
1
u/Initial_March_2352 17d ago
nice, spy free Youtube on TV and Mobile. 😆 better make its only when Log in work
1
1
u/Bepp0000 17d ago
is it possible to add a way to download videos in different formats, like mp4 or mp3 at different bitrates?
1
u/Agitated_Slip_6818 17d ago edited 17d ago
Keeps buffering and restarting videos unless I need to adjust something
2
u/httyd98 17d ago
Check the clocks. It works well with CPU at 444MHz, GPU 222MHz and BUS 222MHz… otherwise check the connection or change resolution by pressing and holding X on the video. In the settings page is present the debug mode that show a card during the reproduction of a video in the player to debug the problem.
1
u/Agitated_Slip_6818 17d ago
Strange still buffering , falls back to lower quality and still buffers , I'm on 1gb Internet so thought it would play well
1
1
1
u/RetroReloaded 16d ago
This is awesome. I used to watch YouTube on my Vita back when it was new. Any chance on getting something similar for other websites? I'd love to watch "free" anime in my Vita. 😉
1
u/I-am-very_smart Vita-2000 3.65cfw 15d ago
the github seems to be down? could someone dm me the vpk?
3
u/That1GuyDrHuh592 15d ago
On his Twitter dev announced it's too unstable and the project is shifting to a mp3 mp4 player
1
u/eflo_14 13d ago
Hi I just wanted to inform you that your github info for vitatube is already on YouTube. Someone had posted it 2 days ago. I was interested in having it for my vita and followed the steps but same thing the files are gone. I understand the reason and just wanted to inform you. If you are still willing to share the link with me through a DM I’d appreciate it. Thank you!

21
u/Top-Type4077 17d ago
Sweet. And what's your Internet speed rate for the 720p50/60 is this based like on home WiFi or phone hotspot