Advancedsettings.xml: Difference between revisions

From Official Kodi Wiki
Jump to navigation Jump to search
>DonJ
>Jezz X
No edit summary
(176 intermediate revisions by 37 users not shown)
Line 1: Line 1:
The "'''AdvancedSettings.xml'''" file, which does not exist by default, may be created by a user in their "'''\XBMC\UserData\'''" folder, this file can contain additional settings and pre-defined values for the settings available in the GUI (thus removing them from the GUI settings screens). "'''AdvancedSettings.xml'''" is  useful for advanced/expert users and for installers. (The "'''\XBMC\UserData\'''" folder is located where you installed XBMC, so usually  under "E:\XBMC\UserData\", "F:\XBMC\UserData\", "E:\Apps\XBMC\UserData\" or "F:\Apps\XBMC\UserData\")
{{GoToParent|Parent=The UserData Folder}}
__TOC__
The "'''advancedsettings.xml'''" file, which does not exist by default, may be created by a user in their "'''\[[The UserData Folder|UserData]]\'''" folder.<BR>
Please consult your [[Frequently_Asked_Questions|plaform specific FAQ]] for the appropriate location.<BR>
This file can contain additional settings and pre-defined values for the settings available in the GUI (thus removing them from the GUI settings screens).<BR>
"'''advancedsettings.xml'''" is  useful for advanced/expert users and for installers.<BR>
:'''NOTE! This file will not exist unless created by the end-user, meaning YOU!'''<BR>


:'''NOTE! This file will not exist unless created by the end-user, meaning YOU!'''
The XBMC software will never write to this file, so any settings you define will not be overwritten by any XBMC GUI settings.<BR>
 
So you can only edit this file manually on your computer, via a text-editor (like Notepad in Windows or a XML-editor).<BR>
The XBMC software will never write to this file, so any settings you define will not be overwritten by any XBMC GUI settings. So you can only edit this file manualy on your computer, via a text-editor (like Notepad in Windows or a XML-editor). All the settings available outside of the GUI are documented on this page.
All the settings available outside of the GUI are documented on this page.<BR>
<BR>NOTE: This file is CaSe SeNsItIvE and must contain the <advancedsettings>
tag (see the layout section below), so make sure you use all lower-case tags or they will not be read properly by XBMC.<BR>


==Layout==
==Layout==


The layout of AdvancedSettings.xml is as follows:
The layout of advancedsettings.xml is as follows:


<xml>
<source lang="xml">
<advancedsettings>
<advancedsettings>
     <setting>value</setting>
     <setting>value</setting>
Line 15: Line 23:
     <setting>value</setting>
     <setting>value</setting>
</advancedsettings>
</advancedsettings>
</xml>
</source>


where "setting" gives the name of the setting, and "value" gives it's value.
where "setting" gives the name of the setting, and "value" gives it's value.


A list of the available "setting" strings and their values is given below.
A list of the available "setting" strings and their values is given below.


==List of available settings==
==List of available settings==
Line 26: Line 33:
====<loglevel>====
====<loglevel>====
The logging level that XBMC will use to log errors and information.  Available values are:
The logging level that XBMC will use to log errors and information.  Available values are:
*-1  No logging, supresses all log output.
*-1  No logging, suppresses all log output.
*0  Normal logging, only logging errors (Default)
*0  Normal logging, only logging errors (Default)
*1  Debug logging.
*1  Debug logging.
*2  Debug logging with freemem shown on screen.
*2  Debug logging with freemem, fps and cpu usage shown on screen.
*3  Debug logging with freemem and full smb logging.
*3  Debug logging with freemem, fps and cpu usage and full smb logging.
NOTE:  As of r22142, loglevel also accepts a "hide" boolean attribute.  Default value is true (old behavior), which hides the "enable debugging" guisetting.  When false, the "enable debugging" guisetting will switch between min(loglevel, 0) and max(loglevel, 2) for off and on respectively.  This is useful for chasing infrequent bugs where you may always want a debug text log, yet still be able to get at the on screen debug info without restarting the app.
Example:
<source lang="xml">
    <loglevel hide="false">2</loglevel>
</source>
 
====<skiploopfilter>====
This amount of the loop filter to skip on h264 decoding.  This can help the performance of slower machines when decoding h264 content.  Values, in decreasing CPU usage (and decreasing quality)
*-16 None.
*0 Skip only empty frames (default)
*8 Skip non-reference frames (default on ATV)
*16 Skip bi-dir frames
*32 Skip all non-key frames
*48 Skip all frames.
Example:
<source lang="xml">
  <skiploopfilter>8</skiploopfilter>
</source>


====<cddbaddress>====
====<cddbaddress>====
The address of the online CDDb database.  You may set this to another freedb mirror if there is a more suitable one.  Defaults to freedb.freedb.org
The address of the online CDDb database.  You may set this to another freedb mirror if there is a more suitable one.  Defaults to freedb.freedb.org


====<imdbaddress>====
====<nodvdrom>====
The address of the online IMDb database.  You may set this to another of IMDb's servers for more localized results.  Defaults to akas.imdb.com
Set to true if you have no DVD-ROM drive in your XBox, or if it's broken.  Defaults to false.
 
====<autodetectfg>====
Set to false if you have an old bios that can't handle the auto-detection of the F and G partitions of the XBox Hard disk drive.  Defaults to true.
 
<autodetectfg>False</autodetect>
 
====<usefdrive>====
Set to true if you have an F partition.  Only read if <autodetectfg> is set to false.
 
<usefdrive>True</usefdrive>
 
====<usegdrive>====
Set to true if you have a G partition.  Only read if <autodetectfg> is set to false.


====<usepcdvdrom>====
====<usepcdvdrom>====
Set to true if you have replaced the XBox DVD-ROM drive with a standard PC DVD-ROM.  Expect performance to be somewhat variable.  Defaults to false.
Set to true if you have replaced the XBox DVD-ROM drive with a standard PC DVD-ROM.  Expect performance to be somewhat variable.  Defaults to false. <br>
removed for non XBox builds with r14123.


====<detectasudf>====
====<detectasudf>====
Set to true if you wish to detect joint ISO9660/UDF disks as UDF.  Defaults to false.
Set to true if you wish to detect joint ISO9660/UDF disks as UDF.  Defaults to false.
====<disablemodchipdetection>====
Set to true to disable modchip detection.  This is required for X2 chips to launch XBEs.


====<cachepath>====
====<cachepath>====
Set to the path on the XBox Harddisk that XBMC should use for when it caches files (such as when caching subtitles or for unzipping or unrarring).  Defaults to Z:\
Set to the path on the XBox Harddisk that XBMC should use for when it caches files (such as when caching subtitles or for unzipping or unrarring).  Defaults to Z:\
====<virtualshares>====
Set to false to disable virtual shares like plugin, last.fm or shoutcast sources. Defaults to true.


====<pictureextensions>====
====<pictureextensions>====
Line 67: Line 86:
.png .jpg .jpeg .bmp .gif .ico .tif .tiff .tga .pcx .cbz .zip .cbr .rar .m3u
.png .jpg .jpeg .bmp .gif .ico .tif .tiff .tga .pcx .cbz .zip .cbr .rar .m3u


<xml>
<source lang="xml">
<pictureextensions>
<pictureextensions>
   <add>.ex1|.ex2</add>
   <add>.ex1|.ex2</add>
   <remove>.ex3|.ex4</remove>
   <remove>.ex3|.ex4</remove>
</pictureextensions>
</pictureextensions>
</xml>
</source>


====<musicextensions>====
====<musicextensions>====
Line 78: Line 97:


These are the current default extensions for MUSIC:
These are the current default extensions for MUSIC:
 
<pre>
.nsv .m4a .flac .aac .strm .pls .rm .mpa .wav .wma .ogg .mp3 .mp2 .m3u .mod .amf .669 .dmf .dsm .far .gdm .imf .it .m15 .med .okt .s3m .stm .sfx .ult .uni .xm .sid .ac3 .dts .cue .aif .aiff .wpl .ape .mac .mpc .mp+ .mpp .shn .zip .rar .wv .nsf .spc .gym .adplug .adx .dsp .adp .ymf .ast .afc .hps .xsp
.nsv .m4a .flac .aac .strm .pls .rm .mpa .wav .wma .ogg .mp3 .mp2 .m3u .mod .amf .669 .dmf .dsm .far .gdm  
 
.imf .it .m15 .med .okt .s3m .stm .sfx .ult .uni .xm .sid .ac3 .dts .cue .aif .aiff .wpl .ape .mac .mpc  
<xml>
.mp+ .mpp .shn .zip .rar .wv .nsf .spc .gym .adplug .adx .dsp .adp .ymf .ast .afc .hps .xsp
</pre>
<source lang="xml">
<musicextensions>
<musicextensions>
   <add>.ex1|.ex2</add>
   <add>.ex1|.ex2</add>
   <remove>.ex3|.ex4</remove>
   <remove>.ex3|.ex4</remove>
</musicextensions>
</musicextensions>
</xml>
</source>


====<videoextensions>====
====<videoextensions>====
Line 92: Line 113:


These are the current default extensions for VIDEOS:
These are the current default extensions for VIDEOS:
 
<pre>
.m4v .3gp .nsv .ts .ty .strm .rm .rmvb .m3u .ifo .mov .qt .divx .xvid .bivx .vob .nrg .img .iso .pva .wmv .asf .asx .ogm .m2v .avi .bin .dat .dvr-ms .mpg .mpeg .mp4 .mkv .avc .vp3 .svq3 .nuv .viv .dv .fli .flv .rar .001 .wpl .zip
.m4v .3gp .nsv .ts .ty .strm .rm .rmvb .m3u .ifo .mov .qt .divx .xvid .bivx .vob .nrg .img
 
.iso .pva .wmv .asf .asx .ogm .m2v .avi .bin .dat .dvr-ms .mpg .mpeg .mp4 .mkv .avc .vp3  
<xml>
.svq3 .nuv .viv .dv .fli .flv .rar .001 .wpl .zip
</pre>
<source lang="xml">
<videoextensions>
<videoextensions>
   <add>.ex1|.ex2</add>
   <add>.ex1|.ex2</add>
   <remove>.ex3|.ex4</remove>
   <remove>.ex3|.ex4</remove>
</videoextensions>
</videoextensions>
</xml>
</source>


====<languagecodes>====
====<languagecodes>====
Translation table for subtitle and audio names.  Contains entries of the form
Translation table for subtitle and audio names.  Contains entries of the form


<xml>
<source lang="xml">
     <code><short>alt</short><long>Alternate</long></code>
     <code><short>alt</short><long>Alternate</long></code>
</xml>
</source>


====<sorttokens>====
====<sorttokens>====
Allows you to specify additional tokens that will be ignored at the start of lines during sorting.
Allows you to specify additional tokens that will be ignored at the start of lines during sorting.
<xml>
<source lang="xml">
   <sorttokens>
   <sorttokens>
     <token>the</token>
     <token>the</token>
   </sorttokens>
   </sorttokens>
</xml>
</source>


====<samba>====
====<samba>====
 
<source lang="xml">
<xml>
<samba>
<samba>
   <doscodepage></doscodepage> # code page to use for filenames
   <doscodepage></doscodepage> <!-- code page to use for filenames -->
   <clienttimeout>10</clienttimeout> # timeout (in seconds)
   <clienttimeout>10</clienttimeout> <!-- timeout (in seconds) -->
  <statfiles>true</statfiles>  <!-- Set to false to disable smb stat() on files to speed up listings of large directories (over slow links) -->
</samba>
</samba>
</xml>
</source>
 
====<moviestacking>====
This tag used to be called <videostacking>.<br>
Contains "''[[Regular Expression (RegEx) Tutorial|Regular Expression]]''" syntax (commonly refered to as "''[[Regular Expression (RegEx) Tutorial|RegEx]]''" or "''[[Regular Expression (RegEx) Tutorial|RegExp]]''") for use in matching filenames in a "stack" of video files.


====<videostacking>====
As of r24405 video stacking regular expressions '''must''' contain exactly four (4) capture expressions. Old one and three capture expressions are dropped (see log). Adapt them if you still need them. They are (Title)(Volume)(Ignore)(Extension).  Files are considered stackable if all fields match '''except''' VolumeThe stack name is then created by concatenating the Title, Ignore and Extension fieldsComparisons are still performed case-insensitive.
Contains regular expressions for use in matching filenames in a "stack" of video files.  The regular expression must have a (...) surrounding the volume label portionText matching is compared case-insensitiveAnything matched by the regular expression will be removed from the titlename.  If more than one (...) section is used, the first one will be the prefix, the second one the volume label, and the third one (if it exists) will be the suffixUse this to keep extensions after matching.  If more than one expression matches a particular filename, the first one will be used.


Default stacking:
Default stacking:
<source lang="xml">
  <moviestacking>
    <!-- cd/dvd/part/pt/disk/disc [0] <1-4|a-d> -->
    <regexp>(.*?)([ _.-]?(?:cd|dvd|p(?:ar)t|dis[ck])[ _.-]*0?[1-4a-d])(.*?)(\.[^.]+)$</regexp>
    <!-- movienamea-xvid.avi, movienameb-xvid.avi -->
    <regexp>(.*?)([ ._-]?[a-d])([ ._-]?.*?)(\.[^.]+)$</regexp>
  </moviestacking>
</source>


<xml>
If the argument '''action="append"''' or '''append="yes"''' is supplied, the default videostacking regular expressions will remain intact and the user specified ones will be added to the end.  Example:
   <videostacking>
<source lang="xml">
     <regexp>[ _\.-]+cd[ _\.-]*([0-9a-d]+)</regexp>
   <moviestacking action="append">
    <regexp>[ _\.-]+dvd[ _\.-]*([0-9a-d]+)</regexp>
     <!-- This expression will match movename1-xvid.avi, moviename2-xvid.avi.
    <regexp>[ _\.-]+part[ _\.-]*([0-9a-d]+)</regexp>
        Be warned that it will likely stack sequels in a flat directory layout,
     <regexp>()[ _\.-]+([0-9]*[abcd]+)(\....)$</regexp>
        so it is only recommend in a dir-per-video layout. -->
    <regexp>()[\^ _\.-]+([0-9]+)(\....)$</regexp>
     <regexp>(.*?)([ ._-]?[0-9])([ ._-]?.*?)(\.[^.]+)$</regexp>
    <regexp>([a-z])([0-9]+)(\....)$</regexp>
   </moviestacking>
    <regexp>()([ab])(\....)$</regexp>
</source>
   </videostacking>
</xml>


If the argument append="yes" is supplied all default videostackings will stay intact and the ones specified will be added to the end.
 
<xml>
If the argument '''action="prepend"''' is supplied, the default videostacking regular expressions will remain intact and the user specified ones will be added to the beginning. Example:
   <videostacking append="yes">
<source lang="xml">
     <regexp>custom[ _\.-]*([0-9a-d]+)</regexp>
   <moviestacking action="prepend">
   </videostacking>
     <regexp>(Title)(Volume)(Ignore)(Extension)</regexp>
</xml>
  </moviestacking>
</source>
 
If no argument is supplied, or the argument '''append="no"''' is supplied, the default videostacking regular expressions are overwritten by the user specified ones.
 
====<cleandatetime>====
Contains a regular expression to match a year number in a string. The string found before will be used as basis string getting cleaned by the cleanstrings expressions. By default date formats like MM:YY are ignored.
 
Default expression:
<source lang="xml">
<video>
  <cleandatetime>(.+[^ _\,\.\(\)\[\]\-])[ _\.\(\)\[\]\-]+(19[0-9][0-9]|20[0-1][0-9])([ _\,\.\(\)\[\]\-][^0-9]|$)</cleandatetime>
</video>
</source>
 
====<cleanstrings>====
Contains regular expressions to clean unwanted chars from filenames or folders.
 
Default expressions:
<source lang="xml">
<video>
  <cleanstrings>
  <regexp>[ _\,\.\(\)\[\]\-](ac3|dts|custom|dc|divx|divx5|dsr|dsrip|dutch|dvd|dvdrip|dvdscr|dvdscreener|screener|dvdivx|cam|fragment|fs|hdtv|hdrip|hdtvrip|internal|limited|multisubs|ntsc|ogg|ogm|pal|pdtv|proper|repack|rerip|retail|r3|r5|bd5|se|svcd|swedish|german|read.nfo|nfofix|unrated|ws|telesync|ts|telecine|tc|brrip|bdrip|480p|480i|576p|576i|720p|720i|1080p|1080i|hrhd|hrhdtv|hddvd|bluray|x264|h264|xvid|xvidvd|xxx|www.www|cd[1-9]|\[.*\])([ _\,\.\(\)\[\]\-]|$)</regexp>
  <regexp>(\[.*\])</regexp>
   </cleanstrings>
</video>
</source>
 
The "append" and "action" arguments described in the [[Advancedsettings.xml#.3Cmoviestacking.3E|moviestacking]] section work the same for cleanstrings tags.


====<tvshowmatching>====
====<tvshowmatching>====
Contains regular expression to match the season and episode numbers in filenames.
Contains "''[[Regular Expression (RegEx) Tutorial|Regular Expression]]''" syntax (commonly refered to as "''[[Regular Expression (RegEx) Tutorial|RegEx]]''" or "''[[Regular Expression (RegEx) Tutorial|RegExp]]''") to match the season and episode numbers in filenames.  Text matching is compared case-insensitive.


Default stacking:
Default stacking:


<xml>
<source lang="xml">
   <tvshowmatching>
   <tvshowmatching>
     <regexp>\[[Ss]([0-9]*)\]_\[[Ee]([0-9]*)[^\\/]*</regexp>
     <regexp>\[[Ss]([0-9]+)\]_\[[Ee]([0-9]+)([^\\/]*)</regexp>  <!-- foo_[s01]_[e01] -->
     <regexp>[\._ \-]([0-9]*)x([0-9]*)[^\\/]*</regexp>
     <regexp>[\._ \-]([0-9]+)x([0-9]+)([^\\/]*)</regexp>  <!-- foo.1x09 -->
     <regexp>[\._ \-][Ss]([0-9]*)[\.\-]?[Ee]([0-9]*)[^\\/]*</regexp>
     <regexp>[\._ \-][Ss]([0-9]+)[\.\-]?[Ee]([0-9]+)([^\\/]*)</regexp> <!-- foo, s01e01, foo.s01.e01, foo.s01-e01 -->
    <regexp>[\._ \-]([0-9]*)([0-9][0-9])[\._ \-][^\\/]*</regexp>
     <regexp>[\._ \-]([0-9]+)([0-9][0-9])([\._ \-][^\\/]*)</regexp> <!-- foo.103 -->
     <twopart>
        <regexp>\[[Ss]([0-9]*)\]_\[[Ee][0-9][0-9]\-([0-9]*)\][^\\/]*</regexp>
        <regexp>[\._ \-][Ss]([0-9]*)[^0-9]*[Ee][0-9][0-9]\-([0-9]*)[^\\/]*</regexp>
        <regexp>[\._ \-][0-9]*x[0-9]*[\._ \-]*([0-9]*)x([0-9]*)[^\\/]*</regexp>
    </twopart>
   </tvshowmatching>
   </tvshowmatching>
</xml>
</source>
 
The "append" and "action" arguments described in the videostacking section work the same for tvshowmatching tags.  Examples of matching regexps for certain filenames can be found on the [[TV_Shows]] page.
 
NOTE: for multi-episode matching to work, there needs to be a third set of parentheses on the end.  This part is fed back into the regexp engine.
 
A discussion of pre-made regex lists to match common names can be found at [http://forum.xbmc.org/showthread.php?t=51614 http://forum.xbmc.org/showthread.php?t=51614].  These drastically improve XMBC's ability to match TV show names, at the risk of some additional false positives.


The append="yes" argument works as in videostacking and is possible for the twopart and tvshowmatching tags.
====<excludefromscan/excludefromlisting>====
Contains regular expressions to match filenames or folders which should be excluded from a library scan (except tvshows).  This can be for both Video or Audio sections of advancedsettings.xml.
 
Default excludes:
 
<source lang="xml">
<video>
  <excludefromscan>
    <regexp>-trailer</regexp>
    <regexp>[._- ]sample<regexp>
  </excludefromscan>
</video>
</source>
 
The "append" and "action" arguments described in the [[Advancedsettings.xml#.3Cmoviestacking.3E|moviestacking]] section work the same for excludefromscan tags.
 
====<excludetvshowsfromscan>====
Contains regular expressions to match filenames or folders which should be excluded from a tvshow library scan.
 
Default excludes:
 
<source lang="xml">
<video>
  <excludetvshowsfromscan>
    <regexp>[-._ ]sample[-._ ]</regexp>
  </excludetvshowsfromscan>
</video>
</source>
 
The "append" and "action" arguments described in the [[Advancedsettings.xml#.3Cmoviestacking.3E|moviestacking]] section work the same for excludetvshowsfromscan tags.


====<pathsubstitution>====
====<pathsubstitution>====
Path substitutions for use with playlist loading.  These are processed in order, and are useful for substituting an absolute path on a PC with a path suitable for XBMC to handle.  Default is no path substitutions defined.  An example is:
Path substitutions for use with playlist loading.  These are processed in order, and are useful for substituting an absolute path on a PC with a path suitable for XBMC to handle.  Default is no path substitutions defined.  An example is:


<xml>
<source lang="xml">
   <pathsubstitution>
   <pathsubstitution>
     <substitute>
     <substitute>
Line 181: Line 271:
     </substitute>
     </substitute>
   </pathsubstitution>
   </pathsubstitution>
</xml>
</source>
 
====<forcedswaptime>====
Use to force a backbuffer->frontbuffer swap while vsync is enabled. Set to the time (in ms) to allow for the swap (eg <forcedswaptime>1</forcedswaptime> is typical).  It defaults off.


====<playlistasfolders>====
====<playlistasfolders>====
In the recent releases, playlists are treated as folders. Selecting a playlist no longer plays it, but opens it, as if it were a folder.
In the recent releases, playlists are treated as folders. Selecting a playlist no longer plays it, but opens it, as if it were a folder.<br>
Set to false to revert to the previous behavior. When you select a playlist, its content is added to the list of elements to be played.<br>
'''NOTE!''' This setting will not affect smart playlists, they will always show as folders.


Set to false to revert to the previous behavior:<br>
====<playlistretries>====
When you select a playlist, its content is added to the list of elements to be played.
The default number of retries if for example a source is offline is 100.
With this control you can alter the number of consecutive failed items before a playlist fails.
 
<source lang="xml">
  <playlistretries>100</playlistretries>
</source>
 
====<playlisttimeout>====
The default timeout before item failure is 20 sec. It can be changed with this control
 
<source lang="xml">
  <playlisttimeout>20</playlisttimeout>
</source>


====<songinfoduration>====
====<songinfoduration>====
This controls how long the song information will remain onscreen when the song changes during visualisations.  The valid range is 1 to 15, in seconds.  This does not include the duration of any transition effects. (The default is 2 seconds.)
This controls how long the song information will remain onscreen when the song changes during visualisations.  The valid range is "1" to "Indefinite (0)", in seconds.  This does not include the duration of any transition effects. (The default is 10 seconds.)


<xml>
<source lang="xml">
   <songinfoduration>10</songinfoduration>
   <songinfoduration>10</songinfoduration>
</xml>
</source>


====<remoterepeat>====
====<remoterepeat>====
Line 203: Line 310:


====<displayremotecodes>====
====<displayremotecodes>====
Set to true to have XBMC display the Infrared Remote's button codes (OBC's) on screen when you press buttons.  Useful for assigning functions to the buttons on a universal remote control.  Defaults to false.
'''Xbox only.''' Set to 'true' to have XBMC display the Infrared Remote's button codes (OBC's) on screen when you press buttons.  Useful for assigning functions to the buttons on a universal remote control.  Defaults to false.


====<thumbsize>====
====<thumbsize>====
Size of the square in pixels that XBMC will use to cache thumbnail images.  If the thumb is smaller than this size it will be cached as-is.  If it is larger it will be scaled to within this square.  Default is 192.
Size of the square in pixels that XBMC will use to cache thumbnail images.  If the thumb is smaller than this size it will be cached as-is.  If it is larger it will be scaled so that the number of pixels is less than a square of this value.  Default is 512 (192 on xbox), which refers to 512x512 = 262144 (for XBox 192x192 = 36864) pixels in total.  The thumbnail will be cached at using the same aspect ratio as the original image, using up to 262144 (for XBox 36864) pixels.


====<musicthumbs>====
====<musicthumbs>====
A list of additional files to try when searching for music thumbnail images.  (The default is folder.jpg which can be removed.)
A list of additional files to try when searching for music thumbnail images.  (The default is folder.jpg which can be removed.)


<xml>
<source lang="xml">
<musicthumbs>
<musicthumbs>
   <remove>folder.jpg</remove>
   <remove>folder.jpg</remove>
   <add>thumb.jpg|cover.jpg</add>
   <add>thumb.jpg|cover.jpg</add>
</musicthumbs>
</musicthumbs>
</xml>
</source>
 
====<musicfilenamefilters>====
Contains filters to match music information (artist, title etc.) from a tagless music filename.  The first <filter> to match completely is used. Matched items include:
 
%A - Artist
%T - Title
%B - Album
%N - Track number
%S - Part of set (disk number)
%D - Duration
%G - Genre
%Y - Year
%R - Rating
 
<source lang="xml">
  <musicfilenamefilters>
    <filter>%A - %T</filter>
  </musicfilenamefilters>
</source>


====<dvdthumbs>====
====<dvdthumbs>====
A list of additional files to try when searching for dvdrom thumbnail images.  (The default is folder.jpg which can be removed.)
A list of additional files to try when searching for dvdrom thumbnail images.  (The default is folder.jpg which can be removed.)


<xml>
<source lang="xml">
<dvdthumbs>
<dvdthumbs>
   <remove>folder.jpg</remove>
   <remove>folder.jpg</remove>
   <add>thumb.jpg|cover.jpg</add>
   <add>thumb.jpg|cover.jpg</add>
</dvdthumbs>
</dvdthumbs>
</xml>
</source>
 
====<fanart>====
A list of additional files to try when searching for fanart images.  (The defaults are fanart.jpg and fanart.png which can be removed.)
 
<source lang="xml">
<fanart>
  <remove>fanart.jpg</remove>
  <add>backdrop.jpg</add>
</fanart>
</source>


====<masterlock>====
====<masterlock>====
If you enable any masterlock settings below, they will be removed from UI. Code needs to be MD5'd, and you can use [http://pajhome.org.uk/crypt/md5/ this site] to hash it.
If you enable any masterlock settings below, they will be removed from UI. Code needs to be MD5'd, and you can use [http://pajhome.org.uk/crypt/md5/ this site] to hash it.


<xml>
<source lang="xml">


<masterlock>       
<masterlock>       
   <startuplock>false</startuplock> # true prompts user for code upon startup
   <startuplock>false</startuplock> <!-- true prompts user for code upon startup -->
   <enableshutdown>false</enableshutdown> # true shuts down xbox after 3 failed attempts to enter  correct code
   <enableshutdown>false</enableshutdown> <!-- true shuts down xbox after 3 failed attempts to enter  correct code -->
   <automastermode>false</automastermode> # automatically enters master mode if the master code is given.
   <automastermode>false</automastermode> <!-- automatically enters master mode if the master code is given -->
   <loginlock>true</loginlock> # whether to use locks on login screen or not
   <loginlock>true</loginlock> <!-- whether to use locks on login screen or not -->
   AdvancedSettings.xml ONLY:  
   <!-- advancedsettings.xml ONLY: -->
   <maxretries>#<maxretries> enter the max number of retries to input code, 3 is default.
   <maxretries>3<maxretries> <!-- enter the max number of retries to input code, 3 is default. -->
</masterlock>
</masterlock>
</xml>
</source>


====<postprocessing>====
====<postprocessing>====
MPlayer postprocessing settings.  This is unreliable, and so they're in here only.
MPlayer postprocessing settings.  This is unreliable, and so they're in here only.


<xml>
<source lang="xml">
   <postprocessing>
   <postprocessing>
     <enable>false</enable>   # enable/disable postprocessing
     <enable>false</enable> <!-- enable/disable postprocessing -->
     <auto>true</auto>       # auto filter settings (overrides the below)
     <auto>true</auto> <!-- auto filter settings (overrides the below) -->
     <verticaldeblocking>false</verticaldeblocking>     # use vertical deblocking
     <verticaldeblocking>false</verticaldeblocking> <!-- use vertical deblocking -->
     <verticaldeblocklevel>0</verticaldeblocklevel>     # level of vertical deblocking (0-100)
     <verticaldeblocklevel>0</verticaldeblocklevel> <!-- level of vertical deblocking (0-100) -->
     <horizontaldeblocking>false</horizontaldeblocking> # use horizontal deblocking
     <horizontaldeblocking>false</horizontaldeblocking> <!-- use horizontal deblocking -->
     <horizontaldeblocklevel>0</horizontaldeblocklevel>  # level of horizontal deblocking (0-100)
     <horizontaldeblocklevel>0</horizontaldeblocklevel>  <!-- level of horizontal deblocking (0-100) -->
     <autobrightnesscontrastlevels>false</autobrightnesscontrastlevels> # whether to use mplayers colour balancing
     <autobrightnesscontrastlevels>false</autobrightnesscontrastlevels> <!-- whether to use mplayers colour balancing -->
     <dering>false</dering>   # whether to apply the dering filter
     <dering>false</dering> <!-- whether to apply the dering filter -->
   </postprocessing>
   </postprocessing>
</xml>
</source>


====<audio>====
====<audio>====
 
<source lang="xml">
<xml>
<audio>
<audio>
   <headroom>0</headroom> # Amount of headroom XBMC should use above the maximum volume level, in decibels.  Defaults to 0, valid values 0, 6, 12.
   <!-- Amount of headroom XBMC should use above the maximum volume level, in decibels.  Defaults to 0, valid values 0, 6, 12. -->
   <karaokesyncdelay>0</karaokesyncdelay> # Delay in sync to karaoke in seconds. Valid values are -3.0...3.0.
   <headroom>0</headroom>
  <!-- Default audio player: paplayer or dvdplayer (or mplayer on Xbox) -->
  <defaultplayer>paplayer</defaultplayer>
  <excludefromscan> <!-- Regular expressions that if evaluated to true won't be added to library. -->
    <regexp>[-\._ ](podcast)[-\._ ]</regexp>
  </excludefromscan>
  <excludefromlisting> <!-- Regular expressions that if evaluated to true won't be displayed in Files View -->
    <regexp>[-\._ ](podcast)[-\._ ]</regexp>
  </excludefromlisting>
  <!-- Amount of gain (dB) to be applied to AC3 streams that have been mixed-down to 2 channels. Default is 12.0. Valid values are: -96.0 to 96.0. -->
  <ac3downmixgain>12.0</ac3downmixgain>
  <playcountminimumpercent>99</playcountminimumpercent> <!-- Minimum percentage that has to be played before it is considered for incrementing in the Top 100 database view, or for last.fm submittal -->
  <resample>48000</resample> <!-- Force a specific samplerate to be produced by paplayer to send to the audio hardware, i.e HDMI Audio is usually only capable of 48000. This doesn't work on XBox-->
  <applydrc>true</applyac3drc> <!-- Whether to use DRC on AC3 and DTS streams -->
</audio>
</audio>
</xml>
</source>
 
====<karaoke>====
<source lang="xml">
<karaoke>
  <!-- Music-lyrics delay for CDG format lyrics in 1/10 seconds. Floating number, may be negative. -->
  <syncdelaycdg>0.0</syncdelaycdg>
  <!-- Music-lyrics delay for LRC format lyrics in 1/10 seconds. Floating number, may be negative. -->
  <syncdelaylrc>0.0</syncdelaylrc>
  <!-- If set to 1, when the songs are added to the library, XBMC will automatically replace the song genre by "Karaoke"
if the song has associated lyrics -->
  <alwaysreplacegenre>0</alwaysreplacegenre>
  <!-- If set to 1, when the music-lyrics delay was modified while playing using subtitle delay buttons, the delay value
for this song will be stored, and restored when the song is played next time -->
  <storedelay>1</storedelay>
  <!-- When karaoke songs are added to the library during scans, an autoincrement number is automatically assigned
to each song, starting from the value specified below -->
  <autoassignstartfrom>1</autoassignstartfrom>
  <!-- If set to 1, all background drawing is disabled for CDG songs -->
  <nocdgbackground>1</nocdgbackground>
  <!-- Sets default background mode. Type could be "none", "vis" for visualisation, "image" or "video".
For image/video types the "path" parameter should specify the image or video file to play. -->
  <defaultbackground type="video" path="special://masterprofile/karaokevideobg.avi"/>
</karaoke>
</source>


====<video>====
====<video>====
 
<source lang="xml">
<xml>
<video> <!-- "VideoSettings" instead of "video" for builds prior to May 22, 2006 -->
<video> # use "VideoSettings" instead of "video" for builds prior to May 22, 2006
   <subsdelayrange>10</subsdelayrange>  <!-- Delay range for subtitles, in seconds. -->
   <subsdelayrange>10</subsdelayrange>  # Delay range for subtitles, in seconds.
   <audiodelayrange>10</audiodelayrange>  <!-- Delay range for audio/video sync, in seconds. -->
   <audiodelayrange>10</audiodelayrange>  # Delay range for audio/video sync, in seconds.
   <smallstepbackseconds>7</smallstepbackseconds>  <!-- Length of the small skip back (normally the BACK button) when playing a video -->
   <smallstepbackseconds>7</smallstepbackseconds>  # Length of the small skip back (normally the BACK button) when playing a video
   <smallstepbacktries>3</smallstepbacktries>
   <smallstepbacktries>3</smallstepbacktries>
   <smallstepbackdelay>300</smallstepbackdelay>
   <smallstepbackdelay>300</smallstepbackdelay>
   <usetimeseeking>true</usetimeseeking>  # Whether to use time based or percentage based seeking.
   <usetimeseeking>true</usetimeseeking>  <!-- Whether to use time based or percentage based seeking. -->
   <timeseekforward>30</timeseekforward>  # Time to seek forward in seconds when doing a short seek.  Defaults to 30.
   <timeseekforward>30</timeseekforward>  <!-- Time to seek forward in seconds when doing a short seek.  Defaults to 30. -->
   <timeseekbackward>-30</timeseekbackward>  # Time to seek backward in seconds when doing a short seek.  Defaults to -30.
   <timeseekbackward>-30</timeseekbackward>  <!-- Time to seek backward in seconds when doing a short seek.  Defaults to -30. -->
   <timeseekforwardbig>600</timeseekforwardbig>  # Time to seek forward in seconds when doing a long seek.  Defaults to 600 (10 minutes).
   <timeseekforwardbig>600</timeseekforwardbig>  <!-- Time to seek forward in seconds when doing a long seek.  Defaults to 600 (10 minutes). -->
   <timeseekbackwardbig>-600</timeseekbackwardbig>  # Time to seek forward in seconds when doing a long seek.  Defaults to -600 (10 minutes).
   <timeseekbackwardbig>-600</timeseekbackwardbig>  <!-- Time to seek forward in seconds when doing a long seek.  Defaults to -600 (10 minutes). -->
   <percentseekforward>2</percentseekforward>  # Amount to seek forward as a percentage, when doing a short seek.  Defaults to 2.
   <percentseekforward>2</percentseekforward>  <!-- Amount to seek forward as a percentage, when doing a short seek.  Defaults to 2. -->
   <percentseekbackward>-2</percentseekbackward>  # Amount to seek backward as a percentage, when doing a short seek.  Defaults to -2.
   <percentseekbackward>-2</percentseekbackward>  <!-- Amount to seek backward as a percentage, when doing a short seek.  Defaults to -2. -->
   <percentseekforwardbig>10</percentseekforwardbig>  # Amount to seek forward as a percentage, when doing a long seek.  Defaults to 10.
   <percentseekforwardbig>10</percentseekforwardbig>  <!-- Amount to seek forward as a percentage, when doing a long seek.  Defaults to 10. -->
   <percentseekbackwardbig>-10</percentseekbackwardbig>  # Amount to seek forward as a percentage, when doing a long seek.  Defaults to -10.
   <percentseekbackwardbig>-10</percentseekbackwardbig>  <!-- Amount to seek forward as a percentage, when doing a long seek.  Defaults to -10. -->
   <blackbarcolour>1</blackbarcolour>  # colour of the black bars (0->255), (black->white) on videos.
   <blackbarcolour>1</blackbarcolour>  <!-- colour of the black bars (0->255), (black->white) on videos. -->
</video> # use "VideoSettings" instead of "video" for builds prior to May 22, 2006
  <fullscreenonmoviestart>true</fullscreenonmoviestart> <!-- Whether to go to fullscreen or not when starting a movie. Defaults to true. -->
</xml>
  <defaultplayer>mplayer</defaultplayer> <!-- Set the default video player: mplayer or dvdplayer (xbox only) / dvdplayer or extplayer (others). -->
  <excludefromscan> <!-- Regular expressions that if evaluated to true won't be added to library. -->
    <regexp>[-\._ ](sample|trailer)[-\._ ]</regexp>
  </excludefromscan>
  <excludefromlisting> <!-- Regular expressions that if evaluated to true won't be displayed in Files View -->
    <regexp>[-\._ ](sample|trailer)[-\._ ]</regexp>
  </excludefromlisting>
  <playcountminimumpercent>90</playcountminimumpercent> <!--Minimum percentage that has to be played before it is marked as watched -->
  <ignoreatstart>15</ignoreatstart> <!-- Number of seconds to ignore at video start after which a resume point is created -->
</video> <!-- use "VideoSettings" instead of "video" for builds prior to May 22, 2006 -->
</source>
 
===<MyVideos>===
 
<source lang="xml">
<MyVideos>
  <extractthumb>true</extractthumb>  <!-- Stop XBMC from auto extracting thumbnails when the "Extract thumbnails and video information" button is set . -->
  <treatstackasfile>true</treatstackasfile>  <!-- Makes stacked files play back seemless instead of asking you which part to start . -->
</MyVideos>
</source>


====<musiclibrary>====
====<musiclibrary>====
Options specific to the Music Library
Options specific to the Music Library


<xml>
<source lang="xml">
   <musiclibrary>
   <musiclibrary>
     <hideallitems>true</hideallitems> # removes the "*All" items from the music library
     <hideallitems>true</hideallitems> <!-- removes the "*All" items from the music library -->
     <allitemsonbottom>true</allitemsonbottom> # sorts the "*All" items at the bottom of the list when in Ascending order
     <allitemsonbottom>true</allitemsonbottom> <!-- sorts the "*All" items at the bottom of the list when in Ascending order -->
     <hidecompilationartists>true</hidecompilationartists> # only shows primary album artists when at the unfiltered artist listing
    <backgroundupdate>true</backgroundupdate> <!-- set to hide the music scanner dialog from the gui -->
     <albumssortbyartistthenyear>true</albumssortbyartistthenyear> # at an albums listing, when you sort by artist, secondary sort will be year.
    <recentlyaddeditems>35</recentlyaddeditems> <!-- number of recently added items. Defaults to 25 -->
     <albumformat>%B - %Y</albumformat> # album label template, default is "%B"
     <hidecompilationartists>true</hidecompilationartists>   <!-- only shows primary album artists when at the unfiltered artist listing -->
     <albumformatright>%A</albumformatright> # album label template for right column, default is "%A"
     <albumssortbyartistthenyear>true</albumssortbyartistthenyear>   <!-- at an albums listing, when you sort by artist, secondary sort will be year. -->
     <albumformat>%B - %Y</albumformat> <!-- album label template, default is "%B" -->
     <albumformatright>%A</albumformatright> <!-- album label template for right column, default is "%A" -->
    <prioritiseapetags>true</prioritiseapetags>  <!-- prioritise APEv2 tags over ID3v1/2 tags, default is false. -->
    <itemseparator> / </itemseparator>    <!-- separator used for multiple artists/genres in tags. Note, this is *space* *slash* *space* -->
   </musiclibrary>
   </musiclibrary>
</xml>
</source>


====<videolibrary>====
====<videolibrary>====
Options specific to the Video Library
Options specific to the Video Library


<xml>
<source lang="xml">
   <videolibrary>
   <videolibrary>
     <hideallitems>true</hideallitems> # removes the "*All" items from the video library
    <allitemsonbottom>true</allitemsonbottom>  <!-- sorts the "*All" items at the bottom of the list when in Ascending order -->
     <allitemsonbottom>true</allitemsonbottom> # sorts the "*All" items at the bottom of the list when in Ascending order
    <backgroundupdate>true</backgroundupdate> <!-- set to hide the video scanner dialog from the gui -->
    <cleanonupdate>true</cleanonupdate>  <!-- set to false to prevent xbmc from removing items from the database while updating -->
     <hideallitems>true</hideallitems> <!-- removes the "*All" items from the video library -->
     <hideemptyseries>true</hideemptyseries>  <!-- hide empty series in the video library -->
    <hiderecentlyaddeditems>true</hiderecentlyaddeditems> <!-- removes the "Recently added ..." items from the video library. -->
    <recentlyaddeditems>35</recentlyaddeditems> <!-- number of recently added items. Defaults to 25 -->
    <itemseparator> / </itemseparator> <!-- separator used for multiple artists/genres in tags. Note, this is *space* *slash* *space* -->
    <exportautothumbs>true</exportautothumbs>  <!-- export auto-generated thumbs. Defaults to false -->
    <mymovies>  <!-- Options specific to MyMovies XML file parsing -->
      <categoriestogenres>false</categoriestogenres>  <!-- Add MyMovies Custom Categories to XBMC Genres (boolean, default is false) -->
    </mymovies>
   </videolibrary>
   </videolibrary>
</xml>
</source>
 
====<slideshow>====
====<slideshow>====
 
<source lang="xml">
<xml>
<slideshow>
<slideshow>
   <panamount>2.5</panamount>  # Amount to pan images as a percentage of the screen
   <!-- Amount to pan images as a percentage of the screen -->
   <zoomamount>5.0</zoomamount> # Amount to zoom images as a percentage of the screen
   <panamount>2.5</panamount>
   <blackbarcompensation>20</blackbarcompensation> # Amount to compensate (zoom) images to attempt to reduce black bars. Results in cropping of the longer length of the image in order to reduce the black bars on the shorter length of the image.  Defaults to 20.
  <!-- Amount to zoom images as a percentage of the screen -->
   <zoomamount>5.0</zoomamount>
  <!-- Amount to compensate (zoom) images to attempt to reduce black bars. -->
  <!-- Results in cropping of the longer length of the image in order to reduce the black bars on the shorter length of the image.  -->
  <!-- Defaults to 20. -->
  <blackbarcompensation>20</blackbarcompensation> 
</slideshow>
</slideshow>
</xml>
</source>


====<lcd>====
====<lcd>====
 
<source lang="xml">
<xml>
<lcd>
<lcd>
   <rows>4</rows> # Number of rows to use for the LCD.
   <rows>4</rows>               <!-- Number of rows to use for the LCD. -->
   <columns>20</columns> # Number of columns to use for the LCD.
   <columns>20</columns>       <!-- Number of columns to use for the LCD. -->
   <address1>0</address1> # Memory address for row 1.
   <address1>0</address1>       <!-- Memory address for row 1. -->
   <address2>20</address2> # Memory address for row 2.
   <address2>20</address2>     <!-- Memory address for row 2. -->
   <address3>64</address3> # Memory address for row 3.
   <address3>64</address3>     <!-- Memory address for row 3. -->
   <address4>84</address4> # Memory address for row 4.
   <address4>84</address4>     <!-- Memory address for row 4. -->
  <heartbeat>true</heartbeat>  <!-- Enables LCDprocs heartbeat symbol. Defaults to false. -->
  <scrolldelay>2</scrolldelay> <!-- Delay of the scroller widget. Defaults to 1. -->
</lcd>
</lcd>
</xml>
</source>


====<network>====
====<network>====
 
<source lang="xml">
<xml>
<network>
<network>
   <autodetectpingtime>30</autodetectpingtime>  #Length in seconds between pinging the network to detect new xbox's.
   <autodetectpingtime>30</autodetectpingtime>  <!-- Length in seconds between pinging the network to detect new xbox's -->
  <curlclienttimeout>10</curlclienttimeout>  <!-- Timeout in seconds for libcurl (http/ftp) connections -->
  <curllowspeedtime>5</curllowspeedtime>  <!-- Time in seconds for libcurl to consider a connection lowspeed -->
  <httpproxyusername></httpproxyusername>  <!-- username for Basic Proxy Authentication -->
  <httpproxypassword></httpproxypassword>  <!-- password for Basic Proxy Authentication -->
</network>
</network>
</xml>
</source>


====<tuxbox>====
====<tuxbox>====
<xml>
<source lang="xml">
  <tuxbox>
  <tuxbox>
     <!-- "audiochannelselection"; default is 'false', 'true' will popup the audio channel selection if there is more then one audio stream !-->
     <!-- "audiochannelselection"; default is 'false', 'true' will popup the audio channel selection if
          there is more then one audio stream !-->
     <audiochannelselection>false</audiochannelselection>
     <audiochannelselection>false</audiochannelselection>
     <!-- "submenuselection"; default is 'false', 'true' will popup the Submenu selection !-->
     <!-- "submenuselection"; default is 'false', 'true' will popup the Submenu selection !-->
Line 357: Line 571:
     <!-- "pictureicon"; default is 'true', will use the Picture Icons from folder /UserData/PictureIcon/ !-->
     <!-- "pictureicon"; default is 'true', will use the Picture Icons from folder /UserData/PictureIcon/ !-->
     <pictureicon>true</pictureicon>
     <pictureicon>true</pictureicon>
     <!-- "epgrequesttime"; default is '10', 0-3600, defines the time in seconds between epg queries, some tuxbox devices need longer to response (Minimum: 1, Maximum: 3600) !-->
     <!-- "epgrequesttime"; default is '10', 0-3600, defines the time in seconds between epg queries, some tuxbox
          devices need longer to response (Minimum: 1, Maximum: 3600) !-->
     <epgrequesttime>10</epgrequesttime>
     <epgrequesttime>10</epgrequesttime>
     <!-- "zapwaittime"; default is '0' (0 = OFF), defines the time in seconds to wait for a valid PMT after the zaping was send (Minimum: 0, Maximum: 120) !-->
     <!-- "zapwaittime"; default is '0' (0 = OFF), defines the time in seconds to wait for a valid PMT after the
          zaping was send (Minimum: 0, Maximum: 120) !-->
     <zapwaittime>0</zapwaittime>   
     <zapwaittime>0</zapwaittime>   
   </tuxbox>
   </tuxbox>
</xml>
</source>
 
====<ftpshowcache>====
default is false, if set to true, shows cache (X Y Z) partitions in the root directory listing
 
====<screensaver>====
To avoid potential worries of plasma screen burn-in, you can set the Dim screensaver fade level to 0% here or in the Settings.
<source lang="xml">
<screensaver>
  <dimlevel>0</dimlevel>  <!-- This will remove the Fade Level control from the settings screen altogether -->
</screensaver>
</source>
 
====<busydialogdelay>====
Set the delay in milliseconds before the busydialog pops up (default 2000).
<source lang="xml">
<busydialogdelay>2000</busydialogdelay>
</source>
 
====<rootovershoot>====
Disable root overshooting aka evil B(tm) navigation. 'Evil B' navigation refers to the 'previous folder' action returning to the parent window from the root location of a media window.  Sometimes a user would just want to repeatedly hit the B button to reach the root location without worrying of overshooting to the previous window.  For this you should disable evil b by setting this value to false.
<source lang="xml">
<rootovershoot>false</rootovershoot>
</source>
 
====<hosts>====
Static dns entries which take precedence over your dns server.
<source lang="xml">
<hosts>
  <entry name="HOSTNAME">IPADDRESS</entry>
</hosts>
</source>
 
====<fullscreen>====
Starts XBMC in full screen (check resolutions!). The same as starting XBMC with -fs.
 
<source lang="xml">
<fullscreen>false</fullscreen>
</source>
 
====<cputempcommand>====
Provide a shell command XBMC will use to get CPU temperature. It should print out only "[temp as integer] [scale as one of "CcFf"]".
<source lang="xml">
  <cputempcommand>sed -e 's/\([0-9]*\)[0-9]\{3\}.*/\1 C/' /sys/class/thermal/thermal_zone0/temp</cputempcommand>
</source>
 
====<gputempcommand>====
Provide a shell command XBMC will use to get GPU temperature. It should print out only "[temp as integer] [scale as one of "CcFf"]".
<source lang="xml">
  <gputempcommand>echo "$(nvidia-settings -tq gpuCoreTemp) C"</gputempcommand>
</source>
 
====<glrectanglehack>====
Problems with ghosting or videos which are only played back in the left upper quarter? The following ATI hack may solve it.
<source lang="xml">
  <glrectanglehack>yes</glrectanglehack>
</source>
 
====<alwaysontop>====
Added in r20809 (win32 only). Keeps XBMC always on top when windowed.
<source lang="xml">
  <alwaysontop>yes</alwaysontop>
</source>
 
====<externalplayer>====
See the relevant [[HOW-TO_use_an_External_Player_for_media_playback|How To]].
 
====<bginfoloadermaxthreads>====
Control the number of threads in the background info loader thread pool (thumb generagor, flagging, etc).  Useful for tuning platforms that are low on CPU, like Xbox and Intel Atom based systems.
<source lang="xml">
  <bginfoloadermaxthreads>5</bginfoloadermaxthreads>
</source>


====<playcountminimumpercent>====
===<edl>===
Video: Minimum percentage that has to be played before it is marked as watched.
Commercial break detection not as good you think it could be? Are some commercial breaks in a series of adverts not being skipped? Are some parts being skipped that are clearly not commercials? Does the end of the previous recording still show? The following advanced settings can be used to better identify full commercial break sequences, remove incorrectly flagged commercial breaks, and have playback start at the actual beginning of the recording.


Music: Minimum percentage that has to be played before it is considered for incrementing in the Top 100 database view, or for last.fm submittal.
<source lang="xml">
<edl>
  <!-- if true, commercial breaks will be merged according to the remaining options. -->
  <mergeshortcommbreaks>false</mergeshortcommbreaks>
  <!-- Commercial breaks won't be merged if the total length of the commercial break would be greater than this (seconds) -->
  <maxcommbreaklength>250</maxcommbreaklength>
  <!-- After merging, commercial breaks shorter than this will be removed (seconds) -->
  <mincommbreaklength>90</mincommbreaklength>
  <!-- Commercial breaks that are further apart than this won't be merged (seconds) -->
  <maxcommbreakgap>120</maxcommbreakgap>
  <!-- If the first commercial break is within this gap from the start it will be extended to the start (seconds) -->
  <maxstartgap>300</maxstartgap>
</edl>
</source>
 
===<myth>===
Not seeing all the recordings you expected in the Movies folder? If so, it's very likely that the electronic program guide (EPG) used by MythTV doesn't accurately distinguish between TV Shows and Movies all the time. The following setting allows the length of the recording to also be used to determine if a recording is a Movie.
 
<source lang="xml">
<myth>
  <!-- Recordings longer than this will be added to the Movies folder (minutes). 0 = off -->
  <movielength>0</movielength>
</myth>
</source>


==How to include GUI settings==
==How to include GUI settings==


You can also define the settings normally defined in the GUI in AdvancedSettings.xml.  Any GUI based settings defined in AdvancedSettings.xml will override the GUI values, and the settings will be removed completely from the GUI (ie only alterable by editting AdvancedSettings.xml).
You can also define the settings normally defined in the GUI in advancedsettings.xml.  Any GUI based settings defined in advancedsettings.xml will override the GUI values, and the settings will be removed completely from the GUI (ie only alterable by editting advancedsettings.xml).


The easiest way to include a GUI setting is to first make sure it is set in the GUI to the value that you want, and then to open the '''UserData\guisettings.xml''' file and find the XML entry that corresponds to that setting.
The easiest way to include a GUI setting is to first make sure it is set in the GUI to the value that you want, and then to open the '''UserData\guisettings.xml''' file and find the XML entry that corresponds to that setting.


Then just add that entry to the AdvancedSettings.xml file.
Then just add that entry to the advancedsettings.xml file.


For instance, to set the Font Character Set for the GUI (found in the appearance setting, in the Look and Feel section), you'd open up guisettings.xml and find:
For instance, to set the Font Character Set for the GUI (found in the appearance setting, in the Look and Feel section), you'd open up guisettings.xml and find:


<xml>
<source lang="xml">
   <lookandfeel>
   <lookandfeel>
     <charset>Hebrew (Windows)</charset>
     <charset>Hebrew (Windows)</charset>
   </lookandfeel>
   </lookandfeel>
</xml>
</source>


Simply take that entry and place it in AdvancedSettings.xml.  The GUI entry for the character set will then no longer appear, and XBMC will always use the Hebrew (Windows) character set.
Simply take that entry and place it in advancedsettings.xml.  The GUI entry for the character set will then no longer appear, and XBMC will always use the Hebrew (Windows) character set.




Line 392: Line 702:


====<trainerpath>====
====<trainerpath>====
 
<source lang="xml">
<xml>
<myprograms>
<myprograms>
     <trainerpath>Q:\system\trainers</trainerpath>  
     <trainerpath>Q:\system\trainers</trainerpath>  
</myprograms>
</myprograms>
</xml>
</source>


====<recordingpath>====
====<recordingpath>====
 
<source lang="xml">
<xml>
<mymusic>
<mymusic>
     <recordingpath>E:\Recordings</recordingpath>
     <recordingpath>E:\Recordings</recordingpath>
</mymusic>
</mymusic>
</xml>
</source>


====<cddaripperpath>====
====<cddaripperpath>====
 
<source lang="xml">
<xml>
<cddaripper>
<cddaripper>
     <path>E:\Recordings</path>
     <path>E:\Recordings</path>
</cddaripper>
</cddaripper>
</xml>
</source>


====<playlistspath>====
====<playlistspath>====
 
<source lang="xml">
<xml>
<system>
<system>
     <playlistspath>E:\Playlists</playlistspath>
     <playlistspath>E:\Playlists</playlistspath>
</system>
</system>
</xml>
</source>


====<screenshotpath>====
====<screenshotpath>====
<xml>
<source lang="xml">
<pictures>
<pictures>
   <screenshotpath>E:\Screenshots</screenshotpath>
   <screenshotpath>E:\Screenshots</screenshotpath>
</pictures>
</pictures>
</xml>
</source>


====<audio>====
====<hq software upscaling>====
<xml>
Here you can define if you want to have the hq software upscaling instead of hw upscaling for SD video material.Type 8 for LANZOS or 7 for SINC algorythm.
<audio>
<source lang="xml">
   <headroom>0</headroom>                 # Headroom in dB to use on the master volume.  0, 6, or 12.
<videoplayer>
   <karaokesyncdelay>0</karaokesyncdelay> # Delay in ms of displaying karoke.
   <highqualityupscaling>1</highqualityupscaling>
</audio>
  <upscalingalgorithm>8</upscalingalgorithm>
</xml>
</videoplayer>
</source>
 
====<flatten TV shows>====
0=never 1=if one season (default) 2=all
<source lang="xml">
<videolibrary>
   <flattentvshows>2</flattentvshows>
</videolibrary>
</source>


====<slideshow>====
[[category:Customization]]
<xml>
[[category:Thumbnails]]
<slideshow>
  <panamount>2.5</panamount>            # percentage to pan images during slideshow
  <zoomamount>5</zoomamount>            # percentage to zoom images during slideshow
  <blackbarcompensation>20</blackbarcompensation> # percentage difference from the screen aspect ratio that will cause images to zoom to eliminate black bars.
</slideshow>
</xml>
[[category:Settings]]

Revision as of 02:42, 21 November 2009

Template:GoToParent

The "advancedsettings.xml" file, which does not exist by default, may be created by a user in their "\UserData\" folder.
Please consult your plaform specific FAQ for the appropriate location.
This file can contain additional settings and pre-defined values for the settings available in the GUI (thus removing them from the GUI settings screens).
"advancedsettings.xml" is useful for advanced/expert users and for installers.

NOTE! This file will not exist unless created by the end-user, meaning YOU!

The XBMC software will never write to this file, so any settings you define will not be overwritten by any XBMC GUI settings.
So you can only edit this file manually on your computer, via a text-editor (like Notepad in Windows or a XML-editor).
All the settings available outside of the GUI are documented on this page.

NOTE: This file is CaSe SeNsItIvE and must contain the <advancedsettings> tag (see the layout section below), so make sure you use all lower-case tags or they will not be read properly by XBMC.

Layout

The layout of advancedsettings.xml is as follows:

<advancedsettings>
    <setting>value</setting>
    ...
    <setting>value</setting>
</advancedsettings>

where "setting" gives the name of the setting, and "value" gives it's value.

A list of the available "setting" strings and their values is given below.

List of available settings

<loglevel>

The logging level that XBMC will use to log errors and information. Available values are:

  • -1 No logging, suppresses all log output.
  • 0 Normal logging, only logging errors (Default)
  • 1 Debug logging.
  • 2 Debug logging with freemem, fps and cpu usage shown on screen.
  • 3 Debug logging with freemem, fps and cpu usage and full smb logging.

NOTE: As of r22142, loglevel also accepts a "hide" boolean attribute. Default value is true (old behavior), which hides the "enable debugging" guisetting. When false, the "enable debugging" guisetting will switch between min(loglevel, 0) and max(loglevel, 2) for off and on respectively. This is useful for chasing infrequent bugs where you may always want a debug text log, yet still be able to get at the on screen debug info without restarting the app. Example:

    <loglevel hide="false">2</loglevel>

<skiploopfilter>

This amount of the loop filter to skip on h264 decoding. This can help the performance of slower machines when decoding h264 content. Values, in decreasing CPU usage (and decreasing quality)

  • -16 None.
  • 0 Skip only empty frames (default)
  • 8 Skip non-reference frames (default on ATV)
  • 16 Skip bi-dir frames
  • 32 Skip all non-key frames
  • 48 Skip all frames.

Example:

  <skiploopfilter>8</skiploopfilter>

<cddbaddress>

The address of the online CDDb database. You may set this to another freedb mirror if there is a more suitable one. Defaults to freedb.freedb.org

<nodvdrom>

Set to true if you have no DVD-ROM drive in your XBox, or if it's broken. Defaults to false.

<usepcdvdrom>

Set to true if you have replaced the XBox DVD-ROM drive with a standard PC DVD-ROM. Expect performance to be somewhat variable. Defaults to false.
removed for non XBox builds with r14123.

<detectasudf>

Set to true if you wish to detect joint ISO9660/UDF disks as UDF. Defaults to false.

<disablemodchipdetection>

Set to true to disable modchip detection. This is required for X2 chips to launch XBEs.

<cachepath>

Set to the path on the XBox Harddisk that XBMC should use for when it caches files (such as when caching subtitles or for unzipping or unrarring). Defaults to Z:\

<virtualshares>

Set to false to disable virtual shares like plugin, last.fm or shoutcast sources. Defaults to true.

<pictureextensions>

A list of additional file-extensions to allow (add) or exclude (remove) in the My Pictures window.

These are the current default extensions for PICTURES:

.png .jpg .jpeg .bmp .gif .ico .tif .tiff .tga .pcx .cbz .zip .cbr .rar .m3u

<pictureextensions>
  <add>.ex1|.ex2</add>
  <remove>.ex3|.ex4</remove>
</pictureextensions>

<musicextensions>

A list of additional file-extensions to allow (add) or exclude (remove) in the My Music windows.

These are the current default extensions for MUSIC:

.nsv .m4a .flac .aac .strm .pls .rm .mpa .wav .wma .ogg .mp3 .mp2 .m3u .mod .amf .669 .dmf .dsm .far .gdm 
.imf .it .m15 .med .okt .s3m .stm .sfx .ult .uni .xm .sid .ac3 .dts .cue .aif .aiff .wpl .ape .mac .mpc 
.mp+ .mpp .shn .zip .rar .wv .nsf .spc .gym .adplug .adx .dsp .adp .ymf .ast .afc .hps .xsp
<musicextensions>
  <add>.ex1|.ex2</add>
  <remove>.ex3|.ex4</remove>
</musicextensions>

<videoextensions>

A list of additional file-extensions to allow (add) or exclude (remove) in the My Video windows.

These are the current default extensions for VIDEOS:

.m4v .3gp .nsv .ts .ty .strm .rm .rmvb .m3u .ifo .mov .qt .divx .xvid .bivx .vob .nrg .img
.iso .pva .wmv .asf .asx .ogm .m2v .avi .bin .dat .dvr-ms .mpg .mpeg .mp4 .mkv .avc .vp3 
.svq3 .nuv .viv .dv .fli .flv .rar .001 .wpl .zip
<videoextensions>
  <add>.ex1|.ex2</add>
  <remove>.ex3|.ex4</remove>
</videoextensions>

<languagecodes>

Translation table for subtitle and audio names. Contains entries of the form

    <code><short>alt</short><long>Alternate</long></code>

<sorttokens>

Allows you to specify additional tokens that will be ignored at the start of lines during sorting.

  <sorttokens>
    <token>the</token>
  </sorttokens>

<samba>

<samba>
   <doscodepage></doscodepage>  <!-- code page to use for filenames -->
   <clienttimeout>10</clienttimeout>  <!-- timeout (in seconds) -->
   <statfiles>true</statfiles>  <!-- Set to false to disable smb stat() on files to speed up listings of large directories (over slow links) -->
</samba>

<moviestacking>

This tag used to be called <videostacking>.
Contains "Regular Expression" syntax (commonly refered to as "RegEx" or "RegExp") for use in matching filenames in a "stack" of video files.

As of r24405 video stacking regular expressions must contain exactly four (4) capture expressions. Old one and three capture expressions are dropped (see log). Adapt them if you still need them. They are (Title)(Volume)(Ignore)(Extension). Files are considered stackable if all fields match except Volume. The stack name is then created by concatenating the Title, Ignore and Extension fields. Comparisons are still performed case-insensitive.

Default stacking:

  <moviestacking>
    <!-- cd/dvd/part/pt/disk/disc [0] <1-4|a-d> -->
    <regexp>(.*?)([ _.-]?(?:cd|dvd|p(?:ar)t|dis[ck])[ _.-]*0?[1-4a-d])(.*?)(\.[^.]+)$</regexp>
    <!-- movienamea-xvid.avi, movienameb-xvid.avi -->
    <regexp>(.*?)([ ._-]?[a-d])([ ._-]?.*?)(\.[^.]+)$</regexp>
  </moviestacking>

If the argument action="append" or append="yes" is supplied, the default videostacking regular expressions will remain intact and the user specified ones will be added to the end. Example:

  <moviestacking action="append">
    <!-- This expression will match movename1-xvid.avi, moviename2-xvid.avi.
         Be warned that it will likely stack sequels in a flat directory layout,
         so it is only recommend in a dir-per-video layout. -->
    <regexp>(.*?)([ ._-]?[0-9])([ ._-]?.*?)(\.[^.]+)$</regexp>
  </moviestacking>


If the argument action="prepend" is supplied, the default videostacking regular expressions will remain intact and the user specified ones will be added to the beginning. Example:

  <moviestacking action="prepend">
    <regexp>(Title)(Volume)(Ignore)(Extension)</regexp>
  </moviestacking>

If no argument is supplied, or the argument append="no" is supplied, the default videostacking regular expressions are overwritten by the user specified ones.

<cleandatetime>

Contains a regular expression to match a year number in a string. The string found before will be used as basis string getting cleaned by the cleanstrings expressions. By default date formats like MM:YY are ignored.

Default expression:

 <video>
  <cleandatetime>(.+[^ _\,\.\(\)\[\]\-])[ _\.\(\)\[\]\-]+(19[0-9][0-9]|20[0-1][0-9])([ _\,\.\(\)\[\]\-][^0-9]|$)</cleandatetime>
 </video>

<cleanstrings>

Contains regular expressions to clean unwanted chars from filenames or folders.

Default expressions:

 <video>
  <cleanstrings>
   <regexp>[ _\,\.\(\)\[\]\-](ac3|dts|custom|dc|divx|divx5|dsr|dsrip|dutch|dvd|dvdrip|dvdscr|dvdscreener|screener|dvdivx|cam|fragment|fs|hdtv|hdrip|hdtvrip|internal|limited|multisubs|ntsc|ogg|ogm|pal|pdtv|proper|repack|rerip|retail|r3|r5|bd5|se|svcd|swedish|german|read.nfo|nfofix|unrated|ws|telesync|ts|telecine|tc|brrip|bdrip|480p|480i|576p|576i|720p|720i|1080p|1080i|hrhd|hrhdtv|hddvd|bluray|x264|h264|xvid|xvidvd|xxx|www.www|cd[1-9]|\[.*\])([ _\,\.\(\)\[\]\-]|$)</regexp>
   <regexp>(\[.*\])</regexp>
  </cleanstrings>
 </video>

The "append" and "action" arguments described in the moviestacking section work the same for cleanstrings tags.

<tvshowmatching>

Contains "Regular Expression" syntax (commonly refered to as "RegEx" or "RegExp") to match the season and episode numbers in filenames. Text matching is compared case-insensitive.

Default stacking:

  <tvshowmatching>
    <regexp>\[[Ss]([0-9]+)\]_\[[Ee]([0-9]+)([^\\/]*)</regexp>  <!-- foo_[s01]_[e01] -->
    <regexp>[\._ \-]([0-9]+)x([0-9]+)([^\\/]*)</regexp>  <!-- foo.1x09 -->
    <regexp>[\._ \-][Ss]([0-9]+)[\.\-]?[Ee]([0-9]+)([^\\/]*)</regexp>  <!-- foo, s01e01, foo.s01.e01, foo.s01-e01 -->
    <regexp>[\._ \-]([0-9]+)([0-9][0-9])([\._ \-][^\\/]*)</regexp>  <!-- foo.103 -->
  </tvshowmatching>

The "append" and "action" arguments described in the videostacking section work the same for tvshowmatching tags. Examples of matching regexps for certain filenames can be found on the TV_Shows page.

NOTE: for multi-episode matching to work, there needs to be a third set of parentheses on the end. This part is fed back into the regexp engine.

A discussion of pre-made regex lists to match common names can be found at http://forum.xbmc.org/showthread.php?t=51614. These drastically improve XMBC's ability to match TV show names, at the risk of some additional false positives.

<excludefromscan/excludefromlisting>

Contains regular expressions to match filenames or folders which should be excluded from a library scan (except tvshows). This can be for both Video or Audio sections of advancedsettings.xml.

Default excludes:

 <video>
  <excludefromscan>
    <regexp>-trailer</regexp>
    <regexp>[._- ]sample<regexp>
  </excludefromscan>
 </video>

The "append" and "action" arguments described in the moviestacking section work the same for excludefromscan tags.

<excludetvshowsfromscan>

Contains regular expressions to match filenames or folders which should be excluded from a tvshow library scan.

Default excludes:

 <video>
  <excludetvshowsfromscan>
    <regexp>[-._ ]sample[-._ ]</regexp>
  </excludetvshowsfromscan>
 </video>

The "append" and "action" arguments described in the moviestacking section work the same for excludetvshowsfromscan tags.

<pathsubstitution>

Path substitutions for use with playlist loading. These are processed in order, and are useful for substituting an absolute path on a PC with a path suitable for XBMC to handle. Default is no path substitutions defined. An example is:

  <pathsubstitution>
    <substitute>
      <from>G:\dvds\</from>
      <to>smb://somecomputer/g-share/dvds/</to>
    </substitute>
  </pathsubstitution>

<forcedswaptime>

Use to force a backbuffer->frontbuffer swap while vsync is enabled. Set to the time (in ms) to allow for the swap (eg <forcedswaptime>1</forcedswaptime> is typical). It defaults off.

<playlistasfolders>

In the recent releases, playlists are treated as folders. Selecting a playlist no longer plays it, but opens it, as if it were a folder.
Set to false to revert to the previous behavior. When you select a playlist, its content is added to the list of elements to be played.
NOTE! This setting will not affect smart playlists, they will always show as folders.

<playlistretries>

The default number of retries if for example a source is offline is 100. With this control you can alter the number of consecutive failed items before a playlist fails.

  <playlistretries>100</playlistretries>

<playlisttimeout>

The default timeout before item failure is 20 sec. It can be changed with this control

  <playlisttimeout>20</playlisttimeout>

<songinfoduration>

This controls how long the song information will remain onscreen when the song changes during visualisations. The valid range is "1" to "Indefinite (0)", in seconds. This does not include the duration of any transition effects. (The default is 10 seconds.)

  <songinfoduration>10</songinfoduration>

<remoterepeat>

The repeat delay for the Infrared remote control, in milliseconds. Length of time a remote button needs to be held before it will start repeating (ie continuously sending button pushes while it's held down). Defaults to 480.

<controllerdeadzone>

Deadzone for controller thumb sticks. 0 indicates no deadzone at all. 1 indicates all deadzone (ie no movement will be detected). Defaults to 0.2

<displayremotecodes>

Xbox only. Set to 'true' to have XBMC display the Infrared Remote's button codes (OBC's) on screen when you press buttons. Useful for assigning functions to the buttons on a universal remote control. Defaults to false.

<thumbsize>

Size of the square in pixels that XBMC will use to cache thumbnail images. If the thumb is smaller than this size it will be cached as-is. If it is larger it will be scaled so that the number of pixels is less than a square of this value. Default is 512 (192 on xbox), which refers to 512x512 = 262144 (for XBox 192x192 = 36864) pixels in total. The thumbnail will be cached at using the same aspect ratio as the original image, using up to 262144 (for XBox 36864) pixels.

<musicthumbs>

A list of additional files to try when searching for music thumbnail images. (The default is folder.jpg which can be removed.)

<musicthumbs>
  <remove>folder.jpg</remove>
  <add>thumb.jpg|cover.jpg</add>
</musicthumbs>

<musicfilenamefilters>

Contains filters to match music information (artist, title etc.) from a tagless music filename. The first <filter> to match completely is used. Matched items include:

%A - Artist %T - Title %B - Album %N - Track number %S - Part of set (disk number) %D - Duration %G - Genre %Y - Year %R - Rating

  <musicfilenamefilters>
    <filter>%A - %T</filter>
  </musicfilenamefilters>

<dvdthumbs>

A list of additional files to try when searching for dvdrom thumbnail images. (The default is folder.jpg which can be removed.)

<dvdthumbs>
  <remove>folder.jpg</remove>
  <add>thumb.jpg|cover.jpg</add>
</dvdthumbs>

<fanart>

A list of additional files to try when searching for fanart images. (The defaults are fanart.jpg and fanart.png which can be removed.)

<fanart>
  <remove>fanart.jpg</remove>
  <add>backdrop.jpg</add>
</fanart>

<masterlock>

If you enable any masterlock settings below, they will be removed from UI. Code needs to be MD5'd, and you can use this site to hash it.


<masterlock>       
   <startuplock>false</startuplock>  <!-- true prompts user for code upon startup -->
   <enableshutdown>false</enableshutdown>  <!-- true shuts down xbox after 3 failed attempts to enter  correct code -->
   <automastermode>false</automastermode>  <!-- automatically enters master mode if the master code is given -->
   <loginlock>true</loginlock>  <!-- whether to use locks on login screen or not -->
   <!-- advancedsettings.xml ONLY: -->
   <maxretries>3<maxretries> <!-- enter the max number of retries to input code, 3 is default. -->
</masterlock>

<postprocessing>

MPlayer postprocessing settings. This is unreliable, and so they're in here only.

  <postprocessing>
    <enable>false</enable>  <!-- enable/disable postprocessing -->
    <auto>true</auto>  <!-- auto filter settings (overrides the below) -->
    <verticaldeblocking>false</verticaldeblocking>  <!-- use vertical deblocking -->
    <verticaldeblocklevel>0</verticaldeblocklevel>  <!-- level of vertical deblocking (0-100) -->
    <horizontaldeblocking>false</horizontaldeblocking>  <!-- use horizontal deblocking -->
    <horizontaldeblocklevel>0</horizontaldeblocklevel>  <!-- level of horizontal deblocking (0-100) -->
    <autobrightnesscontrastlevels>false</autobrightnesscontrastlevels>  <!-- whether to use mplayers colour balancing -->
    <dering>false</dering>  <!-- whether to apply the dering filter -->
  </postprocessing>

<audio>

<audio>
  <!-- Amount of headroom XBMC should use above the maximum volume level, in decibels.  Defaults to 0, valid values 0, 6, 12. -->
  <headroom>0</headroom>
  <!-- Default audio player: paplayer or dvdplayer (or mplayer on Xbox) -->
  <defaultplayer>paplayer</defaultplayer>
  <excludefromscan> <!-- Regular expressions that if evaluated to true won't be added to library. -->
    <regexp>[-\._ ](podcast)[-\._ ]</regexp>
  </excludefromscan>
  <excludefromlisting> <!-- Regular expressions that if evaluated to true won't be displayed in Files View -->
    <regexp>[-\._ ](podcast)[-\._ ]</regexp>
  </excludefromlisting>
  <!-- Amount of gain (dB) to be applied to AC3 streams that have been mixed-down to 2 channels. Default is 12.0. Valid values are: -96.0 to 96.0. -->
  <ac3downmixgain>12.0</ac3downmixgain>
  <playcountminimumpercent>99</playcountminimumpercent> <!-- Minimum percentage that has to be played before it is considered for incrementing in the Top 100 database view, or for last.fm submittal -->
  <resample>48000</resample> <!-- Force a specific samplerate to be produced by paplayer to send to the audio hardware, i.e HDMI Audio is usually only capable of 48000. This doesn't work on XBox-->
  <applydrc>true</applyac3drc> <!-- Whether to use DRC on AC3 and DTS streams -->
</audio>

<karaoke>

<karaoke>
  <!-- Music-lyrics delay for CDG format lyrics in 1/10 seconds. Floating number, may be negative. -->
  <syncdelaycdg>0.0</syncdelaycdg>
  <!-- Music-lyrics delay for LRC format lyrics in 1/10 seconds. Floating number, may be negative. -->
  <syncdelaylrc>0.0</syncdelaylrc>
  <!-- If set to 1, when the songs are added to the library, XBMC will automatically replace the song genre by "Karaoke"
if the song has associated lyrics -->
  <alwaysreplacegenre>0</alwaysreplacegenre>
  <!-- If set to 1, when the music-lyrics delay was modified while playing using subtitle delay buttons, the delay value 
for this song will be stored, and restored when the song is played next time -->
  <storedelay>1</storedelay>
  <!-- When karaoke songs are added to the library during scans, an autoincrement number is automatically assigned
 to each song, starting from the value specified below -->
  <autoassignstartfrom>1</autoassignstartfrom>
  <!-- If set to 1, all background drawing is disabled for CDG songs -->
  <nocdgbackground>1</nocdgbackground>
  <!-- Sets default background mode. Type could be "none", "vis" for visualisation, "image" or "video". 
For image/video types the "path" parameter should specify the image or video file to play. -->
  <defaultbackground type="video" path="special://masterprofile/karaokevideobg.avi"/>
</karaoke>

<video>

<video> <!-- "VideoSettings" instead of "video" for builds prior to May 22, 2006 -->
  <subsdelayrange>10</subsdelayrange>  <!-- Delay range for subtitles, in seconds. -->
  <audiodelayrange>10</audiodelayrange>  <!-- Delay range for audio/video sync, in seconds. -->
  <smallstepbackseconds>7</smallstepbackseconds>  <!-- Length of the small skip back (normally the BACK button) when playing a video -->
  <smallstepbacktries>3</smallstepbacktries>
  <smallstepbackdelay>300</smallstepbackdelay>
  <usetimeseeking>true</usetimeseeking>  <!-- Whether to use time based or percentage based seeking. -->
  <timeseekforward>30</timeseekforward>  <!-- Time to seek forward in seconds when doing a short seek.  Defaults to 30. -->
  <timeseekbackward>-30</timeseekbackward>  <!-- Time to seek backward in seconds when doing a short seek.  Defaults to -30. -->
  <timeseekforwardbig>600</timeseekforwardbig>  <!-- Time to seek forward in seconds when doing a long seek.  Defaults to 600 (10 minutes). -->
  <timeseekbackwardbig>-600</timeseekbackwardbig>  <!-- Time to seek forward in seconds when doing a long seek.  Defaults to -600 (10 minutes). -->
  <percentseekforward>2</percentseekforward>  <!-- Amount to seek forward as a percentage, when doing a short seek.  Defaults to 2. -->
  <percentseekbackward>-2</percentseekbackward>  <!-- Amount to seek backward as a percentage, when doing a short seek.  Defaults to -2. -->
  <percentseekforwardbig>10</percentseekforwardbig>  <!-- Amount to seek forward as a percentage, when doing a long seek.  Defaults to 10. -->
  <percentseekbackwardbig>-10</percentseekbackwardbig>  <!-- Amount to seek forward as a percentage, when doing a long seek.  Defaults to -10. -->
  <blackbarcolour>1</blackbarcolour>  <!-- colour of the black bars (0->255), (black->white) on videos. -->
  <fullscreenonmoviestart>true</fullscreenonmoviestart> <!-- Whether to go to fullscreen or not when starting a movie. Defaults to true. -->
  <defaultplayer>mplayer</defaultplayer> <!-- Set the default video player: mplayer or dvdplayer (xbox only) / dvdplayer or extplayer (others). -->
  <excludefromscan> <!-- Regular expressions that if evaluated to true won't be added to library. -->
    <regexp>[-\._ ](sample|trailer)[-\._ ]</regexp>
  </excludefromscan>
  <excludefromlisting> <!-- Regular expressions that if evaluated to true won't be displayed in Files View -->
    <regexp>[-\._ ](sample|trailer)[-\._ ]</regexp>
  </excludefromlisting>
  <playcountminimumpercent>90</playcountminimumpercent> <!--Minimum percentage that has to be played before it is marked as watched -->
  <ignoreatstart>15</ignoreatstart> <!-- Number of seconds to ignore at video start after which a resume point is created -->
</video> <!-- use "VideoSettings" instead of "video" for builds prior to May 22, 2006 -->

<MyVideos>

<MyVideos>
  <extractthumb>true</extractthumb>  <!-- Stop XBMC from auto extracting thumbnails when the "Extract thumbnails and video information" button is set . -->
  <treatstackasfile>true</treatstackasfile>  <!-- Makes stacked files play back seemless instead of asking you which part to start . -->
</MyVideos>

<musiclibrary>

Options specific to the Music Library

  <musiclibrary>
    <hideallitems>true</hideallitems> <!-- removes the "*All" items from the music library -->
    <allitemsonbottom>true</allitemsonbottom> <!-- sorts the "*All" items at the bottom of the list when in Ascending order -->
    <backgroundupdate>true</backgroundupdate> <!-- set to hide the music scanner dialog from the gui -->
    <recentlyaddeditems>35</recentlyaddeditems> <!-- number of recently added items. Defaults to 25 -->
    <hidecompilationartists>true</hidecompilationartists>    <!-- only shows primary album artists when at the unfiltered artist listing -->
    <albumssortbyartistthenyear>true</albumssortbyartistthenyear>    <!-- at an albums listing, when you sort by artist, secondary sort will be year. -->
    <albumformat>%B - %Y</albumformat>  <!-- album label template, default is "%B" -->
    <albumformatright>%A</albumformatright>  <!-- album label template for right column, default is "%A" -->
    <prioritiseapetags>true</prioritiseapetags>  <!-- prioritise APEv2 tags over ID3v1/2 tags, default is false. -->
    <itemseparator> / </itemseparator>    <!-- separator used for multiple artists/genres in tags. Note, this is *space* *slash* *space* -->
  </musiclibrary>

<videolibrary>

Options specific to the Video Library

  <videolibrary>
    <allitemsonbottom>true</allitemsonbottom>  <!-- sorts the "*All" items at the bottom of the list when in Ascending order -->
    <backgroundupdate>true</backgroundupdate> <!-- set to hide the video scanner dialog from the gui -->
    <cleanonupdate>true</cleanonupdate>  <!-- set to false to prevent xbmc from removing items from the database while updating -->
    <hideallitems>true</hideallitems>  <!-- removes the "*All" items from the video library -->
    <hideemptyseries>true</hideemptyseries>  <!-- hide empty series in the video library -->
    <hiderecentlyaddeditems>true</hiderecentlyaddeditems>  <!-- removes the "Recently added ..." items from the video library. -->
    <recentlyaddeditems>35</recentlyaddeditems> <!-- number of recently added items. Defaults to 25 -->
    <itemseparator> / </itemseparator>  <!-- separator used for multiple artists/genres in tags. Note, this is *space* *slash* *space* -->
    <exportautothumbs>true</exportautothumbs>  <!-- export auto-generated thumbs. Defaults to false -->
    <mymovies>  <!-- Options specific to MyMovies XML file parsing -->
      <categoriestogenres>false</categoriestogenres>  <!-- Add MyMovies Custom Categories to XBMC Genres (boolean, default is false) -->
    </mymovies>
  </videolibrary>

<slideshow>

<slideshow>
  <!-- Amount to pan images as a percentage of the screen -->
  <panamount>2.5</panamount>
  <!-- Amount to zoom images as a percentage of the screen -->
  <zoomamount>5.0</zoomamount>
  <!-- Amount to compensate (zoom) images to attempt to reduce black bars. -->
  <!-- Results in cropping of the longer length of the image in order to reduce the black bars on the shorter length of the image.  -->
  <!-- Defaults to 20. -->
  <blackbarcompensation>20</blackbarcompensation>  
</slideshow>

<lcd>

<lcd>
  <rows>4</rows>               <!-- Number of rows to use for the LCD. -->
  <columns>20</columns>        <!-- Number of columns to use for the LCD. -->
  <address1>0</address1>       <!-- Memory address for row 1. -->
  <address2>20</address2>      <!-- Memory address for row 2. -->
  <address3>64</address3>      <!-- Memory address for row 3. -->
  <address4>84</address4>      <!-- Memory address for row 4. -->
  <heartbeat>true</heartbeat>  <!-- Enables LCDprocs heartbeat symbol. Defaults to false. -->
  <scrolldelay>2</scrolldelay> <!-- Delay of the scroller widget. Defaults to 1. --> 
</lcd>

<network>

<network>
  <autodetectpingtime>30</autodetectpingtime>  <!-- Length in seconds between pinging the network to detect new xbox's -->
  <curlclienttimeout>10</curlclienttimeout>  <!-- Timeout in seconds for libcurl (http/ftp) connections -->
  <curllowspeedtime>5</curllowspeedtime>  <!-- Time in seconds for libcurl to consider a connection lowspeed -->
  <httpproxyusername></httpproxyusername>  <!-- username for Basic Proxy Authentication -->
  <httpproxypassword></httpproxypassword>  <!-- password for Basic Proxy Authentication -->
</network>

<tuxbox>

 <tuxbox>
    <!-- "audiochannelselection"; default is 'false', 'true' will popup the audio channel selection if
          there is more then one audio stream !-->
    <audiochannelselection>false</audiochannelselection>
    <!-- "submenuselection"; default is 'false', 'true' will popup the Submenu selection !-->
    <submenuselection>false</submenuselection>
    <!-- "defaultrootmenu"; MODE: 0 = TV (Default), 1 = Radio, 2 = Data, 3 = Movies, 4 = Root !-->
    <defaultrootmenu>0</defaultrootmenu>
    <!-- "defaultsubmenu"; 1=Services  2=Satellites 3=Providers 4=Bouquets (default) !-->
    <defaultsubmenu>4</defaultsubmenu>
    <!-- "pictureicon"; default is 'true', will use the Picture Icons from folder /UserData/PictureIcon/ !-->
    <pictureicon>true</pictureicon>
    <!-- "epgrequesttime"; default is '10', 0-3600, defines the time in seconds between epg queries, some tuxbox
          devices need longer to response (Minimum: 1, Maximum: 3600) !-->
    <epgrequesttime>10</epgrequesttime>
    <!-- "zapwaittime"; default is '0' (0 = OFF), defines the time in seconds to wait for a valid PMT after the
          zaping was send (Minimum: 0, Maximum: 120) !-->
    <zapwaittime>0</zapwaittime>  
  </tuxbox>

<ftpshowcache>

default is false, if set to true, shows cache (X Y Z) partitions in the root directory listing

<screensaver>

To avoid potential worries of plasma screen burn-in, you can set the Dim screensaver fade level to 0% here or in the Settings.

<screensaver>
  <dimlevel>0</dimlevel>  <!-- This will remove the Fade Level control from the settings screen altogether -->
</screensaver>

<busydialogdelay>

Set the delay in milliseconds before the busydialog pops up (default 2000).

<busydialogdelay>2000</busydialogdelay>

<rootovershoot>

Disable root overshooting aka evil B(tm) navigation. 'Evil B' navigation refers to the 'previous folder' action returning to the parent window from the root location of a media window. Sometimes a user would just want to repeatedly hit the B button to reach the root location without worrying of overshooting to the previous window. For this you should disable evil b by setting this value to false.

<rootovershoot>false</rootovershoot>

<hosts>

Static dns entries which take precedence over your dns server.

<hosts>
  <entry name="HOSTNAME">IPADDRESS</entry>
</hosts>

<fullscreen>

Starts XBMC in full screen (check resolutions!). The same as starting XBMC with -fs.

<fullscreen>false</fullscreen>

<cputempcommand>

Provide a shell command XBMC will use to get CPU temperature. It should print out only "[temp as integer] [scale as one of "CcFf"]".

  <cputempcommand>sed -e 's/\([0-9]*\)[0-9]\{3\}.*/\1 C/' /sys/class/thermal/thermal_zone0/temp</cputempcommand>

<gputempcommand>

Provide a shell command XBMC will use to get GPU temperature. It should print out only "[temp as integer] [scale as one of "CcFf"]".

  <gputempcommand>echo "$(nvidia-settings -tq gpuCoreTemp) C"</gputempcommand>

<glrectanglehack>

Problems with ghosting or videos which are only played back in the left upper quarter? The following ATI hack may solve it.

  <glrectanglehack>yes</glrectanglehack>

<alwaysontop>

Added in r20809 (win32 only). Keeps XBMC always on top when windowed.

  <alwaysontop>yes</alwaysontop>

<externalplayer>

See the relevant How To.

<bginfoloadermaxthreads>

Control the number of threads in the background info loader thread pool (thumb generagor, flagging, etc). Useful for tuning platforms that are low on CPU, like Xbox and Intel Atom based systems.

  <bginfoloadermaxthreads>5</bginfoloadermaxthreads>

<edl>

Commercial break detection not as good you think it could be? Are some commercial breaks in a series of adverts not being skipped? Are some parts being skipped that are clearly not commercials? Does the end of the previous recording still show? The following advanced settings can be used to better identify full commercial break sequences, remove incorrectly flagged commercial breaks, and have playback start at the actual beginning of the recording.

<edl>
  <!-- if true, commercial breaks will be merged according to the remaining options. -->
  <mergeshortcommbreaks>false</mergeshortcommbreaks>
  <!-- Commercial breaks won't be merged if the total length of the commercial break would be greater than this (seconds) -->
  <maxcommbreaklength>250</maxcommbreaklength>
  <!-- After merging, commercial breaks shorter than this will be removed (seconds) -->
  <mincommbreaklength>90</mincommbreaklength>
  <!-- Commercial breaks that are further apart than this won't be merged (seconds) -->
  <maxcommbreakgap>120</maxcommbreakgap>
  <!-- If the first commercial break is within this gap from the start it will be extended to the start (seconds) -->
  <maxstartgap>300</maxstartgap>
</edl>

<myth>

Not seeing all the recordings you expected in the Movies folder? If so, it's very likely that the electronic program guide (EPG) used by MythTV doesn't accurately distinguish between TV Shows and Movies all the time. The following setting allows the length of the recording to also be used to determine if a recording is a Movie.

<myth>
   <!-- Recordings longer than this will be added to the Movies folder (minutes). 0 = off -->
  <movielength>0</movielength>
</myth>

How to include GUI settings

You can also define the settings normally defined in the GUI in advancedsettings.xml. Any GUI based settings defined in advancedsettings.xml will override the GUI values, and the settings will be removed completely from the GUI (ie only alterable by editting advancedsettings.xml).

The easiest way to include a GUI setting is to first make sure it is set in the GUI to the value that you want, and then to open the UserData\guisettings.xml file and find the XML entry that corresponds to that setting.

Then just add that entry to the advancedsettings.xml file.

For instance, to set the Font Character Set for the GUI (found in the appearance setting, in the Look and Feel section), you'd open up guisettings.xml and find:

  <lookandfeel>
    <charset>Hebrew (Windows)</charset>
  </lookandfeel>

Simply take that entry and place it in advancedsettings.xml. The GUI entry for the character set will then no longer appear, and XBMC will always use the Hebrew (Windows) character set.


Here are some special cases, if they aren't defined the user will be prompted first time he/she tries to access any of these paths:
Note: There are no default pre-set values

<trainerpath>

<myprograms>
    <trainerpath>Q:\system\trainers</trainerpath> 
</myprograms>

<recordingpath>

<mymusic>
    <recordingpath>E:\Recordings</recordingpath>
</mymusic>

<cddaripperpath>

<cddaripper>
    <path>E:\Recordings</path>
</cddaripper>

<playlistspath>

<system>
    <playlistspath>E:\Playlists</playlistspath>
</system>

<screenshotpath>

<pictures>
  <screenshotpath>E:\Screenshots</screenshotpath>
</pictures>

<hq software upscaling>

Here you can define if you want to have the hq software upscaling instead of hw upscaling for SD video material.Type 8 for LANZOS or 7 for SINC algorythm.

<videoplayer>
  <highqualityupscaling>1</highqualityupscaling>
  <upscalingalgorithm>8</upscalingalgorithm>
</videoplayer>

<flatten TV shows>

0=never 1=if one season (default) 2=all

<videolibrary>
  <flattentvshows>2</flattentvshows>
</videolibrary>