anxdpanic / plugin.video.twitch

Watch your favorite gaming streams on Kodi
https://twitchaddon.page.link/forum
270 stars 80 forks source link

Commercials (Pre-roll and Mid-stream) playing #527

Closed kcs32787github closed 4 years ago

kcs32787github commented 4 years ago

I am seeing ads. I have Twitch Turbo subscription and I am even seeing them happen on channels I am specifically subscribed to. Also, while I am sure its not the addon's fault, maybe Twitch is working on something in the background that is breaking the API from correctly seeing account details to let them know to leave me out of the ads. Logs do not point out anything or requests to different urls when ads happen.

amsluis commented 4 years ago

Having the same issue. This happened briefly about a week or two ago as well, but only for a few hours and it's been fine since, until today.

noteasybeingreen commented 4 years ago

Confirming same here on kodi 18.8, latest twitch-on-kodi add-on, Windows 10. I'll add that many many times after the ad countdown ends, a black screen appears and Kodi crashes to Windows desktop.

lococola commented 4 years ago

Same here. Every stream will start with a "Commercial break" screen and a 10 second countdown timer. Then the actual stream starts. Haven't run into mid-stream ads yet though.

foxxx0 commented 4 years ago

Same for me, but I've also seen numeroues consecutive 15s ad breaks mid-stream for up to 6 times (90s). As I've noticed the exact same behaviour on Linux with youtube-dl (mpv), I've played around a bit, exported my Twitch cookies from Chromium and instructed youtube-dl to use them via --cookies and now I actually receive localized ads (instead of the colorful Twitch animation screen "commercial break in progress" with the timer. And on other streams to which I'm subcribed to I don't get any ads anymore.

I wonder why that doesn't work for this plugin automatically since it is already connected via an OAuth token to my Twitch account.

Would be great to see this fixed, even if it then requires Twitch Turbo or being a subscriber to the respective channel.

kcs32787github commented 4 years ago

Would be great to see this fixed, even if it then requires Twitch Turbo or being a subscriber to the respective channel.

The thing is, I already have a Twitch Turbo subscription and it is isn't working anymore through the addon anymore. It used to, but now ads everywhere.

anxdpanic commented 4 years ago

If you configure InputStream Adaptive and use Adaptive quality in the add-on, that should help deal with the commercial issue in the short term.

kcs32787github commented 4 years ago

If you configure InputStream Adaptive and use Adaptive quality in the add-on, that should help deal with the commercial issue in the short term.

Thanks for this suggestion, it does seem to help. Will there be a better solution coming down the road? Using 'Adaptive' is kind of a roulette of what quality you are going to get, as opposed to just hitting 'Source.' Also the latency of the stream is 8-10 seconds behind compared to 'Source.' I am really not trying to be unappreciative of your work, just curious.

Edit: This method seems to help with preroll ads. However, I still got mid-stream ads after watching a stream for about 15 minutes.

nrk666 commented 4 years ago

I've noticed that the actual Twitch Web Client with UBlock Origin on Chrome seems to never get ads, so "Casting" to my Shield seems to give an ad free stream. Obviously this sucks for Kodi users as it requires another source machine, but if you really hate the ads, this seems to work. I've also setup PiHole DNS Ad blocking, but that seems ineffective for Kodi/Twitch (it owns for just about everything else), so maybe UBlockOrigin is doing some other magic.

nrk666 commented 4 years ago

FYI: I made the change to "Adaptive" and still got mid-stream ads, which looped and crashed Kodi.

kcs32787github commented 4 years ago

I am guessing this has broken something within the addon. But why the API is being disregarded is confusing. https://twitter.com/TwitchSupport/status/1305644088885207041

ghost commented 4 years ago

In my case the addon became completely unusable. There are pre-rolls and mid-rolls ads so frequently on all streams despite any status (subsribed/prime/turbo), I just switched to my chromcast which only displays pre-roll ads occasionally and mid-roll ads on some streamers discretion but very rarely. I have no such issue at all on browser with ublock which doesn't display a single ad. Actually even the Android twitch app doesn't display so many ads. Strange thing. Now I must say that I use pi-hole so I actually do not "see" a single ad. I just see the "commercial break in progress" screen without any video playing.

PureFallen commented 4 years ago

Not having Advertisment directly but the placeholder screen "Commercial break in progress" displayed. The whole thing seems to come from another source too, given that my watched streams need to buffer again each time the "Commercial break" is done, increasing the latency from me on the addon even further to Desktop or Mobile Device. It is really unfortunate.

streamlink/streamlink#3120 seems to describe a similar issue for the application "Streamlink" as well of a possible Workaround until we know more.

MrSprigster commented 4 years ago

I can confirm enabling Input Stream Adaptive and then going into the Input Stream Adaptive settings and ensure it's set to Adaptive does solve this at the moment.

kcs32787github commented 4 years ago

I can confirm enabling Input Stream Adaptive and then going into the Input Stream Adaptive settings and ensure it's set to Adaptive does solve this at the moment.

