The LCD.xml file is used for customizing the output of the LCD Display. You can find the LCD Customization file in the UserData folder on your machine. The current default LCD.xml file may be found here.
Ensure that <haslcd> is set to true in .xbmc/userdata/guisettings.xml, to activate the LCD feature.
The file contains several sections representing each functions:
- Navigation (Used for Navigation in menus)
- Music (Used when listening to music)
- Video (Used when watching videos)
- General (General Display, when no activity)
- Xbelaunch (Used for displaying the label of the currently running Game or Application)
Each section describes how the LCD Display will look, when listening to Music, watching Videos, navigating through the menus, after launching a Game or Application and for general display.
Each section contains four lines, representing each line on a normal 4x20 LCD Display.
In addition to the layout information, we also have some settings for the LCD in LCD.xml. In particular, <disableonplay> is used to turn the LCD off during playback of video, music or both. Specify <disableonplay>video,music</disableonplay> to turn them both off, or just video or music if only one type of media should result in the LCD being disabled.
<Music> <line>$INFO[LCD.PlayIcon] $INFO[Player.Time]/$INFO[Player.Duration]</line> <line>$INFO[MusicPlayer.Title]</line> <line>$INFO[MusicPlayer.Artist]</line> <line>$INFO[MusicPlayer.Album] ($INFO[MusicPlayer.Year])</line> </Music>
The Output on the LCD Display for the above example will look like this:
> 00:42/3:20 Gold Digger Kanye West feat. Jamie Foxx Late Registration (2005)
Each line can contain any text and any Infolabels used for skinning. If the output line on the LCD Display contains more than 20 characters (for a standard 4x20 LCD Display) then the complete line gets automatically scrolled through the Display. There is more information on how XBMC parses the <line> tags here.
- Variable $INFO[InfoLabel]
- See InfoLabels for a complete list of InfoLabels which you can use for LCD Output.
- Variable $LOCALIZE[ID]
- You can also use the variable $LOCALIZE[ID] which does a lookup in the language file strings.xml for the [ID] and displays the corresponding text on the LCD Display.
5 LCD InfoLabels
In addition to the normal InfoLabels, you can use special LCD InfoLabels, which are displaying only the corresponding values without additional text. This is very helpful to display more information in one line at the same time and to avoid scrolling of the specified line.
|LCD.PlayIcon||Displays the Play / Stop / Pause / FF / REW Icon|
|LCD.ProgressBar||Displays a progress bar of the currently played item|
|LCD.CPUTemperature||Displays only the value for CPU Temperature with no additional text|
|LCD.GPUTemperature||Displays only the value for GPU Temperature with no additional text|
|LCD.HDDTemperature||Displays only the value for HDD Temperature with no additional text|
|LCD.FanSpeed||Displays only the value for Fan Speed with no additional text|
|LCD.Date||Displays only the current Date with no additional text|
|LCD.FreeSpace(Drive)||Displays only the value for remaining free space on the Drive (C, E, F, G) with no additional text|
|Displays the time in 2×1 sized characters|
|Displays the time in 2×2 sized characters|
|Displays the time in 4×3 sized characters|
Note: The LCD.Time InfoLabels are currently only in effect when XBMC is in screensaver mode. This is also the case if the visualization is started by the screensaver. In all other cases, the play and progress icons will be rendered, which give unexpected results.
When there is no value available in XBMC for a specific Infolabel when playing back music/videos/etc.., then the line on the LCD Display would be empty.
In this case the next line will be displayed instead of the previous line. This avoids displaying empty lines on the LCD Display.