Custom Display Resolutions

From LinuxMCE
Revision as of 23:23, 15 July 2008 by Adamspiers (Talk | contribs) (Step 2: Adding new resolutions to the A/V Wizard: document AVWizard-Common.sh bug)

Jump to: navigation, search

If you have a display designed for use with a computer rather than as a regular TV, such as a plasma display, it is possible that the native resolution of the display is not one of the options presented by the AVWizard. In this case, with a small amount of tweaking it is possible to get the media director to drive the display at its native resolution, which will give you optimum picture quality.

Please note: the following has only been tested with a Hybrid. If someone knows how to do it with a diskless Media Director, please update this page.

Step 1: EDID

By default, LinuxMCE disables EDID - please see the EDID page for the details. However in this case you are probably better off re-enabling it. This should be done by editing /usr/pluto/templates/xorg.conf.in, which is the template from which the AVWizard automatically creates new Xorg configurations. You will find a line in this file like:

       Option "UseEDID"     "false"

Simply change false to true and save the file. Now we need to regenerate the Xorg config, but first we need to ensure that the right resolution is visible in the AVWizard.

Step 2: Adding new resolutions to the A/V Wizard

The resolutions visible in the wizard are set in the file /usr/pluto/share/Resolutions.conf. The resolution you need may well already be in there, but with visibility disabled. For instance, 1360x768 is already in there, and only requires the visibility flag to be toggled to make it appear in the wizard.

If your required resolution is not in there, copy a block from one of the other resolutions and modify it accordingly.

FIXME: someone please document the syntax of this file!

Furthermore, unfortunately these resolutions are also hardcoded in /usr/pluto/bin/AVWizard-Common.sh - look for the line starting Resolutions_HDTV and add your custom resolution to the shell array. This is arguably a bug where the code does not gracefully handle resolutions which are listed in /usr/pluto/share/Resolutions.conf but not listed in /usr/pluto/bin/AVWizard-Common.sh.

Step 3: Run the A/V Wizard to regenerate the correct Xorg configuration

Proceed through the wizard, selecting the resolution which you have just made appear, and make sure the display is happy with the setting. If not, switch to the tty1 virtual console via Control-Alt-F1, log in, and check the most recently modified Xorg logfile written by the wizard's test (this is probably /var/log/Xorg.1.log) to find out why it didn't work.

Step 4: Prevent LinuxMCE from changing the Xorg config

This is a bit of an ugly hack, and if the above is done correctly I'm not sure if it's even needed. Nevertheless, if you want to get really creative and write your own xorg.conf, this is the way to protect it from being overwritten:

Edit /usr/pluto/bin/Xconfigure.sh and add the following lines immediately below the #!/bin/bash:

   echo "$0 neutered to preserve custom xorg.conf"
   exit 0