Kodi Community Forum

Full Version: Multi-Monitor support.
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hiya,

I have this setup.

HTPC - --
------ TV
------ Projector


When I start Kodi, it starts on the TV and the projector is blank.

Is there any way of getting it to automatically switch to the projector when the TV is off (and vice-versa)

If I turn the TV off and the projector on, the projector stays blank. I can manually change it via Settings > System > Video, but if I manually change it, I have to edit guisettings to change it back to default, because I forget to change it back (this also means turning on the TV just before bed to change it back and choose yes, and is not very good for the WAF)

Is there a way to make it automatic, or maybe have it mirroring the display (I use a GT610, but I use live TV could it handle mirroring it with deinterlacing ?), or even a way to map a button to the key (I use flirc) so it can be switched via a remote?

thanks in advance.


some info, I am on Fernetmenta's build from the PPA.

Code:
07:17:49 T:139972464015296  NOTICE: Starting Kodi (14.0-ALPHA5 Git:15434d9). Platform: Linux x86 64-bit
07:17:49 T:139972464015296  NOTICE: Using Release Kodi x64 build
07:17:49 T:139972464015296  NOTICE: Kodi compiled Oct 31 2014 by GCC 4.8.2 for Linux x86 64-bit version 3.13.11 (199947)
07:17:49 T:139972464015296  NOTICE: Running on Ubuntu 14.04.1 LTS, kernel: Linux x86 64-bit version 3.13.0-37-generic
07:17:49 T:139972464015296  NOTICE: FFmpeg statically linked, version: 2.4.2-xbmc-2.4.2-Helix-alpha5


Code:
xbmc@xbmc:~/update$ /usr/lib/kodi/kodi-xrandr -d 0:0
<screen id="0" minimum_w="8" minimum_h="8" current_w="3840" current_h="1080" maximum_w="16384" maximum_h="16384">
  <output name="DVI-I-0" connected="false">
  </output>
  <output name="VGA-0" connected="false">
  </output>
  <output name="DVI-I-1" connected="true" w="1920" h="1080" x="0" y="0" crtc="0" wmm="930" hmm="523">
    <mode id="0x27f" name="1920x1080" w="1920" h="1080" hz="60.00000" current="true" preferred="true"/>
    <mode id="0x280" name="1920x1080" w="1920" h="1080" hz="59.93939" current="false" preferred="false"/>
    <mode id="0x281" name="1920x1080" w="1920" h="1080" hz="50.00000" current="false" preferred="false"/>
    <mode id="0x282" name="1920x1080" w="1920" h="1080" hz="29.97172" current="false" preferred="false"/>
    <mode id="0x283" name="1920x1080" w="1920" h="1080" hz="25.00000" current="false" preferred="false"/>
    <mode id="0x284" name="1920x1080" w="1920" h="1080" hz="23.97091" current="false" preferred="false"/>
    <mode id="0x285" name="1920x1080" w="1920" h="1080" hz="30.02669" current="false" preferred="false"/>
    <mode id="0x286" name="1920x1080" w="1920" h="1080" hz="29.99838" current="false" preferred="false"/>
    <mode id="0x287" name="1920x1080" w="1920" h="1080" hz="25.02224" current="false" preferred="false"/>
    <mode id="0x288" name="1400x1050" w="1400" h="1050" hz="59.97844" current="false" preferred="false"/>
    <mode id="0x289" name="1360x768" w="1360" h="768" hz="59.76371" current="false" preferred="false"/>
    <mode id="0x28a" name="1280x1024" w="1280" h="1024" hz="60.01974" current="false" preferred="false"/>
    <mode id="0x28b" name="1280x720" w="1280" h="720" hz="59.94343" current="false" preferred="false"/>
    <mode id="0x28c" name="1280x720" w="1280" h="720" hz="59.65427" current="false" preferred="false"/>
    <mode id="0x28d" name="1280x720" w="1280" h="720" hz="50.00000" current="false" preferred="false"/>
    <mode id="0x28e" name="1024x768" w="1024" h="768" hz="60.00384" current="false" preferred="false"/>
    <mode id="0x28f" name="800x600" w="800" h="600" hz="60.31654" current="false" preferred="false"/>
    <mode id="0x290" name="720x576" w="720" h="576" hz="50.00000" current="false" preferred="false"/>
    <mode id="0x291" name="720x576" w="720" h="576" hz="25.04006" current="false" preferred="false"/>
    <mode id="0x292" name="720x480" w="720" h="480" hz="59.94006" current="false" preferred="false"/>
    <mode id="0x293" name="640x480" w="640" h="480" hz="59.95238" current="false" preferred="false"/>
    <mode id="0x294" name="640x480" w="640" h="480" hz="59.94048" current="false" preferred="false"/>
    <mode id="0x295" name="640x480" w="640" h="480" hz="59.92857" current="false" preferred="false"/>
  </output>
  <output name="HDMI-0" connected="true" w="1920" h="1080" x="1920" y="0" crtc="1" wmm="0" hmm="0">
    <mode id="0x27f" name="1920x1080" w="1920" h="1080" hz="60.00000" current="true" preferred="true"/>
    <mode id="0x280" name="1920x1080" w="1920" h="1080" hz="59.93939" current="false" preferred="false"/>
    <mode id="0x281" name="1920x1080" w="1920" h="1080" hz="50.00000" current="false" preferred="false"/>
    <mode id="0x282" name="1920x1080" w="1920" h="1080" hz="29.97172" current="false" preferred="false"/>
    <mode id="0x283" name="1920x1080" w="1920" h="1080" hz="25.00000" current="false" preferred="false"/>
    <mode id="0x284" name="1920x1080" w="1920" h="1080" hz="23.97091" current="false" preferred="false"/>
    <mode id="0x285" name="1920x1080" w="1920" h="1080" hz="30.02669" current="false" preferred="false"/>
    <mode id="0x286" name="1920x1080" w="1920" h="1080" hz="29.99838" current="false" preferred="false"/>
    <mode id="0x287" name="1920x1080" w="1920" h="1080" hz="25.02224" current="false" preferred="false"/>
    <mode id="0x297" name="1600x1200" w="1600" h="1200" hz="60.00000" current="false" preferred="false"/>
    <mode id="0x298" name="1440x900" w="1440" h="900" hz="59.88745" current="false" preferred="false"/>
    <mode id="0x299" name="1280x1024" w="1280" h="1024" hz="75.02467" current="false" preferred="false"/>
    <mode id="0x28a" name="1280x1024" w="1280" h="1024" hz="60.01974" current="false" preferred="false"/>
    <mode id="0x29a" name="1280x800" w="1280" h="800" hz="119.90850" current="false" preferred="false"/>
    <mode id="0x29b" name="1280x800" w="1280" h="800" hz="59.81033" current="false" preferred="false"/>
    <mode id="0x29c" name="1280x720" w="1280" h="720" hz="60.00000" current="false" preferred="false"/>
    <mode id="0x28b" name="1280x720" w="1280" h="720" hz="59.94343" current="false" preferred="false"/>
    <mode id="0x28d" name="1280x720" w="1280" h="720" hz="50.00000" current="false" preferred="false"/>
    <mode id="0x29d" name="1024x768" w="1024" h="768" hz="119.98853" current="false" preferred="false"/>
    <mode id="0x29e" name="1024x768" w="1024" h="768" hz="75.02858" current="false" preferred="false"/>
    <mode id="0x29f" name="1024x768" w="1024" h="768" hz="70.06936" current="false" preferred="false"/>
    <mode id="0x28e" name="1024x768" w="1024" h="768" hz="60.00384" current="false" preferred="false"/>
    <mode id="0x2a0" name="1024x576" w="1024" h="576" hz="60.00531" current="false" preferred="false"/>
    <mode id="0x2a1" name="800x600" w="800" h="600" hz="75.00000" current="false" preferred="false"/>
    <mode id="0x2a2" name="800x600" w="800" h="600" hz="72.18757" current="false" preferred="false"/>
    <mode id="0x28f" name="800x600" w="800" h="600" hz="60.31654" current="false" preferred="false"/>
    <mode id="0x290" name="720x576" w="720" h="576" hz="50.00000" current="false" preferred="false"/>
    <mode id="0x291" name="720x576" w="720" h="576" hz="25.04006" current="false" preferred="false"/>
    <mode id="0x292" name="720x480" w="720" h="480" hz="59.94006" current="false" preferred="false"/>
    <mode id="0x2a3" name="720x480" w="720" h="480" hz="30.02722" current="false" preferred="false"/>
    <mode id="0x2a4" name="640x480" w="640" h="480" hz="75.00000" current="false" preferred="false"/>
    <mode id="0x2a5" name="640x480" w="640" h="480" hz="72.80880" current="false" preferred="false"/>
    <mode id="0x294" name="640x480" w="640" h="480" hz="59.94048" current="false" preferred="false"/>
  </output>
