Giter Site home page Giter Site logo

Comments (61)

theothernt avatar theothernt commented on June 5, 2024 1

I would be interested in beta testing the Android 11 version on my Shield TV Pro 2019 when you have another ready to test.

There was a crash bug in that last beta as I can't test the feature at the moment.

I should have a new build in the next few days which may fix the issue.

from aerialviews.

Hotboy1987 avatar Hotboy1987 commented on June 5, 2024 1

from aerialviews.

Eagle00Eye avatar Eagle00Eye commented on June 5, 2024 1

I have installed this beta. Fantastic work.
I have about 90 4K Landscape Drone videos and so far so good. I have started the screensaver and rotated through my videos. I haven't noticed any judder from incorrect framerate.

I do have one questions. Once the screensaver is running. And it switches to a new video. If that video has a different frame rate, does this version also change to the new videos framerate? Or does it only change on the first initial video and is then locked to that framerate on subsequent videos?

All in all fantastic work. I think all of my landscape videos are 24 frames. Which is why I was asking the question. In case I ever get 30 or 60 fps videos.

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024 1

Shield Android 9.1.1 is actually Android 11. It's just a weird naming convention.

We both have the same shield running the same firmware.

Ahh! thanks, so Android 11 so far then.

from aerialviews.

Hotboy1987 avatar Hotboy1987 commented on June 5, 2024 1

from aerialviews.

youri-- avatar youri-- commented on June 5, 2024 1

from aerialviews.

Hotboy1987 avatar Hotboy1987 commented on June 5, 2024 1

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

I'll address the HDR-related questions first.

For HDR to work, you need a few things a) a HDR capable TV b) HDR playback device and c) HDR video. That seems simple enough but the problem is that there are different standards,. So different TVs, Android TV devices and videos don't always work together.

I think you're running into a few problems...

  1. Your new Samsung TV supports HDR but not Dolby Vision
  2. If you're seeing a black screen when trying to play HDR videos on tour Mi Box it likely means they didn't license the Dolby Vision codec. You can confirm this by looking in Settings > Capabilities for "dolby-digital.decoder". My guess is that Nvidia Shield has it but the Mi Box does not
  3. Apple's videos use Dolby Vision and not HDR10

So Dolby Digital support is required in everything for it to work. Otherwise, you'll have to stick with SDR.

In regards to frame-rate match, I wrote about it in another issue but basically it's not a standard Android feature yet - it's experimental on the Nvidia Shield and Fire TV devices so it will require more research.

from aerialviews.

Hotboy1987 avatar Hotboy1987 commented on June 5, 2024

it seems that I have to wait for android tv 12 to use your app ,, because my main used app are nova and it supports framerate match , when screensaver start during I am pausing a video it keeps play on the same framrate of the video ,, it is mostly 24 fps because most movies are 24 fps ,, and when that happen video keeps judder ,, if you can force your app to play on 60 fps it will be great and make it usable now

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

it seems that I have to wait for android tv 12 to use your app ,, because my main used app are nova and it supports framerate match , when screensaver start during I am pausing a video it keeps play on the same framrate of the video ,, it is mostly 24 fps because most movies are 24 fps ,, and when that happen video keeps judder ,, if you can force your app to play on 60 fps it will be great and make it usable now

And I think part of the issue is that apps that use framerate match (in its current experimental state) can cause problems with other apps like this.

My guess is that Nova doesn't disable framerate match when paused/suspended so this issue might be fixed by a) reporting this issue to Nova as well and b) I can try adding some framerate match test code in future?

from aerialviews.

Hotboy1987 avatar Hotboy1987 commented on June 5, 2024

if nova disable framerate match when paused then it have to rematch frame rate every time I pause the video and this make screen blank for second ,, I think the right is too make your app to force screen to play on 60 fps

or

we have to wait for android tv 12 that will support frame rate match on the whole system like apple does

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

It looks like I can implement this without too much trouble, but you will have to enable it specifically.

This is how I think it'll work (also please know that I can't test this myself, only guess!)

  1. Nova starts playback, movie is 24fps, Nova requests 24fps from TV
  2. If TV accepts, screen flash black briefly (or shows some info to suggest mode change) and movie plays
  3. You pause movie and leave it paused for set amount of time so screensaver activates
  4. Aerial starts, gets video fps (usually 30) and requests mode from TV - playback starts regardless
  5. When screensaver is interrupted, Nova re-starts playback, re-requests 24fps, another brief black screen, then playback continues...

from aerialviews.

Hotboy1987 avatar Hotboy1987 commented on June 5, 2024

Very good one if you can make it ,, it will be perfect ,, all I want that your program check that tv on right fps when start

from aerialviews.

youri-- avatar youri-- commented on June 5, 2024

@Hotboy1987 For your Shield, have you tried app Refresh Rate ? You can configure it on a per-app basis. So if you only configure it for Aerial Views (set its default refresh rate at app start to 59.940 Hz probably), it should fix your problem I think.

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

