ajayyy / SponsorBlock

Skip YouTube video sponsors (browser extension)
https://sponsor.ajay.app
GNU General Public License v3.0
9.78k stars 316 forks source link

[Feature Request] Add peertube support #1209

Open stemy2 opened 2 years ago

stemy2 commented 2 years ago

Hello,

Sometimes i watch videos on peertube, and since SB is not compatible with it, i'm not able to skip sponsored sequences.

erkinalp commented 2 years ago

As PeerTube is federated, SponsorBlock would need to keep track of which instance is which. The current query method is not that suited to that.

farOverNinethousand commented 2 years ago

While I myself do not need/want PeerTube support, the problem of keeping track which instance a video is being played on could be solved by adding the domain of that instance into the videoID e.g. "peertubedomain.tld:videoID". ...though again if once instance has multiple domains this could lead to issues and for sure one wouldn't want to keep track of peertube instances' domains/main domains manually.

...though generally that PeerTube request makes sense as PeerTube support would automatically support a wide range of websites using peertube though I can imagine some issues could arise with:

ajayyy commented 2 years ago

Domain is not needed for peertube, the IDs are unique, and can appear on multiple instances due to federation

erkinalp commented 2 years ago

Domain is not needed for peertube, the IDs are unique,

It is, if you also want to support de-federated instances.

ajayyy commented 2 years ago

But the id is still globally unique

farOverNinethousand commented 2 years ago

But the id is still globally unique

That would definitely be the easiest case.

erkinalp commented 2 years ago

@ajayyy There is no such guarantee across any two instances that do not federate with each other.

@FSG-Cat

raphj commented 2 years ago

I ran into this issue this week. Some channels are both on PeerTube and YouTube. I'd rather use and encourage PeerTube, but I find sponsored parts unbearable and I'm often listening to videos with no immediate access to playback controls.

Metadata gathered from one source could be used for the other source by letting users declare that a given PeerTube video is the same as some given YouTube video or vice-versa (which is most certainly easily automatable, though this automation is easily outside the scope of SponsorBlock). SponsorBlock would need to store a mapping or sets of equivalent video ids (this could also be useful for duplicate YouTube video I guess, but I'm not sure this is very useful).

Would that be conceivable?

ghost commented 2 months ago

As PeerTube is federated, SponsorBlock would need to keep track of which instance is which. The current query method is not that suited to that.

Sponsorblock already keeps track of Invidious and Piped instances, which is basically the same thing.

Also, there are public listings of PeerTube instances which can be used.