videospeed
videospeed copied to clipboard
No longer working with BBC iPlayer
Many thanks for this plugin which I use every day. The video player for BBC iPlayer (bbc.co.uk/iplayer) appears to have changed today and the video speed controller is no longer working with it.
x2
x3
Like many iplayer users; so many of us are missing the plugin functionality today!
x4
x5
Desparate to find an alternative, so really keen to hear any workarounds or solutions people find
x6. So irritating that the BBC has done this.
The BBC update was to switch to a new player based around Web Components, so the current plugin now no longer finds the video element as it's hidden inside a shadow DOM, the player has actually been available as an A/B test at various times for quite awhile, and it's sad this wasn't spotted.
The player itself supports changing the playbackRate, and that might be the easiest and quickest fix, simply have the plugin updated to look for any smp-toucan-player on a page in addition to the existing code, and set update the playbackRate there, otherwise looking for the video element will involve looking through shadowDOM's, which whilst they are currently open may be closed in the future. Also by working at the player layer it will work on the more complicated player integrations such as the BBC's story journeys.
I'll have to start figuring out the code etc. to see exactly what's going on to offer up a PR, which might take awhile, but in principle considering elements "smp-toucan-player" the same as a "video" element, then it would just work.
In the meantime, using a console or javascript: protocol entering: document.querySelector('smp-toucan-player').playbackRate=1.5 will change the speed.
If anyone with more knowledge of the code can look, I am very happy to answer any questions about the implementation.
I've spoken to the BBC. It wasn't deliberate and they are looking to reverse the issue, so it should work again in a while, although not sure how long that will take, I've no idea if it'll be days or weeks...
@sccuk2022 I don't know of any intention on the BBC's side to make the plugin work without changes to the plugin, the toucan player is simply not compatible with the plugin and there's no way it could be made so without essentially throwing it away and starting again which is not a days or even weeks project.
Very much, the simple change to the plugin is the way to go.
So sadly the simple solution I mentioned in https://github.com/igrigorik/videospeed/issues/934#issuecomment-1084639837 is not sufficient, because the chrome extension does not have access to the custom properties of the web component so setting playbackRate doesn't trigger the web component change.
I have no experience of chrome extensions, is there a way to make them access web components as web components rather than just dumb html elements - presumably it's the isolation that causes it?
So I've made changes that now would work (with some significant changes on the iPlayer side, so this is not going to work until those have been done, "works on my machine" though, so no PR yet.)
https://github.com/JibberJim/videospeed/tree/issue934-bbc-toucan-player-support
The limitations of the web-component in chrome extensions seem significant and this ends up with quite a bit of "iPlayer specific" code in the repository, and the need of the BBC continuing to support the "remotecontrol" event as the communication mechanism.
And even then it doesn't work properly as the extension cannot get the currentTime of the video. I do feel perhaps I am missing something somewhere with chrome extensions and web-components.
is there a link that doesn't need a tv license? wanted to look at it but not in the uk.
I'm extremely desperate for a fix or workaround. I rely on this extension a lot and it is completely unusable on BBC iPlayer at the moment. I may have to resort to uninstalling and trying other extensions
@pepijnmm The same player is in use on https://www.bbc.com/html5 although rather short, also in use in Thai pages internationally such as https://www.bbc.com/thai/international-60869439 Also available on weather and food pages although they also may be UK only I can't remember for video, the html5 page and the thai page should be world rights though.
@yarshy1 if you visit https://www.bbc.co.uk/html5 you can opt out of the Toucan player at the moment and you'll go back to J2. It looks like other plugins suffer the same problem btw, I'm not sure there is a way for it to work really with web components without the player working with you.
@yarshy1 if you visit https://www.bbc.co.uk/html5 you can opt out of the Toucan player at the moment and you'll go back to J2. It looks like other plugins suffer the same problem btw, I'm not sure there is a way for it to work really with web components without the player working with you.
Thank you very much
Thank you @JibberJim !!!
@JibberJim Very grateful to you for the opt out link. The player is working again. Thanks
Using the Brave Browser based on Chrome. Disabling Flash as listed on the main page here is not an option. opt out link above did not help either.
Still not working on BBC iPlayer. I love this extension and it is one of the fist addons I install on all my chrome based browsers.
@JibberJim the opt-out on https://www.bbc.co.uk/html5 no longer seems to work when I click 'Old Player'.
Is this the same for everyone, or do I need to do something? I've tried deleting all cookies on Chrome already
It's not working on iPlayer for me either (tried the html5 page as well)
@sjgou @fahadayaz The cookie is being set for me, sadly you do need to accept BBC's personalisation cookies (choosing a player is personalisation...) so perhaps that is what is stopping the fallback to the old player?
Thanks @JibberJim I'm not the most technical but wondered if you could see any way around it so we can use the old iplayer again?
Also I noticed a few months ago that BBC webpages which contain video - like this one https://www.bbc.co.uk/sport/av/football/62546779 - offer the ability to change the playback speed....I thought it would transition through to iplayer before long but it seems not!
@sjgou https://www.bbc.co.uk/usingthebbc/cookies/how-can-i-change-my-bbc-cookie-settings/ you need to go there and make sure the middle toggle "functional" is enabled to be able to use the /html5 page.
I can't say when iPlayer might get a built in speed control, my original thoughts were certainly similar to yours.
Thank you so much @JibberJim - invaluable help as always!
I believe they have now forced an update that stops the old BBC iplayer (Non HTML5 player) from working.
The new player has x2 functionality but this is too slow for me :(
Anyone know of a workaround to make this extension work with the new player?
@yarshy1 My comment from a year ago should still be working, no changes have been made, the iframe solution should still be working - Chrome did change how autoplay worked recently that means the old player might require you to click play a second time, but the player should load.
Using a bookmarklet like: javascript:document.querySelector('smp-toucan-player').playbackRate=3 Would also work.
Chrome is still making it too hard to see inside the web-component that I can see, so to have the plugin support BBC here, it will need specific code for it (ie considering smp-toucan-player the same as video), that is a limitation of chrome really.
What comment are you referring to? What exactly is the iframe solution
I don't know how to use bookmarklets so would appreciate clarity on the other solution
The other solution means rewriting the plugin, but allowing functional cookies here: https://www.bbc.co.uk/usingthebbc/cookies/how-can-i-change-my-bbc-cookie-settings/ And then choosing the old player on https://www.bbc.co.uk/html5 Should still be working (it is for me)
The other solution means rewriting the plugin, but allowing functional cookies here: https://www.bbc.co.uk/usingthebbc/cookies/how-can-i-change-my-bbc-cookie-settings/ And then choosing the old player on https://www.bbc.co.uk/html5 Should still be working (it is for me)
Doesn't work for me sadly, shame - will probably have to find another extension :(
Meanwhile, custom userscript works with my set-up. Included here in case anyone finds it useful:
// ==UserScript== // @name Speed us the Toucan // @namespace Violentmonkey Scripts // @match https://bbc.co.uk/ // @grant none // @version 1.0 // @author - // @description 27/09/2023, 19:42:45 // ==/UserScript==
var Timer = setInterval(CleanLateArrivals, 2000);
function CleanLateArrivals() { document.querySelector('smp-toucan-player').playbackRate=1.5 }
Hi, I can't access iPlayer to test, but I have a shadow DOM PR. No idea if it fixes iPlayer though. See here for instructions to test.