A small update. It does look like Android 12 will bring in broad support for a) frame rate matching and b) VRR for TV and devices that support it. This might be the better and easier option for me.

The player I use, ExoPlayer, now supports this feature in Android 12 - ie. if you're watching a movie at 24fps then pause it, when Aerial Views launches, the player will see that the Apple video is 30fps and request a refresh rate change. There will also be a system setting for this which Aerial View will follow.

So kinda good news, but it'll be a few more months I'm afraid.

from aerialviews.

Hotboy1987 avatar Hotboy1987 commented on June 5, 2024

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

Just a small update, more devices have Android 12 now including both Chromecast with Google TV (HD and 4K) - so I'll look at adding the 'frame rate switching' in the next update or two.

I currently have no way to test it myself, so I may issue a beta or two on here first.

from aerialviews.

hunterzero99 avatar hunterzero99 commented on June 5, 2024

Let me know when you have a beta, I'll be available for testing. I am kind of curious how it's going to play out if the app changes the frame rate from a paused video that had frame rate matching, how the OS will react when it goes back and unpauses the video at a different frame rate. I guess in theory the OS should set it back with no issue, but we will see 🙈

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

My current guess is that the screen will flash black briefly when the refresh rate changes.

I'll see if I can put together a beta in the next couple of weeks.

Also, just to say this again - it requires an Android TV or device running Android 12 - so the Google TV or Sony TVs (maybe others too?)

from aerialviews.

Hotboy1987 avatar Hotboy1987 commented on June 5, 2024

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

I had a bit of free time so I've put together a test version of the app: (link removed)

Do let me know how you get on @hunterzero99 and @Hotboy1987 ...

from aerialviews.

Hotboy1987 avatar Hotboy1987 commented on June 5, 2024

from aerialviews.

Hotboy1987 avatar Hotboy1987 commented on June 5, 2024

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

For the moment it's Android 12 only but I'll try and add support for 11 or less in the next beta.

from aerialviews.

Hotboy1987 avatar Hotboy1987 commented on June 5, 2024

from aerialviews.

hunterzero99 avatar hunterzero99 commented on June 5, 2024

I tested out the beta you posted, my HDMI receiver shows that Aerial Views is giving a 60 fps signal instead of 29.97 (or 30 fps). I've tested on SmartYouTube and Plex switching from a 23.97 fps video to Aerial, it does work switching from the 23.97 fps to 60 fps for Aerial when paused, then it switches back to 23.97 fps when Aerial closes.

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

I think that's the correct behaviour. When playing 30fps content, a TV will be at a min. refresh rate of 60hz - there is no 30hz mode as far as I'm aware.

For 24fps content, even older TV have a 24hz mode and I think newer TVs might switch to 48hz as they have additional processing modes (eg. black frame insertion)

So, from your point of view, does video playback look correct and smooth - both in Aerial Views and when you return to Plex, SmartTube, etc ?

from aerialviews.

hunterzero99 avatar hunterzero99 commented on June 5, 2024

Yes, playback looks correct and smooth when switching back and forth. Nice work!

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

Ok, here is a new beta which should change frame rate under Android 11 or lower: (link removed)

from aerialviews.

Hotboy1987 avatar Hotboy1987 commented on June 5, 2024

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

I try your beta and it seems that it doesn't work ,, I paused nova app on video when I use refresh app to adjust the frame rate video ,, but when screensaver starts it show loading title and then it cancel and get back to the app and start video

Thanks for testing that beta. It seems like it's crashing, but I think I know the cause. I'll try and get another beta out soon.

EDIT: I got the crash report, so that confirms what I have to fix.

from aerialviews.

Eagle00Eye avatar Eagle00Eye commented on June 5, 2024

I would be interested in beta testing the Android 11 version on my Shield TV Pro 2019 when you have another ready to test.

Been dying for frame rate match. I easily notice judder in my 4K Drone Landscape videos I got from YouTube.

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

Sorry about the delay, here is a new build to test: (link removed)

This build should fix the crash on Android 11 (or less) devices but it probably won't change the frame rate.

If this build a) doesn't crash but also b) doesn't change the frame rate, I have another fix which should work.

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

That's fantastic to hear @Hotboy1987 and @Eagle00Eye

Can you both confirm what devices you're using and what version of Android they are running?

How it works - every time a video starts playing, I try to get the frame rate, then check if the window/screen is running at that refresh rate and change it if needed.

When will it be released - the next major update is v1.4.0 which is due soon so I hope to add these changes to v1.4.1 but that might be a month or two away. In the meantime, feel free to keep running the v1.3.3 beta if it fits your needs!

from aerialviews.

Eagle00Eye avatar Eagle00Eye commented on June 5, 2024

I have a Shield TV Pro 2019 running 9.1.1(33.2.0.157)

And thanks so much for your continued work on this project. Frame rate match for me was what it needed to really show off my Theatre room setup when I have guests over.

from aerialviews.

Hotboy1987 avatar Hotboy1987 commented on June 5, 2024

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

Thanks to you both for all the testing and patience!

So, frame rate switching works on Android 9 and Android 11 👍🏻

from aerialviews.

Eagle00Eye avatar Eagle00Eye commented on June 5, 2024

Shield Android 9.1.1 is actually Android 11. It's just a weird naming convention.

We both have the same shield running the same firmware.

from aerialviews.

Hotboy1987 avatar Hotboy1987 commented on June 5, 2024

from aerialviews.

Hotboy1987 avatar Hotboy1987 commented on June 5, 2024

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

I don't know why ,, but it return to blinking again when I pause video on nova player

Can you give me a little more detail on what's happening?

from aerialviews.

Hotboy1987 avatar Hotboy1987 commented on June 5, 2024

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

Same as before ,, when I pause video on app with frame rate match and screensaver starts with every video on screensaver after it starts it blank for second to adjust frame rate

I'll look into a fix for that issue - I assume all the videos are 30fps (ie the Apple vids) ?

from aerialviews.

Hotboy1987 avatar Hotboy1987 commented on June 5, 2024

from aerialviews.

Hotboy1987 avatar Hotboy1987 commented on June 5, 2024

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

To be honest, it sometimes happens and sometimes it doesn't. I don't know based on what,, but the circumstances are the same in both cases

That is odd. I checked the code and it does check if a refresh rate change is needed first. For example, if all your videos are 30fps, then it should change the display to 60hz only once.

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

As v1.4.0 has just been released, I've made an updated beta: (link removed)

Nothing new in this beta, it's just 1.4.0 with the test refresh-rate changing code added.

Do let me know if you notice any odd behaviour or issues as ExoPlayer has been updated a couple of times since the previous betas.

from aerialviews.

Eagle00Eye avatar Eagle00Eye commented on June 5, 2024

Thanks. I will install it tomorrow and let you know if there is a difference from the previous beta.

from aerialviews.

nadsy avatar nadsy commented on June 5, 2024

Thanks for letting me help test run this.

Atm on Shield Pro each video is playing at 60hz when I look via my Samsung qn90b settings.

Is this correct behaviour or should it be switching to for example 30hz to match apple tv aerial views video

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

Atm on Shield Pro each video is playing at 60hz when I look via my Samsung qn90b settings.

Is this correct behaviour or should it be switching to for example 30hz to match apple tv aerial views video

Yes, that's correct behaviour.

It's about requesting a refresh rate which is a multiple of the frame rate, as 24hz and 30hz are too low - modern TV panels can handle 120hz, for example.

To test the feature you'll have to watch a movie at 24fps, the TV should switch into a refresh rate which is a multiple of that eg. 120hz. If the screensaver runs, it'll request 60hz for the Apple videos which run at 30fps.

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

Here is the beta version which includes the option to enable auto refresh rate matching.

Look in Settings > Appearance

If there are no issues with this version, it should appear on GitHub, Play Store, etc in a few weeks.

(link removed)

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

Has anyone had a chance to try the v.1.4.1 beta 1? 😅

from aerialviews.

Hotboy1987 avatar Hotboy1987 commented on June 5, 2024

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

Thanks for that @Hotboy1987 - do you get the screen blanking when the screensaver runs from the home screen of the Shield?

I seem to get the same behaviour on the Chromecast with Google TV (Android 12) even though my TV is older.

I think this feature needs a little more work so I may leave it out of v1.4.1 and try and include it in v1.4.2

from aerialviews.

Hotboy1987 avatar Hotboy1987 commented on June 5, 2024

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

A quick question for everyone - on the Capabilities screen in Aerial Views, what refresh rate is listed? is it 59.94hz?

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

But some time it drop to 30hz I don't know why , and I have to restart my nvidia shield to bring 60hz back

Is 60hz (exactly) reported in the app or is it 59.94? the difference does matter :)

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

Here is a new beta to try... (link removed)

What's changed
The refresh rate will only be changed if needed, and differences between 29.97, 30, etc are ignored. There is no VRR (seamless) switching in this version (does anyone have the ability to test it?).

What I'd like tested, ideally...

  1. Running the screensaver with a mix of videos at 24fps and 30fps
  2. Running a video streaming app like Netflix, Disney+, etc then picking a 24fps film. Pausing the movie and waiting for the screensaver to start, it should set the screen back to 60hz for smooth playback at 30fps.

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

Has anyone had a chance to try the new beta yet?

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

Another small update to refresh rate matching... (link removed)

from aerialviews.

theothernt avatar theothernt commented on June 5, 2024

v1.5 has just been released with this option enabled. It'll be released in the Play Store, etc in the next couple of weeks.

If there are any issues, let me know... we may start a new thread/issue.

from aerialviews.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.