From LinuxMCE
Revision as of 23:33, 11 October 2007 by Rwilson131 (Talk | contribs) (AV Resolution and Refresh screen)

Jump to: navigation, search

Note: Due to a bug in the 0704 release, the numeric keys 0-9 on the Windows XP I/R remote may not set your output connector & resolution. If they do not, use the 0-9 keys on the keyboard or use another remote.

The AVWizard has two points of view:

- AVWizard user's point of view
That covers the aspect that one user should handle the AVWizard
- AVWizard developer's point of view
That match the part of how is to customise the AVWizard for your needs, like writing a separate backend, or changing the AVWizard for your needs


Consumer a/v gear, like DVD's, cable boxes and TV's, handle video differently than PC's and PC Monitors. PC's and PC Monitors exchange information about the resolution and capabilities of the monitors using EDID, and the PC's figure out automatically what type of monitor is connected to which video connector (ie VGA, DVI, etc.). Consumer a/v gear generally does not work like this; you tell the device what resolution to output usually with a switch, and it outputs the same video on all connectors at the same time.

This often leads to frustration when using a home theater PC because when you connect the PC to a TV the PC is expecting to get valid information from the TV using EDID, but most consumer TV's do not report this correctly, and so the PC's often times end up outputting the wrong resolution, or not correctly detecting which connector is active. To get it to work can be complicated, using utilities like PowerStrip for Windows, or editing Modeline's in Linux.

Starting A/V Wizard

Since LinuxMCE is intended to mainly be used with a PC we made it act like a normal consumer a/v device. It does not use EDID or try to talk to the TV or monitor. It just outputs whatever resolution you tell it to on whatever connector you specify. This is done using the video/audio setup wizard. This wizard is started automatically the first time the system boots, and does not start again. If you want to change the settings, you can restart the A/V wizard by choosing Advanced, Advanced, A/V Wizard from the main LinuxMCE menu, or during bootup you can either hold down the shift key on the keyboard, or press the a/v menu button on the remote to make A/V wizard start that boot. During bootup you will hear a series of escalating beeps to tell you when LinuxMCE is monitoring the Shift & A/V Menu keys. Hold the keys and A/V Wizard will start. When you hear the descending beeps that means it's too late; the bootup has already gone past the AV Wizard check and LinuxMCE has started.

How A/V Wizard Starts

When A/V Wizard starts it always outputs 640x480 on the VGA connector. So, if you are not using the VGA connector, you will likely see a blank, black screen when A/V Wizard starts, even if you previously saw the Kubuntu boot splash. You will know that the A/V Wizard is running because you hear a series of beeps. When you hear those beeps, if you have video, proceed to complete the A/V Wizard.

What to do if A/V Wizard does not start

If you do not, press the number 1 through 5 on the keyboard or the remote control to switch to the connector that is active. Wait about 15 seconds, and you will hear that same sequence of beeps telling you that A/V Wizard has now restarted using the connector you specified. If you don't hear the beeps after 15 seconds, press the number for your connector again.

 Keys for choosing a connector:

1: DVI
2: VGA
3: Component
4: Composite
5: S-Video

If you do hear the beeps, but you still don't see a picture, it's possible that the display you're using cannot handle 640x480. If so, then press the number 6-9, and 0, and shown below to select a resolution. Again, 15 seconds later, you'll hear the beeps when A/V Wizard is running. If you need to choose a connector besides the default VGA, press the 1-5 key and wait until you hear the beeps again before choosing another connector or resolution.

Keys for choosing a resolution:

6: 640x480
7: 1024x768
8: 720p
9: 1080i
0: 1080p

Once you have a picture you can proceed to complete the A/V Wizard and resize your user interface to fit your screen, choose your audio outputs and so on. You can follow the instructions listed here:

A/V Wizard makes the process a bit more complicated for normal PC users that are using PC Monitors and used to having the video card automatically figure out the correct connector and resolution. But it's the only way to make it simple to use a home theater PC with a consumer TV and still HD video without needing to mess with complex utilities.

AVWizard steps

AVWizard is a 10 steps easy wizard which covers everything of basic configuration of your system.

After that will launch an OrbiterGen which will create an Orbiter corresponding to that tool.

The pages are:

AV Welcome screen


AV Resolution and Refresh screen

Resolution Settings
Here, you can choose the desired output from your video card to TV or monitor. If you’ll choose VGA, there are many available resolutions and refresh rates. If you have a LCD TV or LCD monitor there is no need to choose a refresh rate. This is helpful only if you have a CRT monitor.
DVI/HDMI means that you can use a special cable from the DVI/HDMI output of your video card to DVI/HDMI input of LCD TV/monitor.
Resolutions available for DVI/HDMI Connections
You have the same range of resolutions like at VGA. Choose one that is suitable for your display device.
Component uses another special cable which is consisting at every extremity of three jacks (red, blue and green). The display and the video card must have these three jacks.
Resolutions available for Component Connections
The resolutions for component are made for using with wide screen monitors and TV’s. Choose the one that is best suited to your display device.
Composite is something like a TV out from your video card to the monitor/LCD TV. It uses another special cable with a yellow jack. Like at component, the video card and the display must have this kind of input connector.
Resolutions available for Composite Connections
If you are choosing Composite, you can also choose one TV standard from the list, supported by your display.
S-Video is another way to send the signal from the video card to monitor/TV. The jack for the cable looks like in the image below.
Resolutions available for S-Video Connections
As you can see in the picture above, you will choose one of the TV standards in the list.
Confirmation Screen for accepting Video Resolution
After choosing a resolution, a counter will appear on your screen which will stay 15 seconds. In this time, you can decide if the resolution is good for your monitor or not. If you like it, press Continue. If not, press Back.

AV Video Resolution counter

This short section requires expansion

AV UI Switcher

This short section requires expansion

AV Video Output

This short section requires expansion

AV Audio Connector

This short section requires expansion

AV Audio Volume

This short section requires expansion

AV Dolby Test

This short section requires expansion


This short section requires expansion

AV Final Selections

This short section requires expansion

Running A/V Wizard from Commandline

If you are having difficulty running the AVWizard normally (by selecting the option in the Orbiter) it can be run manually by typing in the command line.

Note that you should kill X and any process trying to reload it before running the wizard. You should only do this if your attempt to run it normally fails for whatever reason.

For developers

AVWizard is written in C++ using that libraries:

- SDL (SDL_image, SDL_rotozoom, etc.)
- libXML2
- network code

AVWizard has the next working steps:

- Generating screens of the AVWizard (in the /tmp folder as XML files)
- load one by one depending of the needs of running (Main AVWizard).

That two steps may be splitted in the future in two separately applications, that will make it more customisable and to not make it more "redundant code" like: defining object, save/load operations restore objects. The XML files keeps only the display representations of the data. The factory creates the coresponding objects in a WizardWidget class which contains a tree of WizardWidgets that has as much childs as we are used.