It does NOT solve it. It patches it. Watch long enough and you will still get mid-stream ads. Depends on which streams you are watching. It does stop preroll ads, but not mid-stream.

kcs32787github commented 4 years ago

As I further understand the issue, the problem lays with Twitch not allowing the API to pull subscription status? Therefore my Turbo sub and subs to individual channels can not be used by the add-on to prevent commercials from playing? Is that accurate?

anxdpanic commented 4 years ago

Do you guys have your private oauth token configured? It's required for subscriber only vods, might also be affecting the ads now as well. I've added a basic wiki entry point for the moment, https://github.com/anxdpanic/Twitch-on-Kodi/wiki/Subscription-benefits

kcs32787github commented 4 years ago

Do you guys have your private oauth token configured? It's required for subscriber only vods, might also be affecting the ads now as well. I've added a basic wiki entry point for the moment, https://github.com/anxdpanic/Twitch-on-Kodi/wiki/Subscription-benefits

Well now I just feel like a complete idiot. I did NOT have the private oauth token configured and commercials are gone again. Thank you for linking me the information. Followed the wiki instructions and all is well for me. It seems my Turbo sub IS being recognized.

anxdpanic commented 4 years ago

Great to hear, and thank you for confirming. Not sure why I didn't think of it sooner, but it wasn't very visible for users to know that it's required for anything. The wiki entry is brand new and I will improve it soon, now that you've verified.

kcs32787github commented 4 years ago

You might want to comment in the wiki that inputting the private oauth token will not stop ALL ads unless you specifically have a Twitch Turbo subscription. Seeing as these embedded ads are generally new to addon users they might be aware how ads on Twitch actually work.

PureFallen commented 4 years ago

I can confirm enabling Input Stream Adaptive and then going into the Input Stream Adaptive settings and ensure it's set to Adaptive does solve this at the moment.

It does NOT solve it. It patches it. Watch long enough and you will still get mid-stream ads. Depends on which streams you are watching. It does stop preroll ads, but not mid-stream.

When it comes to down to testing it, it might be worth to mention that Twitch will only play Pre-Rolls "When there wasn't a Pre-Roll displayed for you on the same channel for a specific period of time." Using "Source" to see if you get a Commerical Break just to switch to "Adaptive" and try the same Affiliate/Partner Channel to check for a Pre-Roll might be missleading. You will require to open a different Affiliate/Partner Channel for that or wait for Mid-Rolls to interrupt your Entertainment Experience.

@anxdpanic With the addition of the Wiki Entry i assume that the implementation of a workaround like the one prevously mentioned seems unlikely? Or is that something that needs to happen on the layer of ingwinlu/python-twitch and is out of your possabilities?

anxdpanic commented 4 years ago

Just finished updating the wiki now, hopefully it helps.

@PureFallen We're really far detached from ingwinlu/python-twitch at this point, nothing holding things back there. The Adaptive quality uses a work around that likely won't work for too long. This will be the only 'fix' really, the private client id is static and known while the private oauth token requires the steps in the wiki. Doesn't really lend it self to a good fix currently.

nrk666 commented 4 years ago

So, I can say that I do have my private OAuth token configured, I see all my followed streamers, can follow/unfollow etc, so I assume its working. Note: I do not have Turbo and I was watching a streamer I was not subscribed to (so, I expect to see ads, although, in the past, haven't). Pi-hole does seem to actually prevent an actual advertisement from playing, but I do get the "Commercial whatever In progress" with a countdown timer.

Switching to "Adaptive" does seem to stop pre-roll ads, however midstream ads still occur. I noticed something else today, I was watching a stream and the stream started to repeat itself. It's like someone hit "back 15 seconds" let it play, then hit "back 15 seconds" again a few times. Like an ad was trying to run, but instead of "Commerical Break in Progress" it just rewound the stream. I couldn't tell if there was live content I missed or if the stream kept a semi-linear timeline after the "rewinds" stopped.

Right now the only "adfree" streams are when using Chrome + UblockOrigin.

anxdpanic commented 4 years ago

@nrk666

The reason you now see the ads is likely due to the changes Twitch has made, also possibly the specific streamer. You're likely not getting an ad-free Twitch on Kodi without having the subscription/Turbo, in good faith the add-on will never block valid ads when possible.

Yes there are issues with the commercials and repeating time and crashing sometimes, this is outside of the add-on and hopefully resolved in future versions of Kodi/inputstream.adaptive.

Seeing followed streams and being able to follow/unfollow uses your regular oauth token that is generated from Settings - Login - Get OAuth token. Your private oauth token is used for subscriber and Turbo benefits.

kcs32787github commented 4 years ago

I am confident that the private oauth token being input has solved my ad issue. I am happy to close this ticket if its cool with @anxdpanic ?

Sidenote: Twitch also announced they ended their midstream ad roll out experiment today, so most people should hopefully stop seeing ads altogether temporarily.

anxdpanic commented 4 years ago

I think it's safe to close, and have the wiki to point now for any new issues. @kcs32787github Thanks for your help

henriklb commented 3 years ago

Just started seeing ads again despite setting both settings to adaptive