A work-in-progress homebrew YouTube client for the 3DS
As this app is still in the alpha stage, you may and will encounter crashes and other bugs.
If you find one of those, it would be helpful to open an issue on this GitHub repository.
WindowsServer2003 - The creator of ThirdTube.
Smu1zel - Figured out the line of code that needed to be changed and tested the change out, fixing the app after it stopped working in 2024.
NPC 3.0 - Fixing the app after it stopped working in 2024.
5GBurrito - Minor changes (project manager?).
2B_enpitsu - New banner, watch history fix, new icon, 480p support, some other fixes, and a fair bit more (thank you so much!).
returndislike - Used for dislikes.
It utilizes some undocumented YouTube APIs to get the raw video url and plays the stream using the decoder taken from Video player for 3DS by Core-2-Extreme.
It does not run any javascripts or render html/css, so it's significantly faster than YouTube on the browser.
The name is derived from the fact that it is the fourth YouTube client on 3DS, following the official YouTube app (discontinued), then the new 3DS browser, and ThirdTube.
You can use the qr code below to download & install .cia from 3ds
- Video Playback up to 480p
- Livestreams and premiere videos support
- Searching
- Video suggestion
- Comments
- Captions
- Local watch history and channel subscription
- No ads
It's more like "Ads are not implemented" rather than "We have ad-blocking functionality".
Of course, we will never "implement" it :)
- B button : go back to the previous scene
- C-pad up/down : scroll
- L/R : switch between tabs
- Select + Start : blackout the bottom screen
- In video player
- Arrow left/right : 10 s seek
- ZL/ZR : 5 s seek
Below are for debug purposes
- Select + X : toggle debug log
- Select + Y : toggle memory usage monitor
- Select + R + A : toggle FPS monitor
A 3DS (including 2DS) with Luma3DS installed and DSP1 run.
I haven't tested the minimum system version, but at least 8.1.0-0 is needed.
- Does it make sense?
The worst question in the console homebrew scene. Isn't it just exciting to see your favorite videos playing on a 3DS?
You can use the code under the terms of the GNU General Public License GPL v3 or under the terms of any later revisions of the GPL. Refer to the provided LICENSE file for further information.
by the FFmpeg developers under GNU Lesser General Public License (LGPL) version 2.1
The modified source code can be found in https://github.com/windows-server-2003/FFmpeg/tree/3ds.
by Tencent and Milo Yip under MIT License
by devkitPro under zlib License
by Daniel Stenberg and many contributors under the curl License
by the Brotli Authors under MIT license
by Sean Barrett under MIT License and Public Domain
- Core 2 Extreme
For Video player for 3DS which this app is based on.
Needless to say, the video playback functionality is essential for this app, and it would not have been possible to develop this software without him spending his time optimizing the code sometimes even with assembly and looking into HW decoding on the new 3DS. - dixy52-beep
For in-app textures - PokéTube
For the icon and the banner - The contributors of youtube-dl
As a reference about YouTube webpage parsing. It was especially helpful for the deobfuscation of ciphered signatures. - The contributors of pytube
As a reference about YouTube webpage parsing. Thanks to its strict dependency-free policy, I was able to port some of the code without difficulty.