A script to deal with the automatic skipping of fixed length intros/outros for your favourite Youtube channels.
< Feedback on Youtube Automatic BS Skip
Bug appears, so you decide to leave a bad rating without giving me a chance to address it?
Thanks I guess.
sorry, not my intention at all.
The link I posted earlier is my forked version containing a small tweak. Please feel free to take all or part if you find it useful, as in a github pull request. Grad to delete my fork upon your request. I'm grateful to your work, I only wish to humbly show support and follow your path to help other users online.
Ahh my mistake. I've had people leave unfair bad reviews on scripts before, where I am more than willing to produce fixes.
I only want a chance to do first :D
Anyway I'll have a look at your fix and if it works I'd be happy to include it.
Thanks.
I've just tested your changes vs the original version of the script and they seem to work about the same.
Perhaps I'm missing something. I will have to do some testing and see if there are any issues.
I have noticed that when changing to a new channel sometimes the intro is skipped when it shouldn't be.
So I'll fix when I have some time.
Yes I noticed the same thing.
I suspect that when clicking on another video, the video src is updated async first but the channel name has not been updated yet, so I go on and set up an arbitrary time 3000ms to ignore stale data, but it does not seem to work all the time.
updated the fork thinking may try unbind("timeupdate") when data is stale
I've already updated and fixed the issue the other day. Feel free to check the code.
I did it by setting a flag that prevents the intro from being applied until the detection has checked for changes.
The flag is set by listening for the streams abort and/or ended events. which deals with:
a) The user skipping or choosing a new video
b) The stream ending normally.
I also added a new feature that skips Youtube's post video countdown. Though it was not entirely needed, setting a 1s outro would have the same effect.
I'm afraid 2.9.2 doesn't fix that issue entirely, it works sometimes, it's kind of hit and miss.
Steps:
in fork 2.9.1.3, i tried to prevent any kind of intro skipping (step 7) using unbind("timeupdate") each time url is changed. but the issue is that, similar to 2.9.2, the url change detection logic itself is faulty.
url change detection is based on user click at step 4, it aims to delays intro skipping until step 9 is finished and channelName is finally updated and is correct, the detection uses a grace period countdown timer logic that is unreliable coz some users have slower internet speed.
fork 2.9.1.4 get the channel name with "await fetch()" and regex instead of jquery(visual_element).
Hi I've been unable to replicate your issues on 2.9.2
When you're testing are you disabling other versions of the script, I assume so but you never know.
What browser are you using and version of tamper-monkey or other extension.
Do you have any other active scripts running on Youtube at the same time?
> replicate your issues
A slow internet connection may help expose the bug at step 8
https://www.google.com/search?q=chrome+devtools+throttle+3g
> disabling other versions of the script
Yes, I use a separate, clean chrome user profile to test scripts.
Appreciate your attention to detail on this thread. My apologies for not getting back earlier.
Yeah I think you're on the right path. They async loading makes it hard to correctly get the channel name before the video starts playing.
This essentially leads to a race condition where if the channel doesn't update fast enough the script with miss the intro skip, or potentially unintentionally skip.
I do feel however these types of occurrences are rare in my usage. It does seem that a slow internet connection would make the issue more noticeable. Perhaps I will revisit this script or perhaps do a total rewrite. We will see.
forked version fixes the issues i was having with the script also. sadly the original just wouldnt work for me
Apologies, I've replied via another thread you posted on nascent.
In order to ties all loose ends, I'll confirm on this thread too: 2.9.8 fixes everything. I no longer have the blank white ui, and the buttons works without issue.
Many thanks both JustDaile and fp22June
Thank you very much for sharing this script, it's been working for a whole year.
bug report: works sometimes, which defeats the purpose of skipping annoying bs. Probably coz yt is updated, now async load video first, and other data deferred so updateControls() is evaded.