Thursday, January 25, 2018

slimport - Allow rotate into portrait mode but do not rotate external display


To avoid this question being flagged as a duplicate, I have included a list of similar questions at the end of this post with an explanation about why my question is different. Please read these reasons before you flag this question as a duplicate!




I'm trying to work out how to get my Nexus 5, in portrait mode, to display on an external monitor, in portrait mode (connected via SlimPort/HDMI).


In landscape mode everything is fine:



Landscape mode, monitor on left, phone on right


However in portrait mode, the signal is still output as if it is meant to be displayed on a landscape screen, which doesn't work at all if the screen is in portrait mode:


Portait mode, monitors left and middle, phone on right


You can see here that in both landscape and portrait mode the phone is outputting the same 1920x1080 signal, except in portrait mode the screen content is being rotated by the phone's GPU and displayed as a 607x1080 image in the middle of the 1920x1080 screen. (It is not, as some people have suggested, outputting a 1080x1920 signal that the monitor is centering. You can verify this because changing the phone between landscape and portrait shows a nice rotation animation and the monitor does not lose sync as it would if the resolution changed.)


Since the phone, when in portrait mode, is rotating the picture sent to the external display, I want to disable this, so it is just output as-is with no rotation. This will of course appear wrong on a landscape monitor, but when you rotate that monitor into portrait mode it will be fine:


enter image description here


Is there any way to disable this rotation, so that an external display in portrait mode can display the phone's content when it too is in portrait mode?




Similar questions have been asked before, but none are after the same solution:





Answer



Try these instructions, using a computer with adb installed and your phone connected:


Android Jelly Bean (4.2) locks HDMI rotation by default. You can unlock by the instruction of this commit.





  1. Add special mirroring modes for demonstration purposes.




  2. Assume rotation of HDMI display is portrait.



    adb shell setprop persist.demo.hdmirotation portrait


  3. Don't lock rotation while HDMI is plugged in.


    adb shell setprop persist.demo.hdmirotationlock false


  4. Hide secondary displays from apps but continue mirroring to them.


    adb shell setprop persist.demo.singledisplay true




Source: https://community.freescale.com/docs/DOC-97740


No comments:

Post a Comment

samsung galaxy s 2 - Cannot restore Kies backup after firmware upgrade

I backed up my Samsung Galaxy S2 on Kies before updating to Ice Cream Sandwich. After the upgrade I tried to restore, but the restore fails ...