</screen>
Bumpetybumpbump
No. Xbmc has nothing to do that.

You need to script that yourself. E.g. use xrandr to find out which one is enabled and change that accordingly.
Ok, thats how i was doing it before. I thought there may be an easier way, bummer.

Thanks for the answer
It's quite enough to call: xrandr --auto with your flirc isn't it?
@sanar

Maybe not the answer you were looking for, but I use one of these to achieve a similar objective. http://www.ebay.co.uk/itm/1x2-v1-4-HDMI-...259734e4ea

I use a full HD TV on one port and a full HD Projector on the other port. I can have one or both on at the same time. No changes to any software. Currently being driven by a Raspberry pi, but used an Ubuntu machine before that.

Cheers
Spart
Hmmm i have not used --auto, i shall have to look at that. I have been using

xrandr -d 0:0 --output DVI-I-1 --off
xrandr -d 0:0 --output HDMI-0 --mode 0x281

So i shall have a look at --auto.

@spart, yeah i have a splitter and remote for it somewhere, if i cant work out how to link the xrandr command to flirc i shall have to did it out.
I don't think --auto will solve your issue, because switching off the tv does not disconnect it. Even if tv is off, EDID can still be read. That's the reason why there can't be any solution we can provide. How should Kodi know about switching tv on/off?
No auto didnt solve it (as you knew)

I have linked the projoff and projon comment to buttons on my remote using triggerhappy, and it seems to work reasonably well. sometimes I have to reload the skin due to corruption, and on the odd occasion (and this is very rare) I have to reload kodi because video's play in all grey, but that is very rare.

Quote:How should Kodi know about switching tv on/off?

I just presumed (wrongly obviously) that it could detect when a device was powered on or not.