abrenoch / hyperion-android-grabber

Screen grabber for hyperion
MIT License
207 stars 36 forks source link

Android 12 issues #192

Open Nosskirneh opened 2 years ago

Nosskirneh commented 2 years ago

Upgraded to Android 12. It seems like it works perfectly in the home menu but as soon as you play a video (Plex), it gets the color of the first frame and it is not updated until you exit to the home menu. For another app (Twitch), it updated but with completely incorrect colors.

Nosskirneh commented 2 years ago

Hmm, I cloned the repo, fought various build errors, and finally managed to build a version with the latest sdk and gradle release and whatnot. Turns out that did not solve the problem... As a developer not having spent much time on Android before, this is a bit tough start. The setup looks solid, so does the SurfaceImage object in the sendImage method. @abrenoch Any hints what would be the culprit, or where to start looking?

It seems to me like it gets an image of some other layer of the current app since for example in SmartTube, the coloring is accurate for the UI that appears on top of the video that holds playback buttons (play, next, prev, etc) and more.

abrenoch commented 2 years ago

Hey @Nosskirneh thanks for digging into this a bit... I agree getting this running in AndroidStudio can be a little harrowing if you aren't already familiar. I feel like I need to re-learn it every 6 months.

As I mentioned in the other thread, one of those surfaces may be protected in one manner or another... But the plex issue is interesting since I use it all the time on my shieldTV with very few issues.

Just double checking - did you build the latest development version (or try the 1.1 beta)? That has some updated API usage that might help. Also, what hardware are you running this on, and what kind of media (4k/HDR/1080p/etc) are you trying in plex? That first frame bit is interesting to me but I'm not sure I have any insight to offer yet!

kkmaslowski commented 1 year ago

I have the same problem with TiviMate. I think only first frame is grabbed and LEDs are not changing.

tramix32 commented 1 year ago

Same problem on Fire TV Cube (3rd Generation) 2022 on Fire OS 7.6.1.3 (PS7613/3701).

oerix commented 2 months ago

Hmm, I cloned the repo, fought various build errors, and finally managed to build a version with the latest sdk and gradle release and whatnot. Turns out that did not solve the problem... As a developer not having spent much time on Android before, this is a bit tough start. The setup looks solid, so does the SurfaceImage object in the sendImage method. @abrenoch Any hints what would be the culprit, or where to start looking?

It seems to me like it gets an image of some other layer of the current app since for example in SmartTube, the coloring is accurate for the UI that appears on top of the video that holds playback buttons (play, next, prev, etc) and more.

Do you have a link to your fork repo? I can't seem to find it.

Nosskirneh commented 2 months ago

Hmm, I cloned the repo, fought various build errors, and finally managed to build a version with the latest sdk and gradle release and whatnot. Turns out that did not solve the problem... As a developer not having spent much time on Android before, this is a bit tough start. The setup looks solid, so does the SurfaceImage object in the sendImage method. @abrenoch Any hints what would be the culprit, or where to start looking? It seems to me like it gets an image of some other layer of the current app since for example in SmartTube, the coloring is accurate for the UI that appears on top of the video that holds playback buttons (play, next, prev, etc) and more.

Do you have a link to your fork repo? I can't seem to find it.

It was just local commits, but I uploaded them to a fork now. Feel free to have a look. https://github.com/Nosskirneh/hyperion-android-grabber/commits/android-12-tweaks/