Automatic frame rate matching in Android devices
Stremio version: 1.6.13 OS: Android 15 (Xiaomi HyperOS 2.0.1.0) Device: POCO Pad / Redmi Pad Pro (codename dizi)
As far I understand, frame rate matching is a feature present in Stremio for Android TV devices ever since version 1.5.8 [source]; however, it does not appear to be present in regular Android mobile devices. As for my personal case, I use Stremio with an Android tablet whose display supports adaptative refresh rate, automatically changing between 30hz, 48hz, 60hz, 90hz and 120hz, depending on the type of media being presented at any given time [source], yet after checking with the 'Show refresh rate' developer option, Stremio never drops below 120hz, which is a waste of battery compared to using 48hz for 24fps media and 60hz for 30 and 60fps media, while retaining the smooth 120hz for general app browsing and scrolling.
I don't know how much of the Android TV API is able to be ported over into regular Android, particularly because one uses an external display while the other uses an internal one [according to this merge request for the completely unrelated project VLC, they do seem to use different APIs, but from my personal testing, VLC's approach after merging does not work as intended, at least on my device, even with the 'match frame rate' option enabled], but as far as my limited knowledge goes, it seems a Frame Rate API with support for my request was added in Android 11 [source]. From my personal testing, the open-source video player Just supports automatically matching the frame rate between the display and the content, and I believe it's based on the same player as Stremio (Exoplayer), and other internet users seem to note that Plex and Kodi also seem to have it working, but I haven't tested those myself.
Will provide screenshots, screen recordings or any other data that may be necessary.
Thanks in advance.
The feature is available in beta.
Thanks for the information!
Joined the beta and activated the feature.
However, it doesn't appear to be working as intended, at least on my device.
Whenever there's a 24fps video file playing, it doesn't go down to 48hz, the lowest multiple of 24 that my tablet's screen supports, it stays at 120hz, which is also a multiple of 24, therefore making stutters non-existent, but needlessly wasting battery life.
Likewise, when I play a 30fps video file, it doesn't drop the screen's refresh rate to 30hz, which it supports, or even 60hz; it just remains at 120hz.
this is how it is supposed to work - https://developer.android.com/media/optimize/performance/frame-rate controlled by the system