Releases: prateek-chaubey/YTPro
YTPro Update: Smoother Playback, Smarter Downloads & UI Fixes Galore!
This version includes major updates regarding PIP Mode and the Background Player, as this update may prevent them from breaking again. It also includes the shift of the download function to another API—youtubei.js
—and addresses numerous minor UI bugs. The full changelog is as follows:
- Fixed PIP Mode and added a media session to it, enabling playback controls.
- Fixed the Background Player. It now works similarly to how it does in the Brave browser. Previously, it fetched the audio stream, but now it prevents the WebView itself from getting paused, thereby keeping the video playing as well.
- Added media session notifications for every video, allowing background playback control (this might be a bit unstable, as I haven't tested it extensively).
- The downloader now works perfectly. Since YouTube frequently updates, it tends to break. I’ve partially shifted to
youtubei.js
for deciphering scripts. If it breaks again in the future, I’ll fully switch toyoutubei.js
. You might ask, “Why not now?”—well,youtubei.js
requires a proxy to work in browsers, and converting it to be YTPro-friendly would have been more of a hassle for me asfsik. We can handle that later if needed—because, as a legend once said, if it works, don’t touch it. - Audio files will now display the languages they contain, which is useful for YouTube videos with multiple dubbed languages.
- As requested, you can now
disable media codecs
and 60fps in YTPro, which improves support for low-end devices. - Updated the list of models in Google Gemini and fixed image results. (I still haven’t added a feature to show generated images in the Gemini response—because let’s be honest, most people aren’t using YTPro to generate image responses.)
- After two years, you can finally rotate the app according to your screen orientation.
- Fixed the “fit screen” issue and patched various bugs.
- Hiding Shorts will now also remove them from search results.
- Fixed UI glitches in the Shorts feed and while adding SponsorBlock to video elements.
- Added a Developer Mode option in the settings menu, which enables eruda for debugging.
- Improved the downloader UI—changed it from pitch black to a softer grey.
That’s the list of updates I’ve pushed to YTPro. Let me know if anything breaks again via Issues, and enjoy the update!
v3.8
I always wanted to add an AI feature in YTPRO , and today i am glad to announce that it's there , well for now i have just used the Google Gemini
to summarise/analyse the video , depends upon your prompt , this repo helped me a lot , lmao in short i just copied the entire code into YTPRO ,for now you can use 6 different Gemini models , custom prompt.
The Changelogs is as followed
- Added
Gemini
to YTPRO - Fixed the
FitScreen
bug - Optimized the UI of settings and download menu
- Refactored some code
- Fixed the PIP mode , fullscreen issue
The things that are on the way
- Fix the known bugs
- Hide
Open App
button in every language - Improve Background Playback i.e removing the entire audio player and directly playing the video itself in background with media session notification
- Add Play/Pause , Next , Previous buttons on PIP mode
- Enhance video's audio
- Better workaround for downloading videos
- Publishing the app on F-Droid
Well it may take some time , but before these features i would like to fix the known bugs , i don't have several devices to test the code , i hope someone will help in that
Anyways enjoy the AI and lemme know what's working and what's not lol
Note
As only major releases are published here, to download the latest patch update, download it from nightly builds
https://nightly.link/prateek-chaubey/YTPro/workflows/gradle/main/Apk.zip
Patched a ton of things
There has been a ton of issues with the download feature , and it led to bugs in background play and minimize buttons as well , right now i have used the direct youtube-api
which i got from a github repo , if still it stops working, then i may integrate NewPipeExtractor
, the thing is i don't want to use any external lib
- It will increase the app's size
- I want it to be in pure vanilla
until n unless I don't have any other options left , i will stick to the above two options.
The repo is always open for contributions , there are a lot of things that can be added and a lot of things that have to be patched as well.
Changelogs:
- Shifted the YouTube extractor to java , for more flexibility in sending requests as there are few things that gets blocked by the browser
- Fixed the
Downloader
,Background Play
- Added
Adaptive Formats
in the downloader ( maybe in future we can add the functionality to merge audio and videos ) - Removed the
Minimize
button , and added the swipe gesture
Swipe down on the video element to minimize it and surf the YouTube FYP in the background
- Remove the subtle page refresh in between the videos
- Fixed the heart button bug , where it wasn't getting called
- Fixed a few bugs ( sponsors indicator , unnecessary script injection etc )
A few things are still in the list to be fixed and to be added.
Enjoy this update and if anything breaks down in this update make sure to open an issue on github (with a patch , if possible lol )
Thanks ❤️
v3.45reborn
well well well , YouTube introduced Content-Security-Policy
header to block all the external scripts and html which were being injected , lol lame developers of YT.
Currently this has been patched in this update , i hope YouTube doesn't play hard against this once again, as it's still playing with the nCode
function making it hard to be extracted from the base.js
. Well people will find a stable workaround for that as well , i hope that's soon. I am tired of updating the nCode
script back and forth.
Enjoy this update and if anything breaks down again make sure to open an issue on github.
Thanks ❤️
v3.45
Change logs:
- Patched the video download/background play issue
- Updated the
EXTERNAL_STORAGE_ACCESS
permission - Reduced the app size
- Added a new feature of downloading the video directly by sharing the link to YTPRO
- Enhanced the code
v3.4
Change logs:
- Upgraded the background player with media session notifications
- Updated the code for mini player
- Fixed bugs and updated the app's code
- Added
WRITE_ENTERNAL_STORAGE
permission for android versions lower than 28 - Added a update block in the code , so that people can be notified for the next update.
New Update
Changelogs:
- Added the whole new hearts feature
- Improved the download feature
- Adjusted the ads blocker with YouTube's new code
- Now you can heart shorts videos too
- The full-screen orientation will be now based upon video's resolution
- Removed the
Open App
button from header - Removed Unwanted code blocks
- Fixed few bugs
Implemented features in YouTube Shorts
Changelogs:
- Added Download option in Shorts Videos
- Shows Dislikes of Shorts Videos
- Fixed Soft Keyboard Bug
- Minor improvements
- Improved the CDN , probably this time it will work as expected
Added Few More features.
Changelogs:
- Added Force Zoom
- Added Skip Sponsorship feature
- Improved PIP mode
- Added Settings Layout
- Changed the script CDN to npm
- More updates soon...
Version 2.3
Changelogs:
- Updated the UI according to YouTube's latest design.
- Improved the dislikes viewer.
- Now you can download the audio and thumbnails alongwith the videos.
- Fixed the download issue, now you can easily access the downloaded files in your
Download
folder. - Added the
Heart Video
button, more functionality will be added in future updates. - Fixed few bugs alongwith adding few more to fix them later.