theothernt / AerialViews

A screensaver for Android TV devices including Nvidia Shield, Fire TV, and Chromecast with Google TV. Inspired by Apple TV's video screensaver.
GNU General Public License v3.0
469 stars 35 forks source link

Support for framerate match #17

Closed prabishere closed 3 years ago

prabishere commented 3 years ago

If possible can you please add framerate match?

theothernt commented 3 years ago

If possible can you please add framerate match?

Can you give me an example of what you mean?

prabishere commented 3 years ago

I recently upgraded my tv to OLED. For all other apps I'm using Shield's match frame rate feature to prevent judder. But that feature had to be manually triggered from settings each time.

I realized that some apps plex, kodi and SmartTube(for youtube) provides such feature inside the app. I am noob when it comes to programming, so forgive me if its not possible.

Charlsburg commented 3 years ago

Only time i've noticed FPS judder is if the Screensaver comes on while a video is paused in the background

theothernt commented 3 years ago

So I had look into 'frame rate match' for Nvidia Shield - which works with 'adaptive frame rate' or 'variable refresh rate' which some newer TVs support.

The basic idea is that the device can inform the TV, monitor, etc what FPS the content is (24, 30, 60, 120 etc) so it can adapt its refresh rate to match giving a smoother appearance to some video.

It would be possible to add support but there are a few issues...

  1. The method the Nvidia Shield uses, and other other devices (eg. newer Fire TVs), are not officially part of Android TV yet. I've read it's part of Android 11 but no TV stick, etc runs that to my knowledge (Shield is v9, Google TV is v10)
  2. VRR is typically best when the FPS of the video or game isn't a) stable or b) a number that doesn't divide into 60hz or 120hz evenly - I believe all the Apple videos are 30fps so VRR, etc wouldn't do anything?

Also, just to explain why it's a bigger deal for Plex, Netflix, Disney+, etc. Most of their content plays at 24fps. Now 24fps does divide into 120hz but the Nvidia Shield normally outputs at 60hz, in which case you would get judder. If the Shield could detect 24fps content, switch its output to 24hz (like Blu-ray players do) then the TV could do what's best (switch to 24hz or do 120hz with black frame insertion or some other technique)

Anyway, I hope all that made sense. I will keep an eye on the feature and my guess is that it will be automatic in the future, but at the moment I don't think it's a benefit to this screensaver with these types of videos.

Feel free to let me know what you think. I'm happy to be wrong on this stuff!

(accidentally clicked 'Close issue', please ignore 😅)