Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Using a Google/YouTube account in Playlet #283

Open
iiimuuij opened this issue Feb 8, 2024 · 3 comments
Open

Using a Google/YouTube account in Playlet #283

iiimuuij opened this issue Feb 8, 2024 · 3 comments
Labels
enhancement New feature or request

Comments

@iiimuuij
Copy link

iiimuuij commented Feb 8, 2024

I know the app is about privacy but I really want to have all of my recommendations

@iBicha
Copy link
Owner

iBicha commented Feb 8, 2024

TL;DR

For anyone looking for an answer:

  • This is currently not possible yet. Might change in the future.
  • You can use Export YouTube subscriptions instructions from Invidious to get your subscriptions into Playlet
  • Or use yt2alt to bring Subscriptions, Watch history, Liked videos, Watch later, Recommended videos and Playlists.
  • Starting with version 0.20.0, you can cast from the YouTube mobile app to Playlet

=====================

Thanks for creating this issue. I know this is partially about recommendations, but I will put some points about bringing your Youtube profile into Playlet in general, in case anyone else is looking at this info.

Using Google account directly

This something that many people ask about, but might not be as simple.

Connecting to a Google account and reading subscriptions, recommendations, etc would require Playlet to have its own "extractor". Extractors are what reads data from YouTube through various methods, and are not easy to maintain. Usually there is continuous breakage to fix, and also changes happen in an A/B tested manner, where half the people can't reproduce the issues. This makes it hard to maintain. Playlet being a newer app, with currently just myself as the developer, it is hard for me to commit to such big project. Invidious not only provides a layer of privacy, but it is also a layer of stability shielding Playlet from YouTube continuously changing data format and breaking things.

The other thing I need to study before I even consider going this route is how Roku would react, and how it would see this from a ToS point of view. Roku is a company that favors big corporations that brings in big revenue. If YouTube was to complain about Playlet connecting to Google accounts, Roku might side with Google, and I wouldn't be surprised to try justifying banning Playlet from the store. At that point, side-loading the app is remains the only option. And even then, Roku can also ban developer mode on certain devices if they detect you're trying to install an app they don't approve of. It's a very strict platform, so I need to understand the implications of this before doing anything.

Overall, is it possible? Yes. Do I think we will have this in Playlet anytime soon (e.g. in the next few months)? I don't think so.

Importing from YouTube to Invidious

The next best thing is importing data from YouTube profile to Invidious. While Invidious has a guide on how to import your subscriptions, for some people this might not be enough.

This is why I started working on yt2alt, which makes it easy to import profile, including recommendations.
Right now, the tool is interactive, and exports recommended videos as a Playlist. I plan to add a non-interactive mode which can make bringing data from YouTube to Invidious automated. Once that's done, then we can schedule a sync between YouTube and Invidious (say every few hours) and then your recommendations would follow you to Playlet.

Adding a small detail here, before creating yt2alt, I used a script (which uses yt-dlp) that I run every 6 hours to import my profile into Invidious. Unfortunately this thing is currently broken, that's why but I'm trying to bring this functionality to yt2alt as an easier alternative that anyone can use.

Casting from YouTube mobile app

The other thing I'm working on to reduce the friction is using YouTube mobile app to cast directly to Playlet. This is an experiment #276 that I think will become a feature of Playlet, and it should make it nicer to find content you relate to. I've done enough prototyping to be convinced this is something that should be part of the app, and I'm working to finish it.

Making a built-in importer in Playlet

Another possible thing to do is to make a tool (similar to yt2alt) but built into Playlet. Since we're leveraging Youtube.js as an extractor, this importer can be added to the Playlet web app. This feature might look like this:

  • You use the web app to help you login to Google account
  • We read your profile data
  • And take that data and send it to your Invidious profile

This feature has a couple of downsides

  • It would increase the app size significantly, and might lead to slower loading times
  • I need to also consider the implications of adding "Login to YouTube" to Playlet.

This feature, because of these two limitations, might need to be implemented as a separate plugin, as opposed to a built-in functionality.

I hope this clarifies things for anyone wondering about using their YouTube profile. I'm committed to trying to find ways that make using your existing profile less tedious.

@iBicha iBicha added the enhancement New feature or request label Feb 8, 2024
@iBicha iBicha changed the title will there ever be a way to use an actual Google account Using a Google/YouTube account in Playlet Feb 8, 2024
@iBicha iBicha pinned this issue Feb 22, 2024
@Sebastin3244
Copy link

How do I create an invidious account?

@iBicha
Copy link
Owner

iBicha commented Apr 27, 2024

How do I create an invidious account?

You can create an Invidious account on your own instance (some people call it an instance, others call it a server) if you have one, or use one of the public instances. A profile is instance specific, and does not sync automatically between instances.

From Playlet, you can go to the profile page, and choose login:
profiles

And follow the instructions. You will be able to create an Invidious profile on your currently selected Invidious instance and link it to Playlet.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants