Open Nosskirneh opened 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.
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!
I have the same problem with TiviMate. I think only first frame is grabbed and LEDs are not changing.
Same problem on Fire TV Cube (3rd Generation) 2022 on Fire OS 7.6.1.3 (PS7613/3701).
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 thesendImage
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.
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 thesendImage
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/
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.