reisxd / TizenTube

A NodeJS script to remove ads and add support for Sponsorblock for your Tizen TV (2017 and forward).
https://tizentube.live
GNU General Public License v3.0
411 stars 35 forks source link

Some videos stutter a lot. #10

Closed ameenalasady closed 10 months ago

ameenalasady commented 1 year ago

I’ve noticed that some videos on TizenTube are stuttering. Despite the “Stats for Nerds” showing 0 frame drops, there is a consistent frame drop happening every second or so, where the video freezes for about 0.2 seconds. The audio, however, remains unaffected. This issue occurs even at 144p and only on TizenTube, not on the default YouTube app.

After some investigation, I found that all the affected videos have the av01.0.08M.08 (399) video codec, while videos with the vp9 codec do not have this problem. Not all av1 videos are affected, only those with the av01.0.08M.08 codec.

Here are some videos where it happens:

https://www.youtube.com/watch?v=zC12hYp-AaY https://www.youtube.com/watch?v=IyUb7a6g77Y https://www.youtube.com/watch?v=TxWAx49dh3Q https://www.youtube.com/watch?v=zXiJjyAxsjI https://www.youtube.com/watch?v=nA95MIK7WH4

reisxd commented 1 year ago

That sounds like a really weird issue. What's your TVs Tizen version/release year?

ameenalasady commented 1 year ago

Tizen 6.0, 2021.

oSumAtrIX commented 1 year ago

Probably because a debugger is attached @reisxd can you "unattach" it

reisxd commented 1 year ago

Probably because a debugger is attached @reisxd can you "unattach" it

I did not have issues with it. Also, unattaching it could cause issues. Like if the user changes accounts, the page will refresh and the debugger won't be able to inject code.

ameenalasady commented 12 months ago

Probably because a debugger is attached @reisxd can you "unattach" it

I just tried doing that and it does not solve the issue. Furthermore, as @reisxd said, it created a host of new issues.

oSumAtrIX commented 12 months ago

@reisxd

I did not have issues with it.

It depends on device performance.

Like if the user changes accounts, the page will refresh and the debugger won't be able to inject code.

I am unsure about the app's internals, but a low-level hooking point should allow you to "reinject" wherever needed. The only limitation with unattaching the debugger would be when the app restarts because the hooks do not persist (no cold patch), though this is a small price to pay for being able to watch content properly.

reisxd commented 12 months ago

@oSumAtrIX

It depends on device performance

It doesn't. Tizen OS is widely used on Samsung TVs, and their TV is newer.

but a low-level hooking point should allow you to "reinject" wherever needed

I'm pretty sure there's no way to do that. Tizen OS isn't like Android or any other mainstream OS. Tizen OS is very locked down. Rooting is also not really possible due to no methods of rooting existing publicly.

oSumAtrIX commented 12 months ago

Why would it not work?