Greasy Fork is available in English.

Youtube HD

Select a youtube resolution and resize the player.

< Обсуждения Youtube HD

Отзыв: Хороший — скрипт работает как нужно

60FPS videos. Any way to add a way to handle them? 30FPS works at 1080 but as soon as I watch a 1080 video with 60FPS it starts to stutter. Any way to have a feature added that if the video is 60FPS to switch to a lower resolution? 720 and 60FPS works fine.

The logic would be:

My default resolution would be 1080-30FPS. If it detects a video that is 1080-60FPS it would lower the resolution to 720-60FPS.

Doable?

adisibАвтор
§
Создано: 13.06.2021

Sorry for the late reply. This is a feature that I myself would find useful. But I don't think there is currently a good way to get a video's framerate which I think is why I never bothered to add it. But even if there isn't a good way, it is still doable. I think I'll add this feature, but it will probably be more fragile to youtube internal changes than the others. I'll try to find some time during this week to add it. Thank you for your suggestion.

Thanks for the quick reply! Awesome to hear that you can put it into the code.

adisibАвтор
§
Создано: 16.06.2021

I've updated the script to 2021.06.16 which adds a feature to set a separate resolution for high framerate video. Can you update and try it out to let me know if it works for you?

Perfect implementation on how to apply the alternate setting. Thank you for jumping on this so quick. Apologies for not checking until now as I see you added this right away.

Good and bad news from my testing.

Good news: When you click a link in YouTube and open it within the same tab, it works as expected. Switches to 720/60FPS. So in essence, yes it does what is needed without issue.

Bad news: If you open the link in a new tab instead, it does not apply the settings when you switch to that tab and the video automatically starts.

The way I use YouTube on my media box is I open a bunch of tabs by Ctrl+clicking the links from my recommendations and then close each tab as the video finishes (as I can do it with a voice command). If there is any way possible to get it working on new tabs, I would very much appreciate it!!!

adisibАвтор
§
Создано: 07.08.2021
Perfect implementation on how to apply the alternate setting. Thank you for jumping on this so quick. Apologies for not checking until now as I see you added this right away.

Good and bad news from my testing.

Good news: When you click a link in YouTube and open it within the same tab, it works as expected. Switches to 720/60FPS. So in essence, yes it does what is needed without issue.

Bad news: If you open the link in a new tab instead, it does not apply the settings when you switch to that tab and the video automatically starts.

The way I use YouTube on my media box is I open a bunch of tabs by Ctrl+clicking the links from my recommendations and then close each tab as the video finishes (as I can do it with a voice command). If there is any way possible to get it working on new tabs, I would very much appreciate it!!!

Sorry, I missed your message until now (my hard drive died and I currently don't have my own working PC at the moment so I haven't been checking on here). The issue only happens sometimes, but I was able to find a way to reproduce it. Sometimes youtube doesn't have the information of whether it is high framerate or not loaded yet, and there is no way to tell the difference between that and a video which doesn't have it in the first place. I put in a workaround to have it be able to check again when necessary which seems to fix the issue for me.

The fix is put in version 2021.08.07. Can you please try updating the script and seeing if it works good for you now?

Is it possible to set 720p 30fps video playback?
const targetRes = "hd720";
const highFramerateTargetRes = large; There is yellow warning: eslint: no-undef - "large" is not defined.
It doesn't work for me when I set it like that.

adisibАвтор
§
Создано: 29.11.2021

Any non-null value for those two variables should be quoted. If you replace `const highFramerateTargetRes = large;` with `const highFramerateTargetRes = "large";` then it will do 720p for 30 fps and 480p for 60 fps.

Tnx for reply. It's not working for me on tested videos like for example: https://www.youtube.com/watch?v=LXb3EKWsInQ https://www.youtube.com/watch?v=yzqhjxKMvj0. It is trying to start them and all I can see is constant loop where video is reloading whole time.

adisibАвтор
§
Создано: 28.02.2022

Thanks for reporting the issue vekas. You are correct, there was an issue where it would keep switching, because while the resolution is set to 480p youtube doesn't report that there is a high framerate version would try to switch up to 720p and then realize it needs to be 480p. I made a fix for the issue in the newest version 2022.02.27. Sorry it took so long for me to find some time to read your message and make a fix for you. Let me know if you run into any other problems.

Thank you adisib. Now its working perfectly fine.

Ответить

Войдите, чтобы ответить.