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

Made YouTube service proxyable/pluggable and add support for invidious #833

Draft
wants to merge 21 commits into
base: dev
Choose a base branch
from

Conversation

litetex
Copy link
Member

@litetex litetex commented Apr 15, 2022

Fixes #427

Description

This PR make the YouTube service proxyable/pluggable.
What does this mean?
It means that the YouTubeService behaves as a proxy for a YouTubeLikeService, which can be set into there.
Currently the following services are implemented:

  • YouTubeDirectService - Directly calls YouTube - was previously the YouTubeService
  • InvidiousService - Uses Invidious/an InvidiousInstance to access YouTube

The current implementation also allows implementing of further service like e.g. Piped that proxy YT.

The merging of these PR should avoid total "NewPipe blackouts" like e.g. TeamNewPipe/NewPipe#8202 as it makes the user more independent to switch to a middleware in case YouTube fails.

Note: Also removed the checkstyle suppression file in favor of // CHECKSTYLE:OFF and // CHECKSTYLE:ON comments

TODO:

  • Tests

@litetex litetex added youtube service, https://www.youtube.com/ enhancement New feature or request multiservice Issues related to multiple services labels Apr 15, 2022
@litetex litetex force-pushed the invidious branch 2 times, most recently from 675c74c to b697961 Compare April 21, 2022 19:42
@opusforlife2 opusforlife2 mentioned this pull request Jul 16, 2022
litetex added a commit to litetex/NewPipeExtractor that referenced this pull request Aug 7, 2022
litetex added a commit to litetex/NewPipeExtractor that referenced this pull request Aug 14, 2022
@litetex litetex mentioned this pull request Aug 21, 2022
2 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request multiservice Issues related to multiple services youtube service, https://www.youtube.com/
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add Invidious as an optional YouTube Source
1 participant