[mythtv] NVidia Shield screen resolution

Mark Spieth mark at digivation.com.au
Tue Jul 31 03:17:24 UTC 2018


On 31/07/18 08:52, Peter Bennett wrote:
>
>
> On 07/29/2018 06:58 PM, Mark Spieth wrote:
>>
>> On 30 July 2018 08:29:31 GMT+10:00, Peter Bennett 
>> <pb.mythtv at gmail.com> wrote:
>>>
>>> On 07/29/2018 06:14 PM, Mark Spieth wrote:
>>>> Is this also with video playback or UI only?
>>> It is both. In the Setup->Appearance I tried changing the GUI size to
>>> 1280x720. That should have used one third of the width and height, but
>>> actually used two thirds of the width and height.
>>>> Is it different with media codec vs GLES?
>>>>
>>> No - media codec is also using OpenGL for output, the same as used by
>>> software decoding. It may be different with a surface but there is no
>>> code to use a surface at this time.
>>>> CPU definitely takes a hit for a 4K screen though.
>>>> Will do some research on this.
>>>>
>> Smells like a qt or platform gl problem. Need to check qt source for 
>> 1920 restrictions.
>>
>>
> FWIW 4K video works fine with Qt on Linux. Also I tested the 4K video 
> with Kodi on Shield and it is playing with the full 4K resolution on 
> my monitor, so it is possible to do it. I did scan carefully through 
> the Kodi manifest but I could find nothing that might help me.
>
Here is something to look at.
in qt source qtbase/src/plugins/platforms/android/androidjnimain.cpp

there are 2 functions
createSurface and setSurfaceGeometry. This is the lowest level before 
android and applies to qt's gl surface it allocates at start.
instrument with some __android_log_print to see what height and width 
are being used. These will appear in logcat.
Make changes and then makelibs.sh without clean. Wont take as long as 
clean and you dont need to export any diffs either.
Changes are preserved. since git is used for baselining you can git diff 
to get your patches too.

Note this is the file that launches main() in mythtv. see 
startapplication which launches a thread which then runs main(). This is 
called from the java initial code (some in qt and 1 overridden in our 
android_package_source tree.

Not sure when I can test this but may give you some hints as to where 
the 4k is going.

All parts of our android app is using gl for rendering.
You can also go for gdb and break in these functions if you are extra 
adventurous.

HTH
Mark


More information about the mythtv-dev mailing list