Skip to content

Conversation

@bastimeyer
Copy link
Member

@bastimeyer bastimeyer commented Mar 16, 2019

Resolves #2357
Sets the platform=_ GET parameter in the stream access token request, which results in server_ads to be set to false in the response (at least for now - might get changed/fixed in the future).

As I've said in #2357, I'm not sure how to feel about actively suppressing ads in Streamlink and its plugins. Yes, this is what probably most - if not all - of the users want, but this violates the ToS of Twitch and may put us at risk of losing our API client ID in the future. Discussion is welcome.

@bastimeyer bastimeyer added the plugin enhancement A new feature for a working Plugin label Mar 16, 2019
@codecov
Copy link

codecov bot commented Mar 16, 2019

Codecov Report

Merging #2358 into master will not change coverage.
The diff coverage is 0%.

@@           Coverage Diff           @@
##           master    #2358   +/-   ##
=======================================
  Coverage   52.59%   52.59%           
=======================================
  Files         237      237           
  Lines       14802    14802           
=======================================
  Hits         7785     7785           
  Misses       7017     7017

1 similar comment
@codecov
Copy link

codecov bot commented Mar 16, 2019

Codecov Report

Merging #2358 into master will not change coverage.
The diff coverage is 0%.

@@           Coverage Diff           @@
##           master    #2358   +/-   ##
=======================================
  Coverage   52.59%   52.59%           
=======================================
  Files         237      237           
  Lines       14802    14802           
=======================================
  Hits         7785     7785           
  Misses       7017     7017

@gravyboat
Copy link
Member

Thanks for adding this @bastimeyer. Which portion of the ToS are we explicitly violating by doing this? In the past Twitch has said they are okay with people bypassing ads, and tons of browser plugins and other tools have been doing so for quite some time with no repercussions. Does this specific change impact us? We're simply modifying the request we send to the server and it's responding to that request with what we've asked for. I don't think I'd be so against the ads on Twitch if they weren't complete cancer (like most video ads).

@bastimeyer
Copy link
Member Author

Hm, I should have said that I'm not sure whether this violates ToS or not.
What I mean is that it's not exactly clear. We're obviously not using any of their player tech, but the following point is listed under "Requirements for Specific Features and APIs" and the embeddable player is the only offical way to view streams/vods/clips. A custom HLS client/player may fall into the same category, although not explicitly mentioned.

Don’t modify, replace, interfere with or block (a) functionality of the embeddable player, including advertisements placed by Twitch; and (b) the Twitch Marks.

https://www.twitch.tv/p/legal/developer-agreement/

But you're probably right and it shouldn't be a big deal. I'm just saying that we should be careful when adding this kind of stuff, nothing more :)

@gravyboat
Copy link
Member

gravyboat commented Mar 17, 2019

@bastimeyer I don't think we fall into that category at all as we aren't embedding or even using their player. I agree with you that we should be careful and apologize if my comment came off as anything other than acknowledging and agreeing with that fact. If it's not explicitly mentioned in the TOS I think we are fine. Twitch has actively monitored this repo in the past as well, so if it was a problem they would likely chime in.

@MancV21
Copy link

MancV21 commented Mar 17, 2019

Is this branch available yet?

@bastimeyer
Copy link
Member Author

@MancV21
You can clone my repo and build from the branch of this PR if you don't want to wait for it to be merged into Streamlink's master branch. Or just apply this simple change manually.

@gravyboat
Copy link
Member

I'm going to merge this in @bastimeyer.

@gravyboat gravyboat merged commit 1bb3f86 into streamlink:master Mar 17, 2019
mkbloke pushed a commit to mkbloke/streamlink that referenced this pull request Aug 18, 2020
…ess-token-platform

plugins.twitch: platform=_ in access_token request
@bastimeyer bastimeyer deleted the plugins/twitch/access-token-platform branch January 19, 2021 23:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

plugin enhancement A new feature for a working Plugin

Projects

None yet

Development

Successfully merging this pull request may close these issues.

pre-roll ads playing before twitch stream

3 participants