<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://kodi.wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Black+eagle</id>
	<title>Official Kodi Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://kodi.wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Black+eagle"/>
	<link rel="alternate" type="text/html" href="https://kodi.wiki/view/Special:Contributions/Black_eagle"/>
	<updated>2026-06-15T05:17:12Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://kodi.wiki/index.php?title=Music_tagging&amp;diff=254787</id>
		<title>Music tagging</title>
		<link rel="alternate" type="text/html" href="https://kodi.wiki/index.php?title=Music_tagging&amp;diff=254787"/>
		<updated>2025-02-16T08:19:34Z</updated>

		<summary type="html">&lt;p&gt;Black eagle: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{MusicLibraryCreate}}&lt;br /&gt;
{{mininav|[[Music library]]}}&lt;br /&gt;
&lt;br /&gt;
https://www.videohelp.com/software/chapterEditor&lt;br /&gt;
= Introduction =&lt;br /&gt;
This page provides the following information:&lt;br /&gt;
&lt;br /&gt;
*How the Music section differs from the Video section of {{kodi}}&lt;br /&gt;
*The recommended method to organise your music files &lt;br /&gt;
*The recommended method for tagging your music files&lt;br /&gt;
*Explanation of some commonly misunderstood Music File Tags&lt;br /&gt;
*The Audio Files and Tags that {{kodi}} reads and uses&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Understanding the Music Library =&lt;br /&gt;
&amp;lt;section begin=&amp;quot;understanding&amp;quot; /&amp;gt;There is a fundamental differences between video library operation and the music library operation: &lt;br /&gt;
*The video library is based on using the filenames or folder names to obtain online data. If they are incorrectly named, then there are no scraper results and there will be no library entry.&lt;br /&gt;
*&#039;&#039;&#039;The music library is based on scanning tags embedded in the music files.&#039;&#039;&#039; It ignores the folder names and structure and file names. Proper tagging is essential to ensure the library is populated correctly. Having slight variations in the tags for artist and album names could mean duplicated and unwanted entries.&amp;lt;section end=&amp;quot;understanding&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Folder and File Structure =&lt;br /&gt;
Although {{kodi}} ignores the folder structure and the names of the folders and files, the structure of your folders is important as it affects the operation of other functions such as Import/Export, nfo files and Artwork. For example, if you have all your music files in one folder (which is possible), then you lose the ability to use local nfo files, local artwork, and the import/export module will not function correctly.&lt;br /&gt;
&lt;br /&gt;
The following is {{kodi}} &#039;&#039;&#039;best practice&#039;&#039;&#039;. Remember use a layout that is nice for you, but &#039;&#039;&#039;tag accurately.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Files ==&lt;br /&gt;
Song files require suitable tagging for use in {{kodi}}. While {{kodi}} can scan minimal tags into the library, it can lead to errors in the library and subsequent scraping. We recommend music files are tagged with MusicBrainz as detailed below.&lt;br /&gt;
&lt;br /&gt;
Remember that {{kodi}} does not extract any information from the filename, so the filename is your choice.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Folders ==&lt;br /&gt;
{{kodi}} is quite flexible with the folder structure. The diagram below is an &#039;&#039;&#039;example&#039;&#039;&#039;. You should group your albums in a manner that makes sense to you.&lt;br /&gt;
&lt;br /&gt;
To ensure {{kodi}} and other add-on processes can function efficently and correctly, the following is recommended.&lt;br /&gt;
*Songs from the same album should be in the one folder&lt;br /&gt;
*If there is more than one disk in the release, each disk should be in a sub-folder containing the songs from that disk&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a typical folder structure:&lt;br /&gt;
&lt;br /&gt;
 f:\   ....................................(root)&lt;br /&gt;
  |__Artist Information  ..................(Artist Information Folder)&lt;br /&gt;
  |&lt;br /&gt;
  |__Artist Music   .......................(source folder)&lt;br /&gt;
  |  |__ Madonna   ........................(artist folder)&lt;br /&gt;
  |  |   |__ Beautiful Stranger (1999)   ..(album folder)&lt;br /&gt;
  |  |   |   |__ Song 1&lt;br /&gt;
  |  |   |   |__ Song 2&lt;br /&gt;
  |  |   |   |__ Song 3 etc&lt;br /&gt;
  |  |   |__ Bedtime Stories (1994)   .....(album folder)&lt;br /&gt;
  |  |   |   |__ Song 1&lt;br /&gt;
  |  |   |   |__ Song 2&lt;br /&gt;
  |  |   |   |__ Song 3 etc&lt;br /&gt;
  |  |   |__ Like A Prayer (1989)   .......(album folder)&lt;br /&gt;
  |  |   |   |__ Song 1&lt;br /&gt;
  |  |   |   |__ Song 2&lt;br /&gt;
  |  |   |   |__ Song 3 etc&lt;br /&gt;
  |  |__ Simply Red   .....................(artist folder)&lt;br /&gt;
  |      |__ Picture Book (1985)   ........(album folder)&lt;br /&gt;
  |          |__ Song 1&lt;br /&gt;
  |          |__ Song 2&lt;br /&gt;
  |          |__ Song 3 etc&lt;br /&gt;
  |&lt;br /&gt;
  |__Compilations   .......................(Source)&lt;br /&gt;
  |  |__ Essential Eighties   .............(album folder)&lt;br /&gt;
  |  |       |__ Song 1&lt;br /&gt;
  |  |       |__ Song 2&lt;br /&gt;
  |  |       |__ Song 3 etc&lt;br /&gt;
  |  |__ 100% Hits- Best of 2005   ........(album folder)&lt;br /&gt;
  |          |__ Song 1&lt;br /&gt;
  |          |__ Song 2&lt;br /&gt;
  |          |__ Song 3 etc&lt;br /&gt;
  |&lt;br /&gt;
  |__Classical   ..........................(Source)&lt;br /&gt;
  |&lt;br /&gt;
  |__Audiobooks   .........................(Source)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sources ==&lt;br /&gt;
A source is the parent folder that contains your media collection- in this case Music. This folder is then set as a Source in {{kodi}} which enables {{kodi}} to access your Music. &lt;br /&gt;
&lt;br /&gt;
In the diagram from the previous section &#039;&#039;Artist Music, Compilations, Classical&#039;&#039; and &#039;&#039;Audiobooks&#039;&#039; are Sources.&lt;br /&gt;
&lt;br /&gt;
Notes on naming and setting a &#039;&#039;&#039;Source&#039;&#039;&#039;:&lt;br /&gt;
*There is no limit on the number of Sources that can be used&lt;br /&gt;
*The Source names, which essentially is your folder name, can be anything that makes sense to you. The names should be unique, which makes it easier to navigate to the correct source in {{Kodi}}&lt;br /&gt;
*Larger libraries do benefit from multiple sources&lt;br /&gt;
*There is no requirement on how to separate music between Sources. Many users separate based on Genre, alphabetical listing, release type or any method you prefer&lt;br /&gt;
*If your music collection exists on multiple drives, then a Source folder is required for each drive&lt;br /&gt;
*&#039;&#039;&#039;Never&#039;&#039;&#039; mix media classes. ie, ensure TV Shows, Movies, Music Videos or Music are not in the same source, nor as a sub-folder of another source.&lt;br /&gt;
*&#039;&#039;&#039;Never&#039;&#039;&#039; set the entire hard drive as your Source as this will create multiple ghost entries.&lt;br /&gt;
&lt;br /&gt;
Setting and Scanning of Sources is covered in detail in the next step of the guide. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Tagging =&lt;br /&gt;
Most music files purchased or ripped by your favourite software have only minimal metadata embedded. Normally this is not a problem and works very well on simple music players.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{kodi}}, being an advanced and feature rich player, requires greater accuracy with the embedded tags. Any slight variance in, for example, the Album name between the tracks from the same album will see multiple entries in the library for that Album. It is not uncommon to have a single album split into three similarly named albums. Also true for Artists. It is for this reason that there is a separation of the Scanning and Scraping processes for Music. The initial scan allows you to find and correct errors in tagging, before scraping.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
This table has examples of errors in tagging, which will cause duplicated entries in the library...&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
!Similar Name 1 || Similar Name 2 || Note&lt;br /&gt;
|-&lt;br /&gt;
|György Ligeti || Gyorgy Ligeti || Accented and unaccented names will create duplicate entries&lt;br /&gt;
|-&lt;br /&gt;
|The Best of || The Very Best Of || Inconsistent naming between songs of the same album and/or artist will cause duplicated entries&lt;br /&gt;
|-&lt;br /&gt;
|Madonna || Madonnna || Spelling mistakes will cause duplicated entries for albums and/or artists&lt;br /&gt;
|-&lt;br /&gt;
|Sting || Sting and The Police || Seen as two separate and unrelated Artists&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
As {{kodi}} scans your music collection, it copies the data contained in those tags into the {{kodi}} music database. The benefits of this are:&lt;br /&gt;
*Once the scan is complete, the tags are not accessed again&lt;br /&gt;
*All information is now obtained from the database. This has the benefit of dramatically increasing efficency and speed when navigating the library.&lt;br /&gt;
*Now that a database entry exists, you are able to scrape additional information from online sources. This is covered later in the guide.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== MusicBrainz ==&lt;br /&gt;
&#039;&#039;&#039;{{kodi}} has strong support for MusicBrainz tagging. It is highly recommended that users tag their music files using MusicBrainz Picard.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;MusicBrainz Picard&#039;&#039;&#039; is the music file tagger software that can access the MusicBrainz database to locate metadata to embed into your music files. MBIDs are useful because names are not unique. The bigger and more diverse your music collection is, the more likely you will encounter Artists with the same name. &lt;br /&gt;
&lt;br /&gt;
The advantages of tagging with MusicBrainz are:&lt;br /&gt;
*They allow you to have different artists with the same name in your library e.g. &amp;quot;John Williams&amp;quot; the classical guitarist and &amp;quot;John Williams&amp;quot; the film music composer and conductor.&lt;br /&gt;
*They negate inconsistencies in artist naming e.g. having &amp;quot;Peter Tchaikovsky&amp;quot; on some albums and &amp;quot;Piotr Czajkowski&amp;quot; on others&lt;br /&gt;
*They allow you to have more than one release of an album in your library e.g. the normal and deluxe editions of an album&lt;br /&gt;
*They clearly identify the artist and album in ways that names alone can not. This can then be used to accurately scrape additional artist and album information and locate the correct artwork&lt;br /&gt;
*They allow the scraping process to be more efficient, otherwise an extra call is made to try and get an mbid first to use at the scraping sites, and each request from Musicbrainz must be throttled to 1 per sec which will slow the scraping process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Below is a screenshot of the main screen of the Picard software. A brief description of the layout as follows.&lt;br /&gt;
&lt;br /&gt;
*Top Left Box- Folder listing of your music collection&lt;br /&gt;
*Top Centre Box- Albums are dragged and dropped here in preparation for matching and tagging. Pressing &#039;&#039;Lookup&#039;&#039; (greyed out) will commence the lookup process&lt;br /&gt;
*Top Right Box- Matching albums are displayed here and your songs are overlayed. In the screenshot, songs 01, 08 and 09 have been matched to the suggested album. If all songs match and you agree the correct album was located, simply pressing Save will tag the album with the tags displayed in the Bottom Tag Box.&lt;br /&gt;
*Bottom Tag Box - Selecting a song from the Top Right Box will display all available tag fields (left column), the current tags in the music file (Original Value column) and the MusicBrainz tags to be embedded in the music file (right column).&lt;br /&gt;
&lt;br /&gt;
The example in the image below shows the following:&lt;br /&gt;
*Most tags are missing (original value column)&lt;br /&gt;
*The top three yellow entries are incorrect (original value column) and the corrections are in the right column&lt;br /&gt;
*The green entries in the right column indicate new tags to be embedded&lt;br /&gt;
*The black entries at the bottom of the list indicate no change to the existing tags as they are correct or not used by MusicBrainz.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;packed&amp;quot; widths=&amp;quot;1000px&amp;quot; heights=&amp;quot;563px&amp;quot;&amp;gt;&lt;br /&gt;
File:MusicBrainzPicard01.jpg&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Although Picard is very easy to use, you must avoid blindly accepting everything offered by the software. It is important that you confirm the correct album was located. Due to the global nature of the database, there are many releases for a single album. These releases differ between countries, usually due to copyright requirements. This may lead you to inadvertendly select the incorrect release for your album, even though it is named exactly the same. The differences between releases may be as simple as different song ordering or the inclusion of additional bonus tracks.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clear Existing Tags ==&lt;br /&gt;
For the best tagging experience set the correct options in Picard, particularly the &amp;quot;Clear Existing Tags&amp;quot; option in settings. This option means that any old tags that may cause issues are wiped, preserving only the musicbrainz tagging. It will also be wise to tag using ID3v2.4 compatibility.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;packed&amp;quot; widths=&amp;quot;500px&amp;quot; heights=&amp;quot;283px&amp;quot;&amp;gt;&lt;br /&gt;
File:Picard options.jpg&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== albumartists ==&lt;br /&gt;
{{Kodi}} requires the &#039;&#039;&#039;albumartists&#039;&#039;&#039; tag to correctly handle multiple album artists on the same album. This tag is not a default tag in MusicBrainz Picard and other tagging software. &amp;lt;ref&amp;gt; https://forum.kodi.tv/showthread.php?tid=334729&amp;amp;pid=2760161#pid2760161 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To include this tag add a new script under &#039;&#039;Options &amp;gt; Options &amp;gt; Scripting &amp;gt; Add new script&#039;&#039; and include the following code...&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
$setmulti(albumartists,%_albumartists%)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;packed&amp;quot; widths=&amp;quot;500px&amp;quot; heights=&amp;quot;283px&amp;quot;&amp;gt;&lt;br /&gt;
File:Picard Script.JPG&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the music files are tagged, avoid modifying the MusicBrainz tags unless you clearly understand the relationship of the MBID&#039;s and the other related tags. For example, embedding MBID tags, but then editing the Artist tag or Album Artist tag will result in incorrect entries in the library.&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
*If you need to change the artist or album artist tag you also have to edit the matching artist mbid tag and album artist mbid tag. &lt;br /&gt;
*If Kodi finds a release mbid it will expect the artist mbid tags to also be present.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;&#039;&#039;See: [https://musicbrainz.org/ MusicBrainz Website]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
:&#039;&#039;&#039;&#039;&#039;See: [https://picard.musicbrainz.org/ MusicBrainz Picard Software]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;center&amp;gt;{{red|&#039;&#039;&#039;The remainder of this page deals with special use cases or provides information for technical interest and reference only. It can be safely disregarded if these do not apply to you&#039;&#039;&#039;}}&amp;lt;/center&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;{{linear-gradient|left|#f5d3ff, #12b2e7}}&amp;quot;&amp;gt;{{next|[[Adding_music_to_the_library|Scanning Music into Library]]}} &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Ripping CD&#039;s =&lt;br /&gt;
{{main|Ripping CDs}}&lt;br /&gt;
{{#lst:Ripping CDs|intro}}&lt;br /&gt;
&lt;br /&gt;
There is no requirement to use the {{Kodi}} CD Ripper. If you are comfortable using other ripping software, then we recommend you continue using that software.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Cue Sheets =&lt;br /&gt;
{{#lst:Cue_sheets|intro}}&lt;br /&gt;
&lt;br /&gt;
{{kodi}} does provide basic support for using cue sheets to define individual tracks when an entire CD has been ripped into a single music file. However the information provided by  the cue sheet standard is much more limited than that of standard tagging, hence to enjoy the full music library features it is recommended that tracks are ripped into separate files and fully tagged.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{red|If you do not use Cue Sheets you can safely move onto the next step.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
;{{see also|Cue_sheets}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Streams =&lt;br /&gt;
{{#lst:Internet_video_and_audio_streams|intro}}&lt;br /&gt;
&lt;br /&gt;
;{{see also|Internet_video_and_audio_streams}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Technical Explanation: File tags =&lt;br /&gt;
For many categories, such as genres and artists, {{kodi}} supports multiple values in the one field.  By default it uses the character sequence &amp;quot; / &amp;quot; to divide the entry into multiple values.  This divider may be changed via [[advancedsettings.xml]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Resolving Compilations and Multiple Artists ==&lt;br /&gt;
{{red|Applies to v17 and below. v18 introduced the [[Artist information folder]] which solved these problems. You are encouraged to update to v18}}&lt;br /&gt;
&lt;br /&gt;
{{kodi}} reads the &#039;&#039;Album Artist&#039;&#039; tag in ID3, Ogg, APE and MP4 tags and uses it if available to assign an artist to the album (independently of the track&#039;s artist information).  This is the &amp;quot;Album Artist&amp;quot; tag (in ID3 this is represented by the &amp;quot;TPE2&amp;quot; tag; in vorbiscomment (ogg) files &amp;quot;ALBUMARTIST&amp;quot;, &amp;quot;ALBUM ARTIST&amp;quot; and &amp;quot;ENSEMBLE&amp;quot; are all supported).  Multiple artists for either a track or album artist can be specified in &amp;quot;Artist1 / Artist2 / Artist3&amp;quot; format.&lt;br /&gt;
&lt;br /&gt;
If no &#039;&#039;Album Artist&#039;&#039; tag exists, {{kodi}} will use the first (primary) artist from the tracks as the &#039;&#039;Album Artist&#039;&#039;.  Essentially we do a string comparison of all the track artists, and assign the common artists as the &#039;&#039;Album artist&#039;&#039;. This is generally the TPE1 tag in ID3.&lt;br /&gt;
&lt;br /&gt;
As many users don&#039;t yet use the &#039;&#039;Album Artist&#039;&#039; tag, {{kodi}} has an additional filter system for identifying compilation albums, where each track normally has a different artist.  As {{kodi}} scans a folder, it does the following:&lt;br /&gt;
# Identifies albums based on &#039;&#039;Album&#039;&#039; name alone in the folder and groups the songs that have the same &#039;&#039;Album&#039;&#039; name together as an album.&lt;br /&gt;
# Runs through each album&#039;s assigned songs.  If there is 2 or more tracks with the same &#039;&#039;Track&#039;&#039; number, the group of songs must come from 2 or more albums, so the &#039;&#039;Album&#039;&#039; name is ruled out as a possible compilation.&lt;br /&gt;
# If any of the songs assigned to the &#039;&#039;Album&#039;&#039; name have an &#039;&#039;Album Artist&#039;&#039; tag, then {{kodi}} assumes the user knows what they&#039;re doing, and this album is also ruled out from being a compilation.&lt;br /&gt;
# If two or more songs assigned to the &#039;&#039;Album&#039;&#039; name then have different primary artists, then the &#039;&#039;Album&#039;&#039; name is considered to be a group of songs from a compilation, and the &#039;&#039;Various Artists&#039;&#039;&amp;quot; tag is assigned as the album artist.&lt;br /&gt;
# Otherwise, if all the songs have the same primary artist but don&#039;t have the same full artist list (eg a song or two has an additional artist) then the album is assigned the primary artist as it&#039;s &#039;&#039;Album Artist&#039;&#039;, and we assume the additional artists are guest artists.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ratings in ID3 tags ==&lt;br /&gt;
Ratings in ID3 tags are read via the POPM field, and (if this doesn&#039;t exist) in a custom (TXXX) field named &amp;quot;RATING&amp;quot;.  For the RATING field, we accept 1-5 as valid ratings.  For the POPM field things are more complicated, as there is no established standard in place.  We currently most closely respect what Mediamonkey does, and also have some support for what Windows Media Player 11 does.  The POPM tag takes a value from 0..255, with 0 meaning no rating, 1 the worst, and 255 the best.  We currently map these as follows:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
!&#039;&#039;&#039;POPM value&#039;&#039;&#039; || &#039;&#039;&#039;Star rating&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|0 ||&lt;br /&gt;
|- &lt;br /&gt;
|1 || &#039;&#039;&#039;*&#039;&#039;&#039; This is a special case for Windows Media Player&lt;br /&gt;
|- &lt;br /&gt;
| 2-8 || &lt;br /&gt;
|- &lt;br /&gt;
|9-49 || &#039;&#039;&#039;*&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|50-113 ||&#039;&#039;&#039;**&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|114-167 || &#039;&#039;&#039;***&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|168-218 || &#039;&#039;&#039;****&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|219-255 ||&#039;&#039;&#039;*****&#039;&#039;&#039;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Audio Formats &amp;amp; Tags =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Supported Audio Formats ==&lt;br /&gt;
Although the list of playable formats is quite comprehensive, it is not accurate to say that every {{kodi}} installation will play every format. The ability to play some of the more obscure formats will depend upon the version of {{kodi}} and the operating system in use. Some formats will require the installation of add-ons.&lt;br /&gt;
&lt;br /&gt;
{{#lst:Advancedsettings.xml|musicextensions}}&lt;br /&gt;
&lt;br /&gt;
;{{See also|Advancedsettings.xml}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Supported Metadata Containers ==&lt;br /&gt;
The following metadata containers are supported by {{kodi}}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Metadata Container || Note&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:APEv2 tag|APEv2 tag]] ||&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:Advanced_Systems_Format|ASF]] ||&lt;br /&gt;
|-&lt;br /&gt;
|Generic Tag || A generic tag for basic data from other odd file types&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:ID3|ID3]] || v1, v2.3 and v2.4&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:MPEG-4 Part 14#Metadata|MP4]] ||&lt;br /&gt;
|-&lt;br /&gt;
|[https://xiph.org/ Xiph.org] || Vorbis Comments ||&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:matroska|mka]] || See below for tag spec&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Common File &amp;amp; Tag Combination ==&lt;br /&gt;
You will notice that not all the tags listed in the section &#039;&#039;Supported Audio Formats&#039;&#039; above are listed in the following table. Those formats that are omitted do not have provision to support embedded tags. If your collection contains any of these unsupported formats, you will be unable to scan the music into the library. Your options are:&lt;br /&gt;
#Convert your audio file to a supported format and tag using MusicBrainz Picard. (recommended)&lt;br /&gt;
#Access your music via the File Manager or via File View&lt;br /&gt;
&lt;br /&gt;
{{kodi}} supports the following common Audio File and Tag Formats &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!| Metadata container&lt;br /&gt;
!| Additional Filename extensions&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:APEv2 tag|APEv2 tag]] || ape, mp3, aac, wv, mpc&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:Advanced_Systems_Format|ASF]] || asf, wmv, wma&lt;br /&gt;
|-&lt;br /&gt;
| Generic Tag || it, mod, module, nst, wow, s3m, xm&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:ID3|ID3 v1]] || mp3, aac&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:ID3|ID3 v2]] || mp3, aac, tta, aif, aiff, wav, flac&lt;br /&gt;
|-&lt;br /&gt;
| iTunes [[wikipedia:MPEG-4 Part 14#Metadata|MP4]] || .3g2 .m4a .m4b .m4p .m4r .m4v .mp4&lt;br /&gt;
|-&lt;br /&gt;
|[https://xiph.org/ Xiph.org] || flac, oga, ogg, opus&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:matroska|matroska]] || mka&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Note:&lt;br /&gt;
*FLAC files- xiph tags override id3v2 tags &lt;br /&gt;
*mp3 files can have either id3 or APE tags&lt;br /&gt;
*dsf, dff - ID3v2 format read but are handled by ffmpeg tag reader and it does not support all tags from IDE standard&lt;br /&gt;
*mka - standard matroska tags however, due to an issue with ffmpeg, multiple repeat tags for eg producer are not read.  Because of this, you can tag with a comma separated list of &#039;&#039;involved people&#039;&#039;.&lt;br /&gt;
This is the same format as ID3v2.4 TIPL tag where every odd value is a function (producer, engineer etc) and every even value is an artist.  You can also tag with a key of &#039;&#039;instruments&#039;&#039; which follows the same convention so &amp;quot;instrument, person, instrument, person&amp;quot; etc  Date tags in mka files should correspond to the extended [[wikipedia:ISO 8601|IS0 8601]] format &#039;&#039;&#039;YYYY-MM-DD&#039;&#039;&#039; or part of.&lt;br /&gt;
&lt;br /&gt;
== Tags {{kodi}} reads ==&lt;br /&gt;
{{kodi}} will scan the following tags embedded in the music file. The column &#039;&#039;{{kodi}} Version&#039;&#039; indicates the version of {{kodi}} that the tag was introduced, and will work in subsequent versions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=&amp;quot;TagTable&amp;quot; /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align:left;&amp;quot;| {{kodi}} Version&lt;br /&gt;
! Vorbis (.Flac)&lt;br /&gt;
! ID3v2 (.mp3)&lt;br /&gt;
! APE&lt;br /&gt;
! MP4&lt;br /&gt;
! ASF&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ARTIST&lt;br /&gt;
|TPE1&lt;br /&gt;
|ARTIST&lt;br /&gt;
|\251ART&lt;br /&gt;
|Author&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ARTISTS&lt;br /&gt;
|ARTISTS&lt;br /&gt;
|ARTISTS&lt;br /&gt;
| ----:com.apple.iTunes:ARTISTS&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ALBUMARTIST  or ALBUM ARTIST&lt;br /&gt;
|TPE2 OR ALBUMARTIST or ALBUM ARTIST&lt;br /&gt;
|ALBUMARTIST  or ALBUM ARTIST&lt;br /&gt;
|aART&lt;br /&gt;
|WM/AlbumArtist&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ALBUMARTISTS or ALBUM ARTISTS&lt;br /&gt;
|ALBUMARTISTS or ALBUM ARTISTS&lt;br /&gt;
|ALBUMARTISTS or ALBUM ARTISTS&lt;br /&gt;
| ----:com.apple.iTunes:ALBUMARTISTS&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ALBUM&lt;br /&gt;
|TALB&lt;br /&gt;
|ALBUM&lt;br /&gt;
|\251alb&lt;br /&gt;
|WM/AlbumTitle&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|TITLE&lt;br /&gt;
|TIT2&lt;br /&gt;
|TITLE&lt;br /&gt;
|\251nam&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|TRACKNUMBER&lt;br /&gt;
|TRCK&lt;br /&gt;
|TRACKNUMBER or TRACK&lt;br /&gt;
|trkn&lt;br /&gt;
|WM/TrackNumber or WM/Track&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|DISCNUMBER&lt;br /&gt;
|TPOS&lt;br /&gt;
|DISCNUMBER or DISC&lt;br /&gt;
|disk&lt;br /&gt;
|WM/PartOfSet&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|YEAR&lt;br /&gt;
|TYER&lt;br /&gt;
|YEAR&lt;br /&gt;
|\251day&lt;br /&gt;
|WM/Year&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|DATE&lt;br /&gt;
|TDRC, TDRL&lt;br /&gt;
|DATE&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|GENRE&lt;br /&gt;
|TCON&lt;br /&gt;
|GENRE&lt;br /&gt;
|\251gen&lt;br /&gt;
|WM/Genre&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MOOD&lt;br /&gt;
|TMOO OR TXXX:MOOD&lt;br /&gt;
|MOOD&lt;br /&gt;
| ----:com.apple.iTunes:MOOD&lt;br /&gt;
|WM/Mood&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|COMMENT&lt;br /&gt;
|COMM&lt;br /&gt;
|COMMENT&lt;br /&gt;
|\251cmt&lt;br /&gt;
|(COMMENT)&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|CUESHEET&lt;br /&gt;
|&lt;br /&gt;
|CUESHEET&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|COMPILATION&lt;br /&gt;
|TCMP&lt;br /&gt;
|COMPILATION&lt;br /&gt;
|cpil&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|LYRICS&lt;br /&gt;
|USLT&lt;br /&gt;
|LYRICS&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_TRACK_GAIN&lt;br /&gt;
|REPLAYGAIN_TRACK_GAIN&lt;br /&gt;
|REPLAYGAIN_TRACK_GAIN&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_track_gain&lt;br /&gt;
|replaygain_track_gain&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_ALBUM_GAIN&lt;br /&gt;
|REPLAYGAIN_ALBUM_GAIN&lt;br /&gt;
|REPLAYGAIN_ALBUM_GAIN&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_album_gain&lt;br /&gt;
|replaygain_album_gain&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_TRACK_PEAK&lt;br /&gt;
|REPLAYGAIN_TRACK_PEAK&lt;br /&gt;
|REPLAYGAIN_TRACK_PEAK&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_track_peak&lt;br /&gt;
|replaygain_track_peak&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_album_peak&lt;br /&gt;
|replaygain_album_peak&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_album_peak&lt;br /&gt;
|replaygain_album_peak&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ARTISTID&lt;br /&gt;
|MUSICBRAINZ ARTIST ID&lt;br /&gt;
|MUSICBRAINZ_ARTISTID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Artist Id&lt;br /&gt;
|MusicBrainz/Artist Id&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTISTID&lt;br /&gt;
|MUSICBRAINZ ALBUM ARTIST ID&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTISTID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Artist Id&lt;br /&gt;
|MusicBrainz/Album Artist Id&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTIST&lt;br /&gt;
|MUSICBRAINZ ALBUM ARTIST&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTIST&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Artist&lt;br /&gt;
|MusicBrainz/Album Artist&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ALBUMID&lt;br /&gt;
|MUSICBRAINZ ALBUM ID&lt;br /&gt;
|MUSICBRAINZ_ALBUMID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Id&lt;br /&gt;
|MusicBrainz/Album Id&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_TRACKID&lt;br /&gt;
|UFID&lt;br /&gt;
|MUSICBRAINZ_TRACKID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Track Id&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|RATING&lt;br /&gt;
|POPM&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|METADATA_BLOCK_PICTURE or COVERART or COVERARTMIME&lt;br /&gt;
|APIC&lt;br /&gt;
|&lt;br /&gt;
|covr&lt;br /&gt;
|WM/Picture&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|COMPOSER&lt;br /&gt;
|TCOM&lt;br /&gt;
|COMPOSER&lt;br /&gt;
|\251wrt&lt;br /&gt;
|WM/Composer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|CONDUCTOR&lt;br /&gt;
|TPE3&lt;br /&gt;
|CONDUCTOR&lt;br /&gt;
| ----:com.apple.iTunes:CONDUCTOR&lt;br /&gt;
|WM/Conductor&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|LYRICIST&lt;br /&gt;
|TEXT&lt;br /&gt;
|LYRICIST&lt;br /&gt;
| ----:com.apple.iTunes:LYRICIST&lt;br /&gt;
|WM/Writer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|REMIXER or MIXARTIST&lt;br /&gt;
|TPE4&lt;br /&gt;
|REMIXER or MIXARTIST&lt;br /&gt;
| ----:com.apple.iTunes:REMIXER&lt;br /&gt;
|WM/ModifiedBy&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|ENSEMBLE&lt;br /&gt;
|(TIPL) or TXXX:Ensemble&lt;br /&gt;
|ENSEMBLE&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|ARRANGER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|ARRANGER&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|ENGINEER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|ENGINEER&lt;br /&gt;
| ----:com.apple.iTunes:ENGINEER&lt;br /&gt;
|WM/Engineer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|PRODUCER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|PRODUCER&lt;br /&gt;
| ----:com.apple.iTunes:PRODUCER&lt;br /&gt;
|WM/Producer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|DJMIXER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|DJMIXER&lt;br /&gt;
| ----:com.apple.iTunes:DJMIXER&lt;br /&gt;
|WM/DJMixer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|MIXER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|MIXER&lt;br /&gt;
| ----:com.apple.iTunes:MIXER&lt;br /&gt;
|WM/Mixer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|PERFORMER&lt;br /&gt;
|TMCL&lt;br /&gt;
|PERFORMER&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|LABEL&lt;br /&gt;
|TPUB&lt;br /&gt;
|LABEL&lt;br /&gt;
| ----:com.apple.iTunes:LABEL&lt;br /&gt;
|WM/Publisher&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|RELEASETYPE&lt;br /&gt;
|MUSICBRAINZ ALBUM TYPE&lt;br /&gt;
|MUSICBRAINZ_ALBUMTYPE&lt;br /&gt;
| ---:com.apple.iTunes:MusicBrainz Album Type&lt;br /&gt;
|MusicBrainz/Album Type&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|MUSICBRAINZ_RELEASEGROUPID&lt;br /&gt;
|MUSICBRAINZ RELEASE GROUP ID&lt;br /&gt;
|MUSICBRAINZ_RELEASEGROUPID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Release Group Id&lt;br /&gt;
|MusicBrainz/Release Group Id&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|ARTISTSORT&lt;br /&gt;
|TSOP&lt;br /&gt;
|ARTISTSORT&lt;br /&gt;
| &lt;br /&gt;
|WM/ArtistSortOrder&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|ALBUMARTISTSORT&lt;br /&gt;
|TS02&lt;br /&gt;
|ALBUMARTISTSORT&lt;br /&gt;
|soaa&lt;br /&gt;
|WM/AlbumArtistSortOrder&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|COMPOSERSORT&lt;br /&gt;
|TSOC&lt;br /&gt;
|COMPOSERSORT&lt;br /&gt;
|soco&lt;br /&gt;
|WM/ComposerSortOrder&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|WRITER&lt;br /&gt;
|WRITER&lt;br /&gt;
|WRITER&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|DISCSUBTITLE&lt;br /&gt;
|TSST&lt;br /&gt;
|DiscSubtitle&lt;br /&gt;
| ----:com.apple.iTunes:DISCSUBTITLE&lt;br /&gt;
|WM/SetSubTitle&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|BPM&lt;br /&gt;
|TBPM&lt;br /&gt;
|BPM&lt;br /&gt;
|tmpo&lt;br /&gt;
|WM/BeatsPerMinute&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|ORIGINALDATE or ORIGINALYEAR&lt;br /&gt;
|TDOR or TORY&lt;br /&gt;
|ORIGINALYEAR&lt;br /&gt;
| ----:com.apple.iTunes:originaldate&lt;br /&gt;
|WM/OriginalReleaseYear&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|RELEASESTATUS&lt;br /&gt;
|TXXX:MusicBrainz Album Status&lt;br /&gt;
|MUSICBRAINZ_ALBUMSTATUS&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Status&lt;br /&gt;
|MusicBrainz/Album Status&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;section end=&amp;quot;TagTable&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As of {{Kodi}} V22, the most common music tags can be applied to mka files and read by {{Kodi}}.  This includes a comma separated list of &#039;&#039;&#039;instruments&#039;&#039;&#039; and &#039;&#039;&#039;involved people&#039;&#039;&#039; as documented above. The relevant PR is [[https://github.com/xbmc/xbmc/pull/26293 here]].&lt;br /&gt;
&lt;br /&gt;
==== Please Note: ====&lt;br /&gt;
[[https://picard.musicbrainz.org/ Musicbrainz Picard]] is not capable of tagging mka files.  However, [[wikipedia:mp3tag|mp3tag]] and [[wikipedia:foobar2000|foobar2000]] are both viable alternatives that are.  They both run well under wine if you might need them to. Other taggers are also available such as [https://www.videohelp.com/software/chapterEditor chapterEditor] which is capable of editing chapters and tags in mka files.  Versions for Linux and Windows are available.&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Top}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;{{linear-gradient|left|#f5d3ff, #12b2e7}}&amp;quot;&amp;gt;{{next|[[Adding_music_to_the_library|Scanning Music into Library]]}} &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{updated|18}}&lt;br /&gt;
[[Category:Index]]&lt;br /&gt;
[[Category:Guides]]&lt;br /&gt;
[[Category:Manual]]&lt;br /&gt;
[[Category:Karellen]]&lt;br /&gt;
[[Category:First time user]]&lt;br /&gt;
[[Category:Music library]]&lt;br /&gt;
[[Category:Advanced topics]]&lt;br /&gt;
[[Category:Quick Start Guide]]&lt;/div&gt;</summary>
		<author><name>Black eagle</name></author>
	</entry>
	<entry>
		<id>https://kodi.wiki/index.php?title=Music_tagging&amp;diff=254576</id>
		<title>Music tagging</title>
		<link rel="alternate" type="text/html" href="https://kodi.wiki/index.php?title=Music_tagging&amp;diff=254576"/>
		<updated>2025-01-28T08:58:48Z</updated>

		<summary type="html">&lt;p&gt;Black eagle: /* Common File &amp;amp; Tag Combination */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{MusicLibraryCreate}}&lt;br /&gt;
{{mininav|[[Music library]]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
This page provides the following information:&lt;br /&gt;
&lt;br /&gt;
*How the Music section differs from the Video section of {{kodi}}&lt;br /&gt;
*The recommended method to organise your music files &lt;br /&gt;
*The recommended method for tagging your music files&lt;br /&gt;
*Explanation of some commonly misunderstood Music File Tags&lt;br /&gt;
*The Audio Files and Tags that {{kodi}} reads and uses&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Understanding the Music Library =&lt;br /&gt;
&amp;lt;section begin=&amp;quot;understanding&amp;quot; /&amp;gt;There is a fundamental differences between video library operation and the music library operation: &lt;br /&gt;
*The video library is based on using the filenames or folder names to obtain online data. If they are incorrectly named, then there are no scraper results and there will be no library entry.&lt;br /&gt;
*&#039;&#039;&#039;The music library is based on scanning tags embedded in the music files.&#039;&#039;&#039; It ignores the folder names and structure and file names. Proper tagging is essential to ensure the library is populated correctly. Having slight variations in the tags for artist and album names could mean duplicated and unwanted entries.&amp;lt;section end=&amp;quot;understanding&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Folder and File Structure =&lt;br /&gt;
Although {{kodi}} ignores the folder structure and the names of the folders and files, the structure of your folders is important as it affects the operation of other functions such as Import/Export, nfo files and Artwork. For example, if you have all your music files in one folder (which is possible), then you lose the ability to use local nfo files, local artwork, and the import/export module will not function correctly.&lt;br /&gt;
&lt;br /&gt;
The following is {{kodi}} &#039;&#039;&#039;best practice&#039;&#039;&#039;. Remember use a layout that is nice for you, but &#039;&#039;&#039;tag accurately.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Files ==&lt;br /&gt;
Song files require suitable tagging for use in {{kodi}}. While {{kodi}} can scan minimal tags into the library, it can lead to errors in the library and subsequent scraping. We recommend music files are tagged with MusicBrainz as detailed below.&lt;br /&gt;
&lt;br /&gt;
Remember that {{kodi}} does not extract any information from the filename, so the filename is your choice.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Folders ==&lt;br /&gt;
{{kodi}} is quite flexible with the folder structure. The diagram below is an &#039;&#039;&#039;example&#039;&#039;&#039;. You should group your albums in a manner that makes sense to you.&lt;br /&gt;
&lt;br /&gt;
To ensure {{kodi}} and other add-on processes can function efficently and correctly, the following is recommended.&lt;br /&gt;
*Songs from the same album should be in the one folder&lt;br /&gt;
*If there is more than one disk in the release, each disk should be in a sub-folder containing the songs from that disk&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a typical folder structure:&lt;br /&gt;
&lt;br /&gt;
 f:\   ....................................(root)&lt;br /&gt;
  |__Artist Information  ..................(Artist Information Folder)&lt;br /&gt;
  |&lt;br /&gt;
  |__Artist Music   .......................(source folder)&lt;br /&gt;
  |  |__ Madonna   ........................(artist folder)&lt;br /&gt;
  |  |   |__ Beautiful Stranger (1999)   ..(album folder)&lt;br /&gt;
  |  |   |   |__ Song 1&lt;br /&gt;
  |  |   |   |__ Song 2&lt;br /&gt;
  |  |   |   |__ Song 3 etc&lt;br /&gt;
  |  |   |__ Bedtime Stories (1994)   .....(album folder)&lt;br /&gt;
  |  |   |   |__ Song 1&lt;br /&gt;
  |  |   |   |__ Song 2&lt;br /&gt;
  |  |   |   |__ Song 3 etc&lt;br /&gt;
  |  |   |__ Like A Prayer (1989)   .......(album folder)&lt;br /&gt;
  |  |   |   |__ Song 1&lt;br /&gt;
  |  |   |   |__ Song 2&lt;br /&gt;
  |  |   |   |__ Song 3 etc&lt;br /&gt;
  |  |__ Simply Red   .....................(artist folder)&lt;br /&gt;
  |      |__ Picture Book (1985)   ........(album folder)&lt;br /&gt;
  |          |__ Song 1&lt;br /&gt;
  |          |__ Song 2&lt;br /&gt;
  |          |__ Song 3 etc&lt;br /&gt;
  |&lt;br /&gt;
  |__Compilations   .......................(Source)&lt;br /&gt;
  |  |__ Essential Eighties   .............(album folder)&lt;br /&gt;
  |  |       |__ Song 1&lt;br /&gt;
  |  |       |__ Song 2&lt;br /&gt;
  |  |       |__ Song 3 etc&lt;br /&gt;
  |  |__ 100% Hits- Best of 2005   ........(album folder)&lt;br /&gt;
  |          |__ Song 1&lt;br /&gt;
  |          |__ Song 2&lt;br /&gt;
  |          |__ Song 3 etc&lt;br /&gt;
  |&lt;br /&gt;
  |__Classical   ..........................(Source)&lt;br /&gt;
  |&lt;br /&gt;
  |__Audiobooks   .........................(Source)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sources ==&lt;br /&gt;
A source is the parent folder that contains your media collection- in this case Music. This folder is then set as a Source in {{kodi}} which enables {{kodi}} to access your Music. &lt;br /&gt;
&lt;br /&gt;
In the diagram from the previous section &#039;&#039;Artist Music, Compilations, Classical&#039;&#039; and &#039;&#039;Audiobooks&#039;&#039; are Sources.&lt;br /&gt;
&lt;br /&gt;
Notes on naming and setting a &#039;&#039;&#039;Source&#039;&#039;&#039;:&lt;br /&gt;
*There is no limit on the number of Sources that can be used&lt;br /&gt;
*The Source names, which essentially is your folder name, can be anything that makes sense to you. The names should be unique, which makes it easier to navigate to the correct source in {{Kodi}}&lt;br /&gt;
*Larger libraries do benefit from multiple sources&lt;br /&gt;
*There is no requirement on how to separate music between Sources. Many users separate based on Genre, alphabetical listing, release type or any method you prefer&lt;br /&gt;
*If your music collection exists on multiple drives, then a Source folder is required for each drive&lt;br /&gt;
*&#039;&#039;&#039;Never&#039;&#039;&#039; mix media classes. ie, ensure TV Shows, Movies, Music Videos or Music are not in the same source, nor as a sub-folder of another source.&lt;br /&gt;
*&#039;&#039;&#039;Never&#039;&#039;&#039; set the entire hard drive as your Source as this will create multiple ghost entries.&lt;br /&gt;
&lt;br /&gt;
Setting and Scanning of Sources is covered in detail in the next step of the guide. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Tagging =&lt;br /&gt;
Most music files purchased or ripped by your favourite software have only minimal metadata embedded. Normally this is not a problem and works very well on simple music players.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{kodi}}, being an advanced and feature rich player, requires greater accuracy with the embedded tags. Any slight variance in, for example, the Album name between the tracks from the same album will see multiple entries in the library for that Album. It is not uncommon to have a single album split into three similarly named albums. Also true for Artists. It is for this reason that there is a separation of the Scanning and Scraping processes for Music. The initial scan allows you to find and correct errors in tagging, before scraping.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
This table has examples of errors in tagging, which will cause duplicated entries in the library...&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
!Similar Name 1 || Similar Name 2 || Note&lt;br /&gt;
|-&lt;br /&gt;
|György Ligeti || Gyorgy Ligeti || Accented and unaccented names will create duplicate entries&lt;br /&gt;
|-&lt;br /&gt;
|The Best of || The Very Best Of || Inconsistent naming between songs of the same album and/or artist will cause duplicated entries&lt;br /&gt;
|-&lt;br /&gt;
|Madonna || Madonnna || Spelling mistakes will cause duplicated entries for albums and/or artists&lt;br /&gt;
|-&lt;br /&gt;
|Sting || Sting and The Police || Seen as two separate and unrelated Artists&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
As {{kodi}} scans your music collection, it copies the data contained in those tags into the {{kodi}} music database. The benefits of this are:&lt;br /&gt;
*Once the scan is complete, the tags are not accessed again&lt;br /&gt;
*All information is now obtained from the database. This has the benefit of dramatically increasing efficency and speed when navigating the library.&lt;br /&gt;
*Now that a database entry exists, you are able to scrape additional information from online sources. This is covered later in the guide.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== MusicBrainz ==&lt;br /&gt;
&#039;&#039;&#039;{{kodi}} has strong support for MusicBrainz tagging. It is highly recommended that users tag their music files using MusicBrainz Picard.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;MusicBrainz Picard&#039;&#039;&#039; is the music file tagger software that can access the MusicBrainz database to locate metadata to embed into your music files. MBIDs are useful because names are not unique. The bigger and more diverse your music collection is, the more likely you will encounter Artists with the same name. &lt;br /&gt;
&lt;br /&gt;
The advantages of tagging with MusicBrainz are:&lt;br /&gt;
*They allow you to have different artists with the same name in your library e.g. &amp;quot;John Williams&amp;quot; the classical guitarist and &amp;quot;John Williams&amp;quot; the film music composer and conductor.&lt;br /&gt;
*They negate inconsistencies in artist naming e.g. having &amp;quot;Peter Tchaikovsky&amp;quot; on some albums and &amp;quot;Piotr Czajkowski&amp;quot; on others&lt;br /&gt;
*They allow you to have more than one release of an album in your library e.g. the normal and deluxe editions of an album&lt;br /&gt;
*They clearly identify the artist and album in ways that names alone can not. This can then be used to accurately scrape additional artist and album information and locate the correct artwork&lt;br /&gt;
*They allow the scraping process to be more efficient, otherwise an extra call is made to try and get an mbid first to use at the scraping sites, and each request from Musicbrainz must be throttled to 1 per sec which will slow the scraping process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Below is a screenshot of the main screen of the Picard software. A brief description of the layout as follows.&lt;br /&gt;
&lt;br /&gt;
*Top Left Box- Folder listing of your music collection&lt;br /&gt;
*Top Centre Box- Albums are dragged and dropped here in preparation for matching and tagging. Pressing &#039;&#039;Lookup&#039;&#039; (greyed out) will commence the lookup process&lt;br /&gt;
*Top Right Box- Matching albums are displayed here and your songs are overlayed. In the screenshot, songs 01, 08 and 09 have been matched to the suggested album. If all songs match and you agree the correct album was located, simply pressing Save will tag the album with the tags displayed in the Bottom Tag Box.&lt;br /&gt;
*Bottom Tag Box - Selecting a song from the Top Right Box will display all available tag fields (left column), the current tags in the music file (Original Value column) and the MusicBrainz tags to be embedded in the music file (right column).&lt;br /&gt;
&lt;br /&gt;
The example in the image below shows the following:&lt;br /&gt;
*Most tags are missing (original value column)&lt;br /&gt;
*The top three yellow entries are incorrect (original value column) and the corrections are in the right column&lt;br /&gt;
*The green entries in the right column indicate new tags to be embedded&lt;br /&gt;
*The black entries at the bottom of the list indicate no change to the existing tags as they are correct or not used by MusicBrainz.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;packed&amp;quot; widths=&amp;quot;1000px&amp;quot; heights=&amp;quot;563px&amp;quot;&amp;gt;&lt;br /&gt;
File:MusicBrainzPicard01.jpg&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Although Picard is very easy to use, you must avoid blindly accepting everything offered by the software. It is important that you confirm the correct album was located. Due to the global nature of the database, there are many releases for a single album. These releases differ between countries, usually due to copyright requirements. This may lead you to inadvertendly select the incorrect release for your album, even though it is named exactly the same. The differences between releases may be as simple as different song ordering or the inclusion of additional bonus tracks.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clear Existing Tags ==&lt;br /&gt;
For the best tagging experience set the correct options in Picard, particularly the &amp;quot;Clear Existing Tags&amp;quot; option in settings. This option means that any old tags that may cause issues are wiped, preserving only the musicbrainz tagging. It will also be wise to tag using ID3v2.4 compatibility.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;packed&amp;quot; widths=&amp;quot;500px&amp;quot; heights=&amp;quot;283px&amp;quot;&amp;gt;&lt;br /&gt;
File:Picard options.jpg&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== albumartists ==&lt;br /&gt;
{{Kodi}} requires the &#039;&#039;&#039;albumartists&#039;&#039;&#039; tag to correctly handle multiple album artists on the same album. This tag is not a default tag in MusicBrainz Picard and other tagging software. &amp;lt;ref&amp;gt; https://forum.kodi.tv/showthread.php?tid=334729&amp;amp;pid=2760161#pid2760161 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To include this tag add a new script under &#039;&#039;Options &amp;gt; Options &amp;gt; Scripting &amp;gt; Add new script&#039;&#039; and include the following code...&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
$setmulti(albumartists,%_albumartists%)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;packed&amp;quot; widths=&amp;quot;500px&amp;quot; heights=&amp;quot;283px&amp;quot;&amp;gt;&lt;br /&gt;
File:Picard Script.JPG&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the music files are tagged, avoid modifying the MusicBrainz tags unless you clearly understand the relationship of the MBID&#039;s and the other related tags. For example, embedding MBID tags, but then editing the Artist tag or Album Artist tag will result in incorrect entries in the library.&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
*If you need to change the artist or album artist tag you also have to edit the matching artist mbid tag and album artist mbid tag. &lt;br /&gt;
*If Kodi finds a release mbid it will expect the artist mbid tags to also be present.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;&#039;&#039;See: [https://musicbrainz.org/ MusicBrainz Website]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
:&#039;&#039;&#039;&#039;&#039;See: [https://picard.musicbrainz.org/ MusicBrainz Picard Software]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;center&amp;gt;{{red|&#039;&#039;&#039;The remainder of this page deals with special use cases or provides information for technical interest and reference only. It can be safely disregarded if these do not apply to you&#039;&#039;&#039;}}&amp;lt;/center&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;{{linear-gradient|left|#f5d3ff, #12b2e7}}&amp;quot;&amp;gt;{{next|[[Adding_music_to_the_library|Scanning Music into Library]]}} &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Ripping CD&#039;s =&lt;br /&gt;
{{main|Ripping CDs}}&lt;br /&gt;
{{#lst:Ripping CDs|intro}}&lt;br /&gt;
&lt;br /&gt;
There is no requirement to use the {{Kodi}} CD Ripper. If you are comfortable using other ripping software, then we recommend you continue using that software.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Cue Sheets =&lt;br /&gt;
{{#lst:Cue_sheets|intro}}&lt;br /&gt;
&lt;br /&gt;
{{kodi}} does provide basic support for using cue sheets to define individual tracks when an entire CD has been ripped into a single music file. However the information provided by  the cue sheet standard is much more limited than that of standard tagging, hence to enjoy the full music library features it is recommended that tracks are ripped into separate files and fully tagged.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{red|If you do not use Cue Sheets you can safely move onto the next step.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
;{{see also|Cue_sheets}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Streams =&lt;br /&gt;
{{#lst:Internet_video_and_audio_streams|intro}}&lt;br /&gt;
&lt;br /&gt;
;{{see also|Internet_video_and_audio_streams}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Technical Explanation: File tags =&lt;br /&gt;
For many categories, such as genres and artists, {{kodi}} supports multiple values in the one field.  By default it uses the character sequence &amp;quot; / &amp;quot; to divide the entry into multiple values.  This divider may be changed via [[advancedsettings.xml]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Resolving Compilations and Multiple Artists ==&lt;br /&gt;
{{red|Applies to v17 and below. v18 introduced the [[Artist information folder]] which solved these problems. You are encouraged to update to v18}}&lt;br /&gt;
&lt;br /&gt;
{{kodi}} reads the &#039;&#039;Album Artist&#039;&#039; tag in ID3, Ogg, APE and MP4 tags and uses it if available to assign an artist to the album (independently of the track&#039;s artist information).  This is the &amp;quot;Album Artist&amp;quot; tag (in ID3 this is represented by the &amp;quot;TPE2&amp;quot; tag; in vorbiscomment (ogg) files &amp;quot;ALBUMARTIST&amp;quot;, &amp;quot;ALBUM ARTIST&amp;quot; and &amp;quot;ENSEMBLE&amp;quot; are all supported).  Multiple artists for either a track or album artist can be specified in &amp;quot;Artist1 / Artist2 / Artist3&amp;quot; format.&lt;br /&gt;
&lt;br /&gt;
If no &#039;&#039;Album Artist&#039;&#039; tag exists, {{kodi}} will use the first (primary) artist from the tracks as the &#039;&#039;Album Artist&#039;&#039;.  Essentially we do a string comparison of all the track artists, and assign the common artists as the &#039;&#039;Album artist&#039;&#039;. This is generally the TPE1 tag in ID3.&lt;br /&gt;
&lt;br /&gt;
As many users don&#039;t yet use the &#039;&#039;Album Artist&#039;&#039; tag, {{kodi}} has an additional filter system for identifying compilation albums, where each track normally has a different artist.  As {{kodi}} scans a folder, it does the following:&lt;br /&gt;
# Identifies albums based on &#039;&#039;Album&#039;&#039; name alone in the folder and groups the songs that have the same &#039;&#039;Album&#039;&#039; name together as an album.&lt;br /&gt;
# Runs through each album&#039;s assigned songs.  If there is 2 or more tracks with the same &#039;&#039;Track&#039;&#039; number, the group of songs must come from 2 or more albums, so the &#039;&#039;Album&#039;&#039; name is ruled out as a possible compilation.&lt;br /&gt;
# If any of the songs assigned to the &#039;&#039;Album&#039;&#039; name have an &#039;&#039;Album Artist&#039;&#039; tag, then {{kodi}} assumes the user knows what they&#039;re doing, and this album is also ruled out from being a compilation.&lt;br /&gt;
# If two or more songs assigned to the &#039;&#039;Album&#039;&#039; name then have different primary artists, then the &#039;&#039;Album&#039;&#039; name is considered to be a group of songs from a compilation, and the &#039;&#039;Various Artists&#039;&#039;&amp;quot; tag is assigned as the album artist.&lt;br /&gt;
# Otherwise, if all the songs have the same primary artist but don&#039;t have the same full artist list (eg a song or two has an additional artist) then the album is assigned the primary artist as it&#039;s &#039;&#039;Album Artist&#039;&#039;, and we assume the additional artists are guest artists.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ratings in ID3 tags ==&lt;br /&gt;
Ratings in ID3 tags are read via the POPM field, and (if this doesn&#039;t exist) in a custom (TXXX) field named &amp;quot;RATING&amp;quot;.  For the RATING field, we accept 1-5 as valid ratings.  For the POPM field things are more complicated, as there is no established standard in place.  We currently most closely respect what Mediamonkey does, and also have some support for what Windows Media Player 11 does.  The POPM tag takes a value from 0..255, with 0 meaning no rating, 1 the worst, and 255 the best.  We currently map these as follows:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
!&#039;&#039;&#039;POPM value&#039;&#039;&#039; || &#039;&#039;&#039;Star rating&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|0 ||&lt;br /&gt;
|- &lt;br /&gt;
|1 || &#039;&#039;&#039;*&#039;&#039;&#039; This is a special case for Windows Media Player&lt;br /&gt;
|- &lt;br /&gt;
| 2-8 || &lt;br /&gt;
|- &lt;br /&gt;
|9-49 || &#039;&#039;&#039;*&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|50-113 ||&#039;&#039;&#039;**&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|114-167 || &#039;&#039;&#039;***&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|168-218 || &#039;&#039;&#039;****&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|219-255 ||&#039;&#039;&#039;*****&#039;&#039;&#039;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Audio Formats &amp;amp; Tags =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Supported Audio Formats ==&lt;br /&gt;
Although the list of playable formats is quite comprehensive, it is not accurate to say that every {{kodi}} installation will play every format. The ability to play some of the more obscure formats will depend upon the version of {{kodi}} and the operating system in use. Some formats will require the installation of add-ons.&lt;br /&gt;
&lt;br /&gt;
{{#lst:Advancedsettings.xml|musicextensions}}&lt;br /&gt;
&lt;br /&gt;
;{{See also|Advancedsettings.xml}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Supported Metadata Containers ==&lt;br /&gt;
The following metadata containers are supported by {{kodi}}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Metadata Container || Note&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:APEv2 tag|APEv2 tag]] ||&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:Advanced_Systems_Format|ASF]] ||&lt;br /&gt;
|-&lt;br /&gt;
|Generic Tag || A generic tag for basic data from other odd file types&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:ID3|ID3]] || v1, v2.3 and v2.4&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:MPEG-4 Part 14#Metadata|MP4]] ||&lt;br /&gt;
|-&lt;br /&gt;
|[https://xiph.org/ Xiph.org] || Vorbis Comments ||&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:matroska|mka]] || See below for tag spec&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Common File &amp;amp; Tag Combination ==&lt;br /&gt;
You will notice that not all the tags listed in the section &#039;&#039;Supported Audio Formats&#039;&#039; above are listed in the following table. Those formats that are omitted do not have provision to support embedded tags. If your collection contains any of these unsupported formats, you will be unable to scan the music into the library. Your options are:&lt;br /&gt;
#Convert your audio file to a supported format and tag using MusicBrainz Picard. (recommended)&lt;br /&gt;
#Access your music via the File Manager or via File View&lt;br /&gt;
&lt;br /&gt;
{{kodi}} supports the following common Audio File and Tag Formats &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!| Metadata container&lt;br /&gt;
!| Additional Filename extensions&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:APEv2 tag|APEv2 tag]] || ape, mp3, aac, wv, mpc&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:Advanced_Systems_Format|ASF]] || asf, wmv, wma&lt;br /&gt;
|-&lt;br /&gt;
| Generic Tag || it, mod, module, nst, wow, s3m, xm&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:ID3|ID3 v1]] || mp3, aac&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:ID3|ID3 v2]] || mp3, aac, tta, aif, aiff, wav, flac&lt;br /&gt;
|-&lt;br /&gt;
| iTunes [[wikipedia:MPEG-4 Part 14#Metadata|MP4]] || .3g2 .m4a .m4b .m4p .m4r .m4v .mp4&lt;br /&gt;
|-&lt;br /&gt;
|[https://xiph.org/ Xiph.org] || flac, oga, ogg, opus&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:matroska|matroska]] || mka&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Note:&lt;br /&gt;
*FLAC files- xiph tags override id3v2 tags &lt;br /&gt;
*mp3 files can have either id3 or APE tags&lt;br /&gt;
*dsf, dff - ID3v2 format read but are handled by ffmpeg tag reader and it does not support all tags from IDE standard&lt;br /&gt;
*mka - standard matroska tags however, due to an issue with ffmpeg, multiple repeat tags for eg producer are not read.  Because of this, you can tag with a comma separated list of &#039;&#039;involved people&#039;&#039;.&lt;br /&gt;
This is the same format as ID3v2.4 TIPL tag where every odd value is a function (producer, engineer etc) and every even value is an artist.  You can also tag with a key of &#039;&#039;instruments&#039;&#039; which follows the same convention so &amp;quot;instrument, person, instrument, person&amp;quot; etc  Date tags in mka files should correspond to the extended [[wikipedia:ISO 8601|IS0 8601]] format &#039;&#039;&#039;YYYY-MM-DD&#039;&#039;&#039; or part of.&lt;br /&gt;
&lt;br /&gt;
== Tags {{kodi}} reads ==&lt;br /&gt;
{{kodi}} will scan the following tags embedded in the music file. The column &#039;&#039;{{kodi}} Version&#039;&#039; indicates the version of {{kodi}} that the tag was introduced, and will work in subsequent versions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=&amp;quot;TagTable&amp;quot; /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align:left;&amp;quot;| {{kodi}} Version&lt;br /&gt;
! Vorbis (.Flac)&lt;br /&gt;
! ID3v2 (.mp3)&lt;br /&gt;
! APE&lt;br /&gt;
! MP4&lt;br /&gt;
! ASF&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ARTIST&lt;br /&gt;
|TPE1&lt;br /&gt;
|ARTIST&lt;br /&gt;
|\251ART&lt;br /&gt;
|Author&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ARTISTS&lt;br /&gt;
|ARTISTS&lt;br /&gt;
|ARTISTS&lt;br /&gt;
| ----:com.apple.iTunes:ARTISTS&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ALBUMARTIST  or ALBUM ARTIST&lt;br /&gt;
|TPE2 OR ALBUMARTIST or ALBUM ARTIST&lt;br /&gt;
|ALBUMARTIST  or ALBUM ARTIST&lt;br /&gt;
|aART&lt;br /&gt;
|WM/AlbumArtist&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ALBUMARTISTS or ALBUM ARTISTS&lt;br /&gt;
|ALBUMARTISTS or ALBUM ARTISTS&lt;br /&gt;
|ALBUMARTISTS or ALBUM ARTISTS&lt;br /&gt;
| ----:com.apple.iTunes:ALBUMARTISTS&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ALBUM&lt;br /&gt;
|TALB&lt;br /&gt;
|ALBUM&lt;br /&gt;
|\251alb&lt;br /&gt;
|WM/AlbumTitle&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|TITLE&lt;br /&gt;
|TIT2&lt;br /&gt;
|TITLE&lt;br /&gt;
|\251nam&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|TRACKNUMBER&lt;br /&gt;
|TRCK&lt;br /&gt;
|TRACKNUMBER or TRACK&lt;br /&gt;
|trkn&lt;br /&gt;
|WM/TrackNumber or WM/Track&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|DISCNUMBER&lt;br /&gt;
|TPOS&lt;br /&gt;
|DISCNUMBER or DISC&lt;br /&gt;
|disk&lt;br /&gt;
|WM/PartOfSet&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|YEAR&lt;br /&gt;
|TYER&lt;br /&gt;
|YEAR&lt;br /&gt;
|\251day&lt;br /&gt;
|WM/Year&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|DATE&lt;br /&gt;
|TDRC, TDRL&lt;br /&gt;
|DATE&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|GENRE&lt;br /&gt;
|TCON&lt;br /&gt;
|GENRE&lt;br /&gt;
|\251gen&lt;br /&gt;
|WM/Genre&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MOOD&lt;br /&gt;
|TMOO OR TXXX:MOOD&lt;br /&gt;
|MOOD&lt;br /&gt;
| ----:com.apple.iTunes:MOOD&lt;br /&gt;
|WM/Mood&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|COMMENT&lt;br /&gt;
|COMM&lt;br /&gt;
|COMMENT&lt;br /&gt;
|\251cmt&lt;br /&gt;
|(COMMENT)&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|CUESHEET&lt;br /&gt;
|&lt;br /&gt;
|CUESHEET&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|COMPILATION&lt;br /&gt;
|TCMP&lt;br /&gt;
|COMPILATION&lt;br /&gt;
|cpil&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|LYRICS&lt;br /&gt;
|USLT&lt;br /&gt;
|LYRICS&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_TRACK_GAIN&lt;br /&gt;
|REPLAYGAIN_TRACK_GAIN&lt;br /&gt;
|REPLAYGAIN_TRACK_GAIN&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_track_gain&lt;br /&gt;
|replaygain_track_gain&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_ALBUM_GAIN&lt;br /&gt;
|REPLAYGAIN_ALBUM_GAIN&lt;br /&gt;
|REPLAYGAIN_ALBUM_GAIN&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_album_gain&lt;br /&gt;
|replaygain_album_gain&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_TRACK_PEAK&lt;br /&gt;
|REPLAYGAIN_TRACK_PEAK&lt;br /&gt;
|REPLAYGAIN_TRACK_PEAK&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_track_peak&lt;br /&gt;
|replaygain_track_peak&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_album_peak&lt;br /&gt;
|replaygain_album_peak&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_album_peak&lt;br /&gt;
|replaygain_album_peak&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ARTISTID&lt;br /&gt;
|MUSICBRAINZ ARTIST ID&lt;br /&gt;
|MUSICBRAINZ_ARTISTID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Artist Id&lt;br /&gt;
|MusicBrainz/Artist Id&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTISTID&lt;br /&gt;
|MUSICBRAINZ ALBUM ARTIST ID&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTISTID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Artist Id&lt;br /&gt;
|MusicBrainz/Album Artist Id&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTIST&lt;br /&gt;
|MUSICBRAINZ ALBUM ARTIST&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTIST&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Artist&lt;br /&gt;
|MusicBrainz/Album Artist&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ALBUMID&lt;br /&gt;
|MUSICBRAINZ ALBUM ID&lt;br /&gt;
|MUSICBRAINZ_ALBUMID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Id&lt;br /&gt;
|MusicBrainz/Album Id&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_TRACKID&lt;br /&gt;
|UFID&lt;br /&gt;
|MUSICBRAINZ_TRACKID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Track Id&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|RATING&lt;br /&gt;
|POPM&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|METADATA_BLOCK_PICTURE or COVERART or COVERARTMIME&lt;br /&gt;
|APIC&lt;br /&gt;
|&lt;br /&gt;
|covr&lt;br /&gt;
|WM/Picture&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|COMPOSER&lt;br /&gt;
|TCOM&lt;br /&gt;
|COMPOSER&lt;br /&gt;
|\251wrt&lt;br /&gt;
|WM/Composer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|CONDUCTOR&lt;br /&gt;
|TPE3&lt;br /&gt;
|CONDUCTOR&lt;br /&gt;
| ----:com.apple.iTunes:CONDUCTOR&lt;br /&gt;
|WM/Conductor&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|LYRICIST&lt;br /&gt;
|TEXT&lt;br /&gt;
|LYRICIST&lt;br /&gt;
| ----:com.apple.iTunes:LYRICIST&lt;br /&gt;
|WM/Writer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|REMIXER or MIXARTIST&lt;br /&gt;
|TPE4&lt;br /&gt;
|REMIXER or MIXARTIST&lt;br /&gt;
| ----:com.apple.iTunes:REMIXER&lt;br /&gt;
|WM/ModifiedBy&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|ENSEMBLE&lt;br /&gt;
|(TIPL) or TXXX:Ensemble&lt;br /&gt;
|ENSEMBLE&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|ARRANGER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|ARRANGER&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|ENGINEER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|ENGINEER&lt;br /&gt;
| ----:com.apple.iTunes:ENGINEER&lt;br /&gt;
|WM/Engineer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|PRODUCER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|PRODUCER&lt;br /&gt;
| ----:com.apple.iTunes:PRODUCER&lt;br /&gt;
|WM/Producer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|DJMIXER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|DJMIXER&lt;br /&gt;
| ----:com.apple.iTunes:DJMIXER&lt;br /&gt;
|WM/DJMixer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|MIXER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|MIXER&lt;br /&gt;
| ----:com.apple.iTunes:MIXER&lt;br /&gt;
|WM/Mixer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|PERFORMER&lt;br /&gt;
|TMCL&lt;br /&gt;
|PERFORMER&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|LABEL&lt;br /&gt;
|TPUB&lt;br /&gt;
|LABEL&lt;br /&gt;
| ----:com.apple.iTunes:LABEL&lt;br /&gt;
|WM/Publisher&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|RELEASETYPE&lt;br /&gt;
|MUSICBRAINZ ALBUM TYPE&lt;br /&gt;
|MUSICBRAINZ_ALBUMTYPE&lt;br /&gt;
| ---:com.apple.iTunes:MusicBrainz Album Type&lt;br /&gt;
|MusicBrainz/Album Type&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|MUSICBRAINZ_RELEASEGROUPID&lt;br /&gt;
|MUSICBRAINZ RELEASE GROUP ID&lt;br /&gt;
|MUSICBRAINZ_RELEASEGROUPID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Release Group Id&lt;br /&gt;
|MusicBrainz/Release Group Id&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|ARTISTSORT&lt;br /&gt;
|TSOP&lt;br /&gt;
|ARTISTSORT&lt;br /&gt;
| &lt;br /&gt;
|WM/ArtistSortOrder&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|ALBUMARTISTSORT&lt;br /&gt;
|TS02&lt;br /&gt;
|ALBUMARTISTSORT&lt;br /&gt;
|soaa&lt;br /&gt;
|WM/AlbumArtistSortOrder&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|COMPOSERSORT&lt;br /&gt;
|TSOC&lt;br /&gt;
|COMPOSERSORT&lt;br /&gt;
|soco&lt;br /&gt;
|WM/ComposerSortOrder&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|WRITER&lt;br /&gt;
|WRITER&lt;br /&gt;
|WRITER&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|DISCSUBTITLE&lt;br /&gt;
|TSST&lt;br /&gt;
|DiscSubtitle&lt;br /&gt;
| ----:com.apple.iTunes:DISCSUBTITLE&lt;br /&gt;
|WM/SetSubTitle&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|BPM&lt;br /&gt;
|TBPM&lt;br /&gt;
|BPM&lt;br /&gt;
|tmpo&lt;br /&gt;
|WM/BeatsPerMinute&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|ORIGINALDATE or ORIGINALYEAR&lt;br /&gt;
|TDOR or TORY&lt;br /&gt;
|ORIGINALYEAR&lt;br /&gt;
| ----:com.apple.iTunes:originaldate&lt;br /&gt;
|WM/OriginalReleaseYear&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|RELEASESTATUS&lt;br /&gt;
|TXXX:MusicBrainz Album Status&lt;br /&gt;
|MUSICBRAINZ_ALBUMSTATUS&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Status&lt;br /&gt;
|MusicBrainz/Album Status&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;section end=&amp;quot;TagTable&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As of {{Kodi}} V22, the most common music tags can be applied to mka files and read by {{Kodi}}.  This includes a comma separated list of &#039;&#039;&#039;instruments&#039;&#039;&#039; and &#039;&#039;&#039;involved people&#039;&#039;&#039; as documented above. The relevant PR is [[https://github.com/xbmc/xbmc/pull/26293 here]].&lt;br /&gt;
&lt;br /&gt;
==== Please Note: ====&lt;br /&gt;
[[https://picard.musicbrainz.org/ Musicbrainz Picard]] is not capable of tagging mka files.  However, [[wikipedia:mp3tag|mp3tag]] and [[wikipedia:foobar2000|foobar2000]] are both viable alternatives that are.  They both run well under wine if you might need them to. Other compatible taggers are also available.&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Top}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;{{linear-gradient|left|#f5d3ff, #12b2e7}}&amp;quot;&amp;gt;{{next|[[Adding_music_to_the_library|Scanning Music into Library]]}} &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{updated|18}}&lt;br /&gt;
[[Category:Index]]&lt;br /&gt;
[[Category:Guides]]&lt;br /&gt;
[[Category:Manual]]&lt;br /&gt;
[[Category:Karellen]]&lt;br /&gt;
[[Category:First time user]]&lt;br /&gt;
[[Category:Music library]]&lt;br /&gt;
[[Category:Advanced topics]]&lt;br /&gt;
[[Category:Quick Start Guide]]&lt;/div&gt;</summary>
		<author><name>Black eagle</name></author>
	</entry>
	<entry>
		<id>https://kodi.wiki/index.php?title=Music_tagging&amp;diff=254575</id>
		<title>Music tagging</title>
		<link rel="alternate" type="text/html" href="https://kodi.wiki/index.php?title=Music_tagging&amp;diff=254575"/>
		<updated>2025-01-26T13:18:29Z</updated>

		<summary type="html">&lt;p&gt;Black eagle: /* Tags {{kodi}} reads */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{MusicLibraryCreate}}&lt;br /&gt;
{{mininav|[[Music library]]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
This page provides the following information:&lt;br /&gt;
&lt;br /&gt;
*How the Music section differs from the Video section of {{kodi}}&lt;br /&gt;
*The recommended method to organise your music files &lt;br /&gt;
*The recommended method for tagging your music files&lt;br /&gt;
*Explanation of some commonly misunderstood Music File Tags&lt;br /&gt;
*The Audio Files and Tags that {{kodi}} reads and uses&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Understanding the Music Library =&lt;br /&gt;
&amp;lt;section begin=&amp;quot;understanding&amp;quot; /&amp;gt;There is a fundamental differences between video library operation and the music library operation: &lt;br /&gt;
*The video library is based on using the filenames or folder names to obtain online data. If they are incorrectly named, then there are no scraper results and there will be no library entry.&lt;br /&gt;
*&#039;&#039;&#039;The music library is based on scanning tags embedded in the music files.&#039;&#039;&#039; It ignores the folder names and structure and file names. Proper tagging is essential to ensure the library is populated correctly. Having slight variations in the tags for artist and album names could mean duplicated and unwanted entries.&amp;lt;section end=&amp;quot;understanding&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Folder and File Structure =&lt;br /&gt;
Although {{kodi}} ignores the folder structure and the names of the folders and files, the structure of your folders is important as it affects the operation of other functions such as Import/Export, nfo files and Artwork. For example, if you have all your music files in one folder (which is possible), then you lose the ability to use local nfo files, local artwork, and the import/export module will not function correctly.&lt;br /&gt;
&lt;br /&gt;
The following is {{kodi}} &#039;&#039;&#039;best practice&#039;&#039;&#039;. Remember use a layout that is nice for you, but &#039;&#039;&#039;tag accurately.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Files ==&lt;br /&gt;
Song files require suitable tagging for use in {{kodi}}. While {{kodi}} can scan minimal tags into the library, it can lead to errors in the library and subsequent scraping. We recommend music files are tagged with MusicBrainz as detailed below.&lt;br /&gt;
&lt;br /&gt;
Remember that {{kodi}} does not extract any information from the filename, so the filename is your choice.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Folders ==&lt;br /&gt;
{{kodi}} is quite flexible with the folder structure. The diagram below is an &#039;&#039;&#039;example&#039;&#039;&#039;. You should group your albums in a manner that makes sense to you.&lt;br /&gt;
&lt;br /&gt;
To ensure {{kodi}} and other add-on processes can function efficently and correctly, the following is recommended.&lt;br /&gt;
*Songs from the same album should be in the one folder&lt;br /&gt;
*If there is more than one disk in the release, each disk should be in a sub-folder containing the songs from that disk&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a typical folder structure:&lt;br /&gt;
&lt;br /&gt;
 f:\   ....................................(root)&lt;br /&gt;
  |__Artist Information  ..................(Artist Information Folder)&lt;br /&gt;
  |&lt;br /&gt;
  |__Artist Music   .......................(source folder)&lt;br /&gt;
  |  |__ Madonna   ........................(artist folder)&lt;br /&gt;
  |  |   |__ Beautiful Stranger (1999)   ..(album folder)&lt;br /&gt;
  |  |   |   |__ Song 1&lt;br /&gt;
  |  |   |   |__ Song 2&lt;br /&gt;
  |  |   |   |__ Song 3 etc&lt;br /&gt;
  |  |   |__ Bedtime Stories (1994)   .....(album folder)&lt;br /&gt;
  |  |   |   |__ Song 1&lt;br /&gt;
  |  |   |   |__ Song 2&lt;br /&gt;
  |  |   |   |__ Song 3 etc&lt;br /&gt;
  |  |   |__ Like A Prayer (1989)   .......(album folder)&lt;br /&gt;
  |  |   |   |__ Song 1&lt;br /&gt;
  |  |   |   |__ Song 2&lt;br /&gt;
  |  |   |   |__ Song 3 etc&lt;br /&gt;
  |  |__ Simply Red   .....................(artist folder)&lt;br /&gt;
  |      |__ Picture Book (1985)   ........(album folder)&lt;br /&gt;
  |          |__ Song 1&lt;br /&gt;
  |          |__ Song 2&lt;br /&gt;
  |          |__ Song 3 etc&lt;br /&gt;
  |&lt;br /&gt;
  |__Compilations   .......................(Source)&lt;br /&gt;
  |  |__ Essential Eighties   .............(album folder)&lt;br /&gt;
  |  |       |__ Song 1&lt;br /&gt;
  |  |       |__ Song 2&lt;br /&gt;
  |  |       |__ Song 3 etc&lt;br /&gt;
  |  |__ 100% Hits- Best of 2005   ........(album folder)&lt;br /&gt;
  |          |__ Song 1&lt;br /&gt;
  |          |__ Song 2&lt;br /&gt;
  |          |__ Song 3 etc&lt;br /&gt;
  |&lt;br /&gt;
  |__Classical   ..........................(Source)&lt;br /&gt;
  |&lt;br /&gt;
  |__Audiobooks   .........................(Source)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sources ==&lt;br /&gt;
A source is the parent folder that contains your media collection- in this case Music. This folder is then set as a Source in {{kodi}} which enables {{kodi}} to access your Music. &lt;br /&gt;
&lt;br /&gt;
In the diagram from the previous section &#039;&#039;Artist Music, Compilations, Classical&#039;&#039; and &#039;&#039;Audiobooks&#039;&#039; are Sources.&lt;br /&gt;
&lt;br /&gt;
Notes on naming and setting a &#039;&#039;&#039;Source&#039;&#039;&#039;:&lt;br /&gt;
*There is no limit on the number of Sources that can be used&lt;br /&gt;
*The Source names, which essentially is your folder name, can be anything that makes sense to you. The names should be unique, which makes it easier to navigate to the correct source in {{Kodi}}&lt;br /&gt;
*Larger libraries do benefit from multiple sources&lt;br /&gt;
*There is no requirement on how to separate music between Sources. Many users separate based on Genre, alphabetical listing, release type or any method you prefer&lt;br /&gt;
*If your music collection exists on multiple drives, then a Source folder is required for each drive&lt;br /&gt;
*&#039;&#039;&#039;Never&#039;&#039;&#039; mix media classes. ie, ensure TV Shows, Movies, Music Videos or Music are not in the same source, nor as a sub-folder of another source.&lt;br /&gt;
*&#039;&#039;&#039;Never&#039;&#039;&#039; set the entire hard drive as your Source as this will create multiple ghost entries.&lt;br /&gt;
&lt;br /&gt;
Setting and Scanning of Sources is covered in detail in the next step of the guide. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Tagging =&lt;br /&gt;
Most music files purchased or ripped by your favourite software have only minimal metadata embedded. Normally this is not a problem and works very well on simple music players.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{kodi}}, being an advanced and feature rich player, requires greater accuracy with the embedded tags. Any slight variance in, for example, the Album name between the tracks from the same album will see multiple entries in the library for that Album. It is not uncommon to have a single album split into three similarly named albums. Also true for Artists. It is for this reason that there is a separation of the Scanning and Scraping processes for Music. The initial scan allows you to find and correct errors in tagging, before scraping.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
This table has examples of errors in tagging, which will cause duplicated entries in the library...&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
!Similar Name 1 || Similar Name 2 || Note&lt;br /&gt;
|-&lt;br /&gt;
|György Ligeti || Gyorgy Ligeti || Accented and unaccented names will create duplicate entries&lt;br /&gt;
|-&lt;br /&gt;
|The Best of || The Very Best Of || Inconsistent naming between songs of the same album and/or artist will cause duplicated entries&lt;br /&gt;
|-&lt;br /&gt;
|Madonna || Madonnna || Spelling mistakes will cause duplicated entries for albums and/or artists&lt;br /&gt;
|-&lt;br /&gt;
|Sting || Sting and The Police || Seen as two separate and unrelated Artists&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
As {{kodi}} scans your music collection, it copies the data contained in those tags into the {{kodi}} music database. The benefits of this are:&lt;br /&gt;
*Once the scan is complete, the tags are not accessed again&lt;br /&gt;
*All information is now obtained from the database. This has the benefit of dramatically increasing efficency and speed when navigating the library.&lt;br /&gt;
*Now that a database entry exists, you are able to scrape additional information from online sources. This is covered later in the guide.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== MusicBrainz ==&lt;br /&gt;
&#039;&#039;&#039;{{kodi}} has strong support for MusicBrainz tagging. It is highly recommended that users tag their music files using MusicBrainz Picard.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;MusicBrainz Picard&#039;&#039;&#039; is the music file tagger software that can access the MusicBrainz database to locate metadata to embed into your music files. MBIDs are useful because names are not unique. The bigger and more diverse your music collection is, the more likely you will encounter Artists with the same name. &lt;br /&gt;
&lt;br /&gt;
The advantages of tagging with MusicBrainz are:&lt;br /&gt;
*They allow you to have different artists with the same name in your library e.g. &amp;quot;John Williams&amp;quot; the classical guitarist and &amp;quot;John Williams&amp;quot; the film music composer and conductor.&lt;br /&gt;
*They negate inconsistencies in artist naming e.g. having &amp;quot;Peter Tchaikovsky&amp;quot; on some albums and &amp;quot;Piotr Czajkowski&amp;quot; on others&lt;br /&gt;
*They allow you to have more than one release of an album in your library e.g. the normal and deluxe editions of an album&lt;br /&gt;
*They clearly identify the artist and album in ways that names alone can not. This can then be used to accurately scrape additional artist and album information and locate the correct artwork&lt;br /&gt;
*They allow the scraping process to be more efficient, otherwise an extra call is made to try and get an mbid first to use at the scraping sites, and each request from Musicbrainz must be throttled to 1 per sec which will slow the scraping process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Below is a screenshot of the main screen of the Picard software. A brief description of the layout as follows.&lt;br /&gt;
&lt;br /&gt;
*Top Left Box- Folder listing of your music collection&lt;br /&gt;
*Top Centre Box- Albums are dragged and dropped here in preparation for matching and tagging. Pressing &#039;&#039;Lookup&#039;&#039; (greyed out) will commence the lookup process&lt;br /&gt;
*Top Right Box- Matching albums are displayed here and your songs are overlayed. In the screenshot, songs 01, 08 and 09 have been matched to the suggested album. If all songs match and you agree the correct album was located, simply pressing Save will tag the album with the tags displayed in the Bottom Tag Box.&lt;br /&gt;
*Bottom Tag Box - Selecting a song from the Top Right Box will display all available tag fields (left column), the current tags in the music file (Original Value column) and the MusicBrainz tags to be embedded in the music file (right column).&lt;br /&gt;
&lt;br /&gt;
The example in the image below shows the following:&lt;br /&gt;
*Most tags are missing (original value column)&lt;br /&gt;
*The top three yellow entries are incorrect (original value column) and the corrections are in the right column&lt;br /&gt;
*The green entries in the right column indicate new tags to be embedded&lt;br /&gt;
*The black entries at the bottom of the list indicate no change to the existing tags as they are correct or not used by MusicBrainz.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;packed&amp;quot; widths=&amp;quot;1000px&amp;quot; heights=&amp;quot;563px&amp;quot;&amp;gt;&lt;br /&gt;
File:MusicBrainzPicard01.jpg&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Although Picard is very easy to use, you must avoid blindly accepting everything offered by the software. It is important that you confirm the correct album was located. Due to the global nature of the database, there are many releases for a single album. These releases differ between countries, usually due to copyright requirements. This may lead you to inadvertendly select the incorrect release for your album, even though it is named exactly the same. The differences between releases may be as simple as different song ordering or the inclusion of additional bonus tracks.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clear Existing Tags ==&lt;br /&gt;
For the best tagging experience set the correct options in Picard, particularly the &amp;quot;Clear Existing Tags&amp;quot; option in settings. This option means that any old tags that may cause issues are wiped, preserving only the musicbrainz tagging. It will also be wise to tag using ID3v2.4 compatibility.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;packed&amp;quot; widths=&amp;quot;500px&amp;quot; heights=&amp;quot;283px&amp;quot;&amp;gt;&lt;br /&gt;
File:Picard options.jpg&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== albumartists ==&lt;br /&gt;
{{Kodi}} requires the &#039;&#039;&#039;albumartists&#039;&#039;&#039; tag to correctly handle multiple album artists on the same album. This tag is not a default tag in MusicBrainz Picard and other tagging software. &amp;lt;ref&amp;gt; https://forum.kodi.tv/showthread.php?tid=334729&amp;amp;pid=2760161#pid2760161 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To include this tag add a new script under &#039;&#039;Options &amp;gt; Options &amp;gt; Scripting &amp;gt; Add new script&#039;&#039; and include the following code...&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
$setmulti(albumartists,%_albumartists%)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;packed&amp;quot; widths=&amp;quot;500px&amp;quot; heights=&amp;quot;283px&amp;quot;&amp;gt;&lt;br /&gt;
File:Picard Script.JPG&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the music files are tagged, avoid modifying the MusicBrainz tags unless you clearly understand the relationship of the MBID&#039;s and the other related tags. For example, embedding MBID tags, but then editing the Artist tag or Album Artist tag will result in incorrect entries in the library.&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
*If you need to change the artist or album artist tag you also have to edit the matching artist mbid tag and album artist mbid tag. &lt;br /&gt;
*If Kodi finds a release mbid it will expect the artist mbid tags to also be present.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;&#039;&#039;See: [https://musicbrainz.org/ MusicBrainz Website]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
:&#039;&#039;&#039;&#039;&#039;See: [https://picard.musicbrainz.org/ MusicBrainz Picard Software]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;center&amp;gt;{{red|&#039;&#039;&#039;The remainder of this page deals with special use cases or provides information for technical interest and reference only. It can be safely disregarded if these do not apply to you&#039;&#039;&#039;}}&amp;lt;/center&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;{{linear-gradient|left|#f5d3ff, #12b2e7}}&amp;quot;&amp;gt;{{next|[[Adding_music_to_the_library|Scanning Music into Library]]}} &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Ripping CD&#039;s =&lt;br /&gt;
{{main|Ripping CDs}}&lt;br /&gt;
{{#lst:Ripping CDs|intro}}&lt;br /&gt;
&lt;br /&gt;
There is no requirement to use the {{Kodi}} CD Ripper. If you are comfortable using other ripping software, then we recommend you continue using that software.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Cue Sheets =&lt;br /&gt;
{{#lst:Cue_sheets|intro}}&lt;br /&gt;
&lt;br /&gt;
{{kodi}} does provide basic support for using cue sheets to define individual tracks when an entire CD has been ripped into a single music file. However the information provided by  the cue sheet standard is much more limited than that of standard tagging, hence to enjoy the full music library features it is recommended that tracks are ripped into separate files and fully tagged.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{red|If you do not use Cue Sheets you can safely move onto the next step.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
;{{see also|Cue_sheets}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Streams =&lt;br /&gt;
{{#lst:Internet_video_and_audio_streams|intro}}&lt;br /&gt;
&lt;br /&gt;
;{{see also|Internet_video_and_audio_streams}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Technical Explanation: File tags =&lt;br /&gt;
For many categories, such as genres and artists, {{kodi}} supports multiple values in the one field.  By default it uses the character sequence &amp;quot; / &amp;quot; to divide the entry into multiple values.  This divider may be changed via [[advancedsettings.xml]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Resolving Compilations and Multiple Artists ==&lt;br /&gt;
{{red|Applies to v17 and below. v18 introduced the [[Artist information folder]] which solved these problems. You are encouraged to update to v18}}&lt;br /&gt;
&lt;br /&gt;
{{kodi}} reads the &#039;&#039;Album Artist&#039;&#039; tag in ID3, Ogg, APE and MP4 tags and uses it if available to assign an artist to the album (independently of the track&#039;s artist information).  This is the &amp;quot;Album Artist&amp;quot; tag (in ID3 this is represented by the &amp;quot;TPE2&amp;quot; tag; in vorbiscomment (ogg) files &amp;quot;ALBUMARTIST&amp;quot;, &amp;quot;ALBUM ARTIST&amp;quot; and &amp;quot;ENSEMBLE&amp;quot; are all supported).  Multiple artists for either a track or album artist can be specified in &amp;quot;Artist1 / Artist2 / Artist3&amp;quot; format.&lt;br /&gt;
&lt;br /&gt;
If no &#039;&#039;Album Artist&#039;&#039; tag exists, {{kodi}} will use the first (primary) artist from the tracks as the &#039;&#039;Album Artist&#039;&#039;.  Essentially we do a string comparison of all the track artists, and assign the common artists as the &#039;&#039;Album artist&#039;&#039;. This is generally the TPE1 tag in ID3.&lt;br /&gt;
&lt;br /&gt;
As many users don&#039;t yet use the &#039;&#039;Album Artist&#039;&#039; tag, {{kodi}} has an additional filter system for identifying compilation albums, where each track normally has a different artist.  As {{kodi}} scans a folder, it does the following:&lt;br /&gt;
# Identifies albums based on &#039;&#039;Album&#039;&#039; name alone in the folder and groups the songs that have the same &#039;&#039;Album&#039;&#039; name together as an album.&lt;br /&gt;
# Runs through each album&#039;s assigned songs.  If there is 2 or more tracks with the same &#039;&#039;Track&#039;&#039; number, the group of songs must come from 2 or more albums, so the &#039;&#039;Album&#039;&#039; name is ruled out as a possible compilation.&lt;br /&gt;
# If any of the songs assigned to the &#039;&#039;Album&#039;&#039; name have an &#039;&#039;Album Artist&#039;&#039; tag, then {{kodi}} assumes the user knows what they&#039;re doing, and this album is also ruled out from being a compilation.&lt;br /&gt;
# If two or more songs assigned to the &#039;&#039;Album&#039;&#039; name then have different primary artists, then the &#039;&#039;Album&#039;&#039; name is considered to be a group of songs from a compilation, and the &#039;&#039;Various Artists&#039;&#039;&amp;quot; tag is assigned as the album artist.&lt;br /&gt;
# Otherwise, if all the songs have the same primary artist but don&#039;t have the same full artist list (eg a song or two has an additional artist) then the album is assigned the primary artist as it&#039;s &#039;&#039;Album Artist&#039;&#039;, and we assume the additional artists are guest artists.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ratings in ID3 tags ==&lt;br /&gt;
Ratings in ID3 tags are read via the POPM field, and (if this doesn&#039;t exist) in a custom (TXXX) field named &amp;quot;RATING&amp;quot;.  For the RATING field, we accept 1-5 as valid ratings.  For the POPM field things are more complicated, as there is no established standard in place.  We currently most closely respect what Mediamonkey does, and also have some support for what Windows Media Player 11 does.  The POPM tag takes a value from 0..255, with 0 meaning no rating, 1 the worst, and 255 the best.  We currently map these as follows:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
!&#039;&#039;&#039;POPM value&#039;&#039;&#039; || &#039;&#039;&#039;Star rating&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|0 ||&lt;br /&gt;
|- &lt;br /&gt;
|1 || &#039;&#039;&#039;*&#039;&#039;&#039; This is a special case for Windows Media Player&lt;br /&gt;
|- &lt;br /&gt;
| 2-8 || &lt;br /&gt;
|- &lt;br /&gt;
|9-49 || &#039;&#039;&#039;*&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|50-113 ||&#039;&#039;&#039;**&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|114-167 || &#039;&#039;&#039;***&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|168-218 || &#039;&#039;&#039;****&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|219-255 ||&#039;&#039;&#039;*****&#039;&#039;&#039;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Audio Formats &amp;amp; Tags =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Supported Audio Formats ==&lt;br /&gt;
Although the list of playable formats is quite comprehensive, it is not accurate to say that every {{kodi}} installation will play every format. The ability to play some of the more obscure formats will depend upon the version of {{kodi}} and the operating system in use. Some formats will require the installation of add-ons.&lt;br /&gt;
&lt;br /&gt;
{{#lst:Advancedsettings.xml|musicextensions}}&lt;br /&gt;
&lt;br /&gt;
;{{See also|Advancedsettings.xml}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Supported Metadata Containers ==&lt;br /&gt;
The following metadata containers are supported by {{kodi}}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Metadata Container || Note&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:APEv2 tag|APEv2 tag]] ||&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:Advanced_Systems_Format|ASF]] ||&lt;br /&gt;
|-&lt;br /&gt;
|Generic Tag || A generic tag for basic data from other odd file types&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:ID3|ID3]] || v1, v2.3 and v2.4&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:MPEG-4 Part 14#Metadata|MP4]] ||&lt;br /&gt;
|-&lt;br /&gt;
|[https://xiph.org/ Xiph.org] || Vorbis Comments ||&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:matroska|mka]] || See below for tag spec&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Common File &amp;amp; Tag Combination ==&lt;br /&gt;
You will notice that not all the tags listed in the section &#039;&#039;Supported Audio Formats&#039;&#039; above are listed in the following table. Those formats that are omitted do not have provision to support embedded tags. If your collection contains any of these unsupported formats, you will be unable to scan the music into the library. Your options are:&lt;br /&gt;
#Convert your audio file to a supported format and tag using MusicBrainz Picard. (recommended)&lt;br /&gt;
#Access your music via the File Manager or via File View&lt;br /&gt;
&lt;br /&gt;
{{kodi}} supports the following common Audio File and Tag Formats &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!| Metadata container&lt;br /&gt;
!| Additional Filename extensions&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:APEv2 tag|APEv2 tag]] || ape, mp3, aac, wv, mpc&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:Advanced_Systems_Format|ASF]] || asf, wmv, wma&lt;br /&gt;
|-&lt;br /&gt;
| Generic Tag || it, mod, module, nst, wow, s3m, xm&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:ID3|ID3 v1]] || mp3, aac&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:ID3|ID3 v2]] || mp3, aac, tta, aif, aiff, wav, flac&lt;br /&gt;
|-&lt;br /&gt;
| iTunes [[wikipedia:MPEG-4 Part 14#Metadata|MP4]] || .3g2 .m4a .m4b .m4p .m4r .m4v .mp4&lt;br /&gt;
|-&lt;br /&gt;
|[https://xiph.org/ Xiph.org] || flac, oga, ogg, opus&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:matroska|matroska]] || mka&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Note:&lt;br /&gt;
*FLAC files- xiph tags override id3v2 tags &lt;br /&gt;
*mp3 files can have either id3 or APE tags&lt;br /&gt;
*dsf, dff - ID3v2 format read but are handled by ffmpeg tag reader and it does not support all tags from IDE standard&lt;br /&gt;
*mka - standard matroska tags however, due to an issue with ffmpeg, multiple repeat tags for eg producer are not read.  Because of this, you can tag with a comma separated list of &#039;&#039;involved people&#039;&#039;.&lt;br /&gt;
This is the same format as ID3v2.4 TIPL tag where every odd value is a function (producer, engineer etc) and every even value is an artist.  You can also tag with a key of &#039;&#039;instruments&#039;&#039; which follows the same convention so &amp;quot;instrument, person, instrument, person&amp;quot; etc&lt;br /&gt;
&lt;br /&gt;
== Tags {{kodi}} reads ==&lt;br /&gt;
{{kodi}} will scan the following tags embedded in the music file. The column &#039;&#039;{{kodi}} Version&#039;&#039; indicates the version of {{kodi}} that the tag was introduced, and will work in subsequent versions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=&amp;quot;TagTable&amp;quot; /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align:left;&amp;quot;| {{kodi}} Version&lt;br /&gt;
! Vorbis (.Flac)&lt;br /&gt;
! ID3v2 (.mp3)&lt;br /&gt;
! APE&lt;br /&gt;
! MP4&lt;br /&gt;
! ASF&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ARTIST&lt;br /&gt;
|TPE1&lt;br /&gt;
|ARTIST&lt;br /&gt;
|\251ART&lt;br /&gt;
|Author&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ARTISTS&lt;br /&gt;
|ARTISTS&lt;br /&gt;
|ARTISTS&lt;br /&gt;
| ----:com.apple.iTunes:ARTISTS&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ALBUMARTIST  or ALBUM ARTIST&lt;br /&gt;
|TPE2 OR ALBUMARTIST or ALBUM ARTIST&lt;br /&gt;
|ALBUMARTIST  or ALBUM ARTIST&lt;br /&gt;
|aART&lt;br /&gt;
|WM/AlbumArtist&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ALBUMARTISTS or ALBUM ARTISTS&lt;br /&gt;
|ALBUMARTISTS or ALBUM ARTISTS&lt;br /&gt;
|ALBUMARTISTS or ALBUM ARTISTS&lt;br /&gt;
| ----:com.apple.iTunes:ALBUMARTISTS&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ALBUM&lt;br /&gt;
|TALB&lt;br /&gt;
|ALBUM&lt;br /&gt;
|\251alb&lt;br /&gt;
|WM/AlbumTitle&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|TITLE&lt;br /&gt;
|TIT2&lt;br /&gt;
|TITLE&lt;br /&gt;
|\251nam&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|TRACKNUMBER&lt;br /&gt;
|TRCK&lt;br /&gt;
|TRACKNUMBER or TRACK&lt;br /&gt;
|trkn&lt;br /&gt;
|WM/TrackNumber or WM/Track&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|DISCNUMBER&lt;br /&gt;
|TPOS&lt;br /&gt;
|DISCNUMBER or DISC&lt;br /&gt;
|disk&lt;br /&gt;
|WM/PartOfSet&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|YEAR&lt;br /&gt;
|TYER&lt;br /&gt;
|YEAR&lt;br /&gt;
|\251day&lt;br /&gt;
|WM/Year&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|DATE&lt;br /&gt;
|TDRC, TDRL&lt;br /&gt;
|DATE&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|GENRE&lt;br /&gt;
|TCON&lt;br /&gt;
|GENRE&lt;br /&gt;
|\251gen&lt;br /&gt;
|WM/Genre&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MOOD&lt;br /&gt;
|TMOO OR TXXX:MOOD&lt;br /&gt;
|MOOD&lt;br /&gt;
| ----:com.apple.iTunes:MOOD&lt;br /&gt;
|WM/Mood&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|COMMENT&lt;br /&gt;
|COMM&lt;br /&gt;
|COMMENT&lt;br /&gt;
|\251cmt&lt;br /&gt;
|(COMMENT)&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|CUESHEET&lt;br /&gt;
|&lt;br /&gt;
|CUESHEET&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|COMPILATION&lt;br /&gt;
|TCMP&lt;br /&gt;
|COMPILATION&lt;br /&gt;
|cpil&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|LYRICS&lt;br /&gt;
|USLT&lt;br /&gt;
|LYRICS&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_TRACK_GAIN&lt;br /&gt;
|REPLAYGAIN_TRACK_GAIN&lt;br /&gt;
|REPLAYGAIN_TRACK_GAIN&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_track_gain&lt;br /&gt;
|replaygain_track_gain&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_ALBUM_GAIN&lt;br /&gt;
|REPLAYGAIN_ALBUM_GAIN&lt;br /&gt;
|REPLAYGAIN_ALBUM_GAIN&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_album_gain&lt;br /&gt;
|replaygain_album_gain&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_TRACK_PEAK&lt;br /&gt;
|REPLAYGAIN_TRACK_PEAK&lt;br /&gt;
|REPLAYGAIN_TRACK_PEAK&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_track_peak&lt;br /&gt;
|replaygain_track_peak&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_album_peak&lt;br /&gt;
|replaygain_album_peak&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_album_peak&lt;br /&gt;
|replaygain_album_peak&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ARTISTID&lt;br /&gt;
|MUSICBRAINZ ARTIST ID&lt;br /&gt;
|MUSICBRAINZ_ARTISTID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Artist Id&lt;br /&gt;
|MusicBrainz/Artist Id&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTISTID&lt;br /&gt;
|MUSICBRAINZ ALBUM ARTIST ID&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTISTID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Artist Id&lt;br /&gt;
|MusicBrainz/Album Artist Id&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTIST&lt;br /&gt;
|MUSICBRAINZ ALBUM ARTIST&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTIST&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Artist&lt;br /&gt;
|MusicBrainz/Album Artist&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ALBUMID&lt;br /&gt;
|MUSICBRAINZ ALBUM ID&lt;br /&gt;
|MUSICBRAINZ_ALBUMID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Id&lt;br /&gt;
|MusicBrainz/Album Id&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_TRACKID&lt;br /&gt;
|UFID&lt;br /&gt;
|MUSICBRAINZ_TRACKID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Track Id&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|RATING&lt;br /&gt;
|POPM&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|METADATA_BLOCK_PICTURE or COVERART or COVERARTMIME&lt;br /&gt;
|APIC&lt;br /&gt;
|&lt;br /&gt;
|covr&lt;br /&gt;
|WM/Picture&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|COMPOSER&lt;br /&gt;
|TCOM&lt;br /&gt;
|COMPOSER&lt;br /&gt;
|\251wrt&lt;br /&gt;
|WM/Composer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|CONDUCTOR&lt;br /&gt;
|TPE3&lt;br /&gt;
|CONDUCTOR&lt;br /&gt;
| ----:com.apple.iTunes:CONDUCTOR&lt;br /&gt;
|WM/Conductor&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|LYRICIST&lt;br /&gt;
|TEXT&lt;br /&gt;
|LYRICIST&lt;br /&gt;
| ----:com.apple.iTunes:LYRICIST&lt;br /&gt;
|WM/Writer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|REMIXER or MIXARTIST&lt;br /&gt;
|TPE4&lt;br /&gt;
|REMIXER or MIXARTIST&lt;br /&gt;
| ----:com.apple.iTunes:REMIXER&lt;br /&gt;
|WM/ModifiedBy&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|ENSEMBLE&lt;br /&gt;
|(TIPL) or TXXX:Ensemble&lt;br /&gt;
|ENSEMBLE&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|ARRANGER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|ARRANGER&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|ENGINEER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|ENGINEER&lt;br /&gt;
| ----:com.apple.iTunes:ENGINEER&lt;br /&gt;
|WM/Engineer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|PRODUCER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|PRODUCER&lt;br /&gt;
| ----:com.apple.iTunes:PRODUCER&lt;br /&gt;
|WM/Producer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|DJMIXER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|DJMIXER&lt;br /&gt;
| ----:com.apple.iTunes:DJMIXER&lt;br /&gt;
|WM/DJMixer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|MIXER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|MIXER&lt;br /&gt;
| ----:com.apple.iTunes:MIXER&lt;br /&gt;
|WM/Mixer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|PERFORMER&lt;br /&gt;
|TMCL&lt;br /&gt;
|PERFORMER&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|LABEL&lt;br /&gt;
|TPUB&lt;br /&gt;
|LABEL&lt;br /&gt;
| ----:com.apple.iTunes:LABEL&lt;br /&gt;
|WM/Publisher&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|RELEASETYPE&lt;br /&gt;
|MUSICBRAINZ ALBUM TYPE&lt;br /&gt;
|MUSICBRAINZ_ALBUMTYPE&lt;br /&gt;
| ---:com.apple.iTunes:MusicBrainz Album Type&lt;br /&gt;
|MusicBrainz/Album Type&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|MUSICBRAINZ_RELEASEGROUPID&lt;br /&gt;
|MUSICBRAINZ RELEASE GROUP ID&lt;br /&gt;
|MUSICBRAINZ_RELEASEGROUPID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Release Group Id&lt;br /&gt;
|MusicBrainz/Release Group Id&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|ARTISTSORT&lt;br /&gt;
|TSOP&lt;br /&gt;
|ARTISTSORT&lt;br /&gt;
| &lt;br /&gt;
|WM/ArtistSortOrder&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|ALBUMARTISTSORT&lt;br /&gt;
|TS02&lt;br /&gt;
|ALBUMARTISTSORT&lt;br /&gt;
|soaa&lt;br /&gt;
|WM/AlbumArtistSortOrder&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|COMPOSERSORT&lt;br /&gt;
|TSOC&lt;br /&gt;
|COMPOSERSORT&lt;br /&gt;
|soco&lt;br /&gt;
|WM/ComposerSortOrder&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|WRITER&lt;br /&gt;
|WRITER&lt;br /&gt;
|WRITER&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|DISCSUBTITLE&lt;br /&gt;
|TSST&lt;br /&gt;
|DiscSubtitle&lt;br /&gt;
| ----:com.apple.iTunes:DISCSUBTITLE&lt;br /&gt;
|WM/SetSubTitle&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|BPM&lt;br /&gt;
|TBPM&lt;br /&gt;
|BPM&lt;br /&gt;
|tmpo&lt;br /&gt;
|WM/BeatsPerMinute&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|ORIGINALDATE or ORIGINALYEAR&lt;br /&gt;
|TDOR or TORY&lt;br /&gt;
|ORIGINALYEAR&lt;br /&gt;
| ----:com.apple.iTunes:originaldate&lt;br /&gt;
|WM/OriginalReleaseYear&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|RELEASESTATUS&lt;br /&gt;
|TXXX:MusicBrainz Album Status&lt;br /&gt;
|MUSICBRAINZ_ALBUMSTATUS&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Status&lt;br /&gt;
|MusicBrainz/Album Status&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;section end=&amp;quot;TagTable&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As of {{Kodi}} V22, the most common music tags can be applied to mka files and read by {{Kodi}}.  This includes a comma separated list of &#039;&#039;&#039;instruments&#039;&#039;&#039; and &#039;&#039;&#039;involved people&#039;&#039;&#039; as documented above. The relevant PR is [[https://github.com/xbmc/xbmc/pull/26293 here]].&lt;br /&gt;
&lt;br /&gt;
==== Please Note: ====&lt;br /&gt;
[[https://picard.musicbrainz.org/ Musicbrainz Picard]] is not capable of tagging mka files.  However, [[wikipedia:mp3tag|mp3tag]] and [[wikipedia:foobar2000|foobar2000]] are both viable alternatives that are.  They both run well under wine if you might need them to. Other compatible taggers are also available.&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Top}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;{{linear-gradient|left|#f5d3ff, #12b2e7}}&amp;quot;&amp;gt;{{next|[[Adding_music_to_the_library|Scanning Music into Library]]}} &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{updated|18}}&lt;br /&gt;
[[Category:Index]]&lt;br /&gt;
[[Category:Guides]]&lt;br /&gt;
[[Category:Manual]]&lt;br /&gt;
[[Category:Karellen]]&lt;br /&gt;
[[Category:First time user]]&lt;br /&gt;
[[Category:Music library]]&lt;br /&gt;
[[Category:Advanced topics]]&lt;br /&gt;
[[Category:Quick Start Guide]]&lt;/div&gt;</summary>
		<author><name>Black eagle</name></author>
	</entry>
	<entry>
		<id>https://kodi.wiki/index.php?title=Music_tagging&amp;diff=254574</id>
		<title>Music tagging</title>
		<link rel="alternate" type="text/html" href="https://kodi.wiki/index.php?title=Music_tagging&amp;diff=254574"/>
		<updated>2025-01-26T13:12:06Z</updated>

		<summary type="html">&lt;p&gt;Black eagle: /* Tags {{kodi}} reads */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{MusicLibraryCreate}}&lt;br /&gt;
{{mininav|[[Music library]]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
This page provides the following information:&lt;br /&gt;
&lt;br /&gt;
*How the Music section differs from the Video section of {{kodi}}&lt;br /&gt;
*The recommended method to organise your music files &lt;br /&gt;
*The recommended method for tagging your music files&lt;br /&gt;
*Explanation of some commonly misunderstood Music File Tags&lt;br /&gt;
*The Audio Files and Tags that {{kodi}} reads and uses&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Understanding the Music Library =&lt;br /&gt;
&amp;lt;section begin=&amp;quot;understanding&amp;quot; /&amp;gt;There is a fundamental differences between video library operation and the music library operation: &lt;br /&gt;
*The video library is based on using the filenames or folder names to obtain online data. If they are incorrectly named, then there are no scraper results and there will be no library entry.&lt;br /&gt;
*&#039;&#039;&#039;The music library is based on scanning tags embedded in the music files.&#039;&#039;&#039; It ignores the folder names and structure and file names. Proper tagging is essential to ensure the library is populated correctly. Having slight variations in the tags for artist and album names could mean duplicated and unwanted entries.&amp;lt;section end=&amp;quot;understanding&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Folder and File Structure =&lt;br /&gt;
Although {{kodi}} ignores the folder structure and the names of the folders and files, the structure of your folders is important as it affects the operation of other functions such as Import/Export, nfo files and Artwork. For example, if you have all your music files in one folder (which is possible), then you lose the ability to use local nfo files, local artwork, and the import/export module will not function correctly.&lt;br /&gt;
&lt;br /&gt;
The following is {{kodi}} &#039;&#039;&#039;best practice&#039;&#039;&#039;. Remember use a layout that is nice for you, but &#039;&#039;&#039;tag accurately.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Files ==&lt;br /&gt;
Song files require suitable tagging for use in {{kodi}}. While {{kodi}} can scan minimal tags into the library, it can lead to errors in the library and subsequent scraping. We recommend music files are tagged with MusicBrainz as detailed below.&lt;br /&gt;
&lt;br /&gt;
Remember that {{kodi}} does not extract any information from the filename, so the filename is your choice.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Folders ==&lt;br /&gt;
{{kodi}} is quite flexible with the folder structure. The diagram below is an &#039;&#039;&#039;example&#039;&#039;&#039;. You should group your albums in a manner that makes sense to you.&lt;br /&gt;
&lt;br /&gt;
To ensure {{kodi}} and other add-on processes can function efficently and correctly, the following is recommended.&lt;br /&gt;
*Songs from the same album should be in the one folder&lt;br /&gt;
*If there is more than one disk in the release, each disk should be in a sub-folder containing the songs from that disk&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a typical folder structure:&lt;br /&gt;
&lt;br /&gt;
 f:\   ....................................(root)&lt;br /&gt;
  |__Artist Information  ..................(Artist Information Folder)&lt;br /&gt;
  |&lt;br /&gt;
  |__Artist Music   .......................(source folder)&lt;br /&gt;
  |  |__ Madonna   ........................(artist folder)&lt;br /&gt;
  |  |   |__ Beautiful Stranger (1999)   ..(album folder)&lt;br /&gt;
  |  |   |   |__ Song 1&lt;br /&gt;
  |  |   |   |__ Song 2&lt;br /&gt;
  |  |   |   |__ Song 3 etc&lt;br /&gt;
  |  |   |__ Bedtime Stories (1994)   .....(album folder)&lt;br /&gt;
  |  |   |   |__ Song 1&lt;br /&gt;
  |  |   |   |__ Song 2&lt;br /&gt;
  |  |   |   |__ Song 3 etc&lt;br /&gt;
  |  |   |__ Like A Prayer (1989)   .......(album folder)&lt;br /&gt;
  |  |   |   |__ Song 1&lt;br /&gt;
  |  |   |   |__ Song 2&lt;br /&gt;
  |  |   |   |__ Song 3 etc&lt;br /&gt;
  |  |__ Simply Red   .....................(artist folder)&lt;br /&gt;
  |      |__ Picture Book (1985)   ........(album folder)&lt;br /&gt;
  |          |__ Song 1&lt;br /&gt;
  |          |__ Song 2&lt;br /&gt;
  |          |__ Song 3 etc&lt;br /&gt;
  |&lt;br /&gt;
  |__Compilations   .......................(Source)&lt;br /&gt;
  |  |__ Essential Eighties   .............(album folder)&lt;br /&gt;
  |  |       |__ Song 1&lt;br /&gt;
  |  |       |__ Song 2&lt;br /&gt;
  |  |       |__ Song 3 etc&lt;br /&gt;
  |  |__ 100% Hits- Best of 2005   ........(album folder)&lt;br /&gt;
  |          |__ Song 1&lt;br /&gt;
  |          |__ Song 2&lt;br /&gt;
  |          |__ Song 3 etc&lt;br /&gt;
  |&lt;br /&gt;
  |__Classical   ..........................(Source)&lt;br /&gt;
  |&lt;br /&gt;
  |__Audiobooks   .........................(Source)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sources ==&lt;br /&gt;
A source is the parent folder that contains your media collection- in this case Music. This folder is then set as a Source in {{kodi}} which enables {{kodi}} to access your Music. &lt;br /&gt;
&lt;br /&gt;
In the diagram from the previous section &#039;&#039;Artist Music, Compilations, Classical&#039;&#039; and &#039;&#039;Audiobooks&#039;&#039; are Sources.&lt;br /&gt;
&lt;br /&gt;
Notes on naming and setting a &#039;&#039;&#039;Source&#039;&#039;&#039;:&lt;br /&gt;
*There is no limit on the number of Sources that can be used&lt;br /&gt;
*The Source names, which essentially is your folder name, can be anything that makes sense to you. The names should be unique, which makes it easier to navigate to the correct source in {{Kodi}}&lt;br /&gt;
*Larger libraries do benefit from multiple sources&lt;br /&gt;
*There is no requirement on how to separate music between Sources. Many users separate based on Genre, alphabetical listing, release type or any method you prefer&lt;br /&gt;
*If your music collection exists on multiple drives, then a Source folder is required for each drive&lt;br /&gt;
*&#039;&#039;&#039;Never&#039;&#039;&#039; mix media classes. ie, ensure TV Shows, Movies, Music Videos or Music are not in the same source, nor as a sub-folder of another source.&lt;br /&gt;
*&#039;&#039;&#039;Never&#039;&#039;&#039; set the entire hard drive as your Source as this will create multiple ghost entries.&lt;br /&gt;
&lt;br /&gt;
Setting and Scanning of Sources is covered in detail in the next step of the guide. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Tagging =&lt;br /&gt;
Most music files purchased or ripped by your favourite software have only minimal metadata embedded. Normally this is not a problem and works very well on simple music players.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{kodi}}, being an advanced and feature rich player, requires greater accuracy with the embedded tags. Any slight variance in, for example, the Album name between the tracks from the same album will see multiple entries in the library for that Album. It is not uncommon to have a single album split into three similarly named albums. Also true for Artists. It is for this reason that there is a separation of the Scanning and Scraping processes for Music. The initial scan allows you to find and correct errors in tagging, before scraping.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
This table has examples of errors in tagging, which will cause duplicated entries in the library...&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
!Similar Name 1 || Similar Name 2 || Note&lt;br /&gt;
|-&lt;br /&gt;
|György Ligeti || Gyorgy Ligeti || Accented and unaccented names will create duplicate entries&lt;br /&gt;
|-&lt;br /&gt;
|The Best of || The Very Best Of || Inconsistent naming between songs of the same album and/or artist will cause duplicated entries&lt;br /&gt;
|-&lt;br /&gt;
|Madonna || Madonnna || Spelling mistakes will cause duplicated entries for albums and/or artists&lt;br /&gt;
|-&lt;br /&gt;
|Sting || Sting and The Police || Seen as two separate and unrelated Artists&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
As {{kodi}} scans your music collection, it copies the data contained in those tags into the {{kodi}} music database. The benefits of this are:&lt;br /&gt;
*Once the scan is complete, the tags are not accessed again&lt;br /&gt;
*All information is now obtained from the database. This has the benefit of dramatically increasing efficency and speed when navigating the library.&lt;br /&gt;
*Now that a database entry exists, you are able to scrape additional information from online sources. This is covered later in the guide.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== MusicBrainz ==&lt;br /&gt;
&#039;&#039;&#039;{{kodi}} has strong support for MusicBrainz tagging. It is highly recommended that users tag their music files using MusicBrainz Picard.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;MusicBrainz Picard&#039;&#039;&#039; is the music file tagger software that can access the MusicBrainz database to locate metadata to embed into your music files. MBIDs are useful because names are not unique. The bigger and more diverse your music collection is, the more likely you will encounter Artists with the same name. &lt;br /&gt;
&lt;br /&gt;
The advantages of tagging with MusicBrainz are:&lt;br /&gt;
*They allow you to have different artists with the same name in your library e.g. &amp;quot;John Williams&amp;quot; the classical guitarist and &amp;quot;John Williams&amp;quot; the film music composer and conductor.&lt;br /&gt;
*They negate inconsistencies in artist naming e.g. having &amp;quot;Peter Tchaikovsky&amp;quot; on some albums and &amp;quot;Piotr Czajkowski&amp;quot; on others&lt;br /&gt;
*They allow you to have more than one release of an album in your library e.g. the normal and deluxe editions of an album&lt;br /&gt;
*They clearly identify the artist and album in ways that names alone can not. This can then be used to accurately scrape additional artist and album information and locate the correct artwork&lt;br /&gt;
*They allow the scraping process to be more efficient, otherwise an extra call is made to try and get an mbid first to use at the scraping sites, and each request from Musicbrainz must be throttled to 1 per sec which will slow the scraping process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Below is a screenshot of the main screen of the Picard software. A brief description of the layout as follows.&lt;br /&gt;
&lt;br /&gt;
*Top Left Box- Folder listing of your music collection&lt;br /&gt;
*Top Centre Box- Albums are dragged and dropped here in preparation for matching and tagging. Pressing &#039;&#039;Lookup&#039;&#039; (greyed out) will commence the lookup process&lt;br /&gt;
*Top Right Box- Matching albums are displayed here and your songs are overlayed. In the screenshot, songs 01, 08 and 09 have been matched to the suggested album. If all songs match and you agree the correct album was located, simply pressing Save will tag the album with the tags displayed in the Bottom Tag Box.&lt;br /&gt;
*Bottom Tag Box - Selecting a song from the Top Right Box will display all available tag fields (left column), the current tags in the music file (Original Value column) and the MusicBrainz tags to be embedded in the music file (right column).&lt;br /&gt;
&lt;br /&gt;
The example in the image below shows the following:&lt;br /&gt;
*Most tags are missing (original value column)&lt;br /&gt;
*The top three yellow entries are incorrect (original value column) and the corrections are in the right column&lt;br /&gt;
*The green entries in the right column indicate new tags to be embedded&lt;br /&gt;
*The black entries at the bottom of the list indicate no change to the existing tags as they are correct or not used by MusicBrainz.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;packed&amp;quot; widths=&amp;quot;1000px&amp;quot; heights=&amp;quot;563px&amp;quot;&amp;gt;&lt;br /&gt;
File:MusicBrainzPicard01.jpg&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Although Picard is very easy to use, you must avoid blindly accepting everything offered by the software. It is important that you confirm the correct album was located. Due to the global nature of the database, there are many releases for a single album. These releases differ between countries, usually due to copyright requirements. This may lead you to inadvertendly select the incorrect release for your album, even though it is named exactly the same. The differences between releases may be as simple as different song ordering or the inclusion of additional bonus tracks.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clear Existing Tags ==&lt;br /&gt;
For the best tagging experience set the correct options in Picard, particularly the &amp;quot;Clear Existing Tags&amp;quot; option in settings. This option means that any old tags that may cause issues are wiped, preserving only the musicbrainz tagging. It will also be wise to tag using ID3v2.4 compatibility.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;packed&amp;quot; widths=&amp;quot;500px&amp;quot; heights=&amp;quot;283px&amp;quot;&amp;gt;&lt;br /&gt;
File:Picard options.jpg&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== albumartists ==&lt;br /&gt;
{{Kodi}} requires the &#039;&#039;&#039;albumartists&#039;&#039;&#039; tag to correctly handle multiple album artists on the same album. This tag is not a default tag in MusicBrainz Picard and other tagging software. &amp;lt;ref&amp;gt; https://forum.kodi.tv/showthread.php?tid=334729&amp;amp;pid=2760161#pid2760161 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To include this tag add a new script under &#039;&#039;Options &amp;gt; Options &amp;gt; Scripting &amp;gt; Add new script&#039;&#039; and include the following code...&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
$setmulti(albumartists,%_albumartists%)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;packed&amp;quot; widths=&amp;quot;500px&amp;quot; heights=&amp;quot;283px&amp;quot;&amp;gt;&lt;br /&gt;
File:Picard Script.JPG&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the music files are tagged, avoid modifying the MusicBrainz tags unless you clearly understand the relationship of the MBID&#039;s and the other related tags. For example, embedding MBID tags, but then editing the Artist tag or Album Artist tag will result in incorrect entries in the library.&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
*If you need to change the artist or album artist tag you also have to edit the matching artist mbid tag and album artist mbid tag. &lt;br /&gt;
*If Kodi finds a release mbid it will expect the artist mbid tags to also be present.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;&#039;&#039;See: [https://musicbrainz.org/ MusicBrainz Website]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
:&#039;&#039;&#039;&#039;&#039;See: [https://picard.musicbrainz.org/ MusicBrainz Picard Software]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;center&amp;gt;{{red|&#039;&#039;&#039;The remainder of this page deals with special use cases or provides information for technical interest and reference only. It can be safely disregarded if these do not apply to you&#039;&#039;&#039;}}&amp;lt;/center&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;{{linear-gradient|left|#f5d3ff, #12b2e7}}&amp;quot;&amp;gt;{{next|[[Adding_music_to_the_library|Scanning Music into Library]]}} &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Ripping CD&#039;s =&lt;br /&gt;
{{main|Ripping CDs}}&lt;br /&gt;
{{#lst:Ripping CDs|intro}}&lt;br /&gt;
&lt;br /&gt;
There is no requirement to use the {{Kodi}} CD Ripper. If you are comfortable using other ripping software, then we recommend you continue using that software.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Cue Sheets =&lt;br /&gt;
{{#lst:Cue_sheets|intro}}&lt;br /&gt;
&lt;br /&gt;
{{kodi}} does provide basic support for using cue sheets to define individual tracks when an entire CD has been ripped into a single music file. However the information provided by  the cue sheet standard is much more limited than that of standard tagging, hence to enjoy the full music library features it is recommended that tracks are ripped into separate files and fully tagged.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{red|If you do not use Cue Sheets you can safely move onto the next step.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
;{{see also|Cue_sheets}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Streams =&lt;br /&gt;
{{#lst:Internet_video_and_audio_streams|intro}}&lt;br /&gt;
&lt;br /&gt;
;{{see also|Internet_video_and_audio_streams}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Technical Explanation: File tags =&lt;br /&gt;
For many categories, such as genres and artists, {{kodi}} supports multiple values in the one field.  By default it uses the character sequence &amp;quot; / &amp;quot; to divide the entry into multiple values.  This divider may be changed via [[advancedsettings.xml]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Resolving Compilations and Multiple Artists ==&lt;br /&gt;
{{red|Applies to v17 and below. v18 introduced the [[Artist information folder]] which solved these problems. You are encouraged to update to v18}}&lt;br /&gt;
&lt;br /&gt;
{{kodi}} reads the &#039;&#039;Album Artist&#039;&#039; tag in ID3, Ogg, APE and MP4 tags and uses it if available to assign an artist to the album (independently of the track&#039;s artist information).  This is the &amp;quot;Album Artist&amp;quot; tag (in ID3 this is represented by the &amp;quot;TPE2&amp;quot; tag; in vorbiscomment (ogg) files &amp;quot;ALBUMARTIST&amp;quot;, &amp;quot;ALBUM ARTIST&amp;quot; and &amp;quot;ENSEMBLE&amp;quot; are all supported).  Multiple artists for either a track or album artist can be specified in &amp;quot;Artist1 / Artist2 / Artist3&amp;quot; format.&lt;br /&gt;
&lt;br /&gt;
If no &#039;&#039;Album Artist&#039;&#039; tag exists, {{kodi}} will use the first (primary) artist from the tracks as the &#039;&#039;Album Artist&#039;&#039;.  Essentially we do a string comparison of all the track artists, and assign the common artists as the &#039;&#039;Album artist&#039;&#039;. This is generally the TPE1 tag in ID3.&lt;br /&gt;
&lt;br /&gt;
As many users don&#039;t yet use the &#039;&#039;Album Artist&#039;&#039; tag, {{kodi}} has an additional filter system for identifying compilation albums, where each track normally has a different artist.  As {{kodi}} scans a folder, it does the following:&lt;br /&gt;
# Identifies albums based on &#039;&#039;Album&#039;&#039; name alone in the folder and groups the songs that have the same &#039;&#039;Album&#039;&#039; name together as an album.&lt;br /&gt;
# Runs through each album&#039;s assigned songs.  If there is 2 or more tracks with the same &#039;&#039;Track&#039;&#039; number, the group of songs must come from 2 or more albums, so the &#039;&#039;Album&#039;&#039; name is ruled out as a possible compilation.&lt;br /&gt;
# If any of the songs assigned to the &#039;&#039;Album&#039;&#039; name have an &#039;&#039;Album Artist&#039;&#039; tag, then {{kodi}} assumes the user knows what they&#039;re doing, and this album is also ruled out from being a compilation.&lt;br /&gt;
# If two or more songs assigned to the &#039;&#039;Album&#039;&#039; name then have different primary artists, then the &#039;&#039;Album&#039;&#039; name is considered to be a group of songs from a compilation, and the &#039;&#039;Various Artists&#039;&#039;&amp;quot; tag is assigned as the album artist.&lt;br /&gt;
# Otherwise, if all the songs have the same primary artist but don&#039;t have the same full artist list (eg a song or two has an additional artist) then the album is assigned the primary artist as it&#039;s &#039;&#039;Album Artist&#039;&#039;, and we assume the additional artists are guest artists.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ratings in ID3 tags ==&lt;br /&gt;
Ratings in ID3 tags are read via the POPM field, and (if this doesn&#039;t exist) in a custom (TXXX) field named &amp;quot;RATING&amp;quot;.  For the RATING field, we accept 1-5 as valid ratings.  For the POPM field things are more complicated, as there is no established standard in place.  We currently most closely respect what Mediamonkey does, and also have some support for what Windows Media Player 11 does.  The POPM tag takes a value from 0..255, with 0 meaning no rating, 1 the worst, and 255 the best.  We currently map these as follows:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
!&#039;&#039;&#039;POPM value&#039;&#039;&#039; || &#039;&#039;&#039;Star rating&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|0 ||&lt;br /&gt;
|- &lt;br /&gt;
|1 || &#039;&#039;&#039;*&#039;&#039;&#039; This is a special case for Windows Media Player&lt;br /&gt;
|- &lt;br /&gt;
| 2-8 || &lt;br /&gt;
|- &lt;br /&gt;
|9-49 || &#039;&#039;&#039;*&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|50-113 ||&#039;&#039;&#039;**&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|114-167 || &#039;&#039;&#039;***&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|168-218 || &#039;&#039;&#039;****&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|219-255 ||&#039;&#039;&#039;*****&#039;&#039;&#039;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Audio Formats &amp;amp; Tags =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Supported Audio Formats ==&lt;br /&gt;
Although the list of playable formats is quite comprehensive, it is not accurate to say that every {{kodi}} installation will play every format. The ability to play some of the more obscure formats will depend upon the version of {{kodi}} and the operating system in use. Some formats will require the installation of add-ons.&lt;br /&gt;
&lt;br /&gt;
{{#lst:Advancedsettings.xml|musicextensions}}&lt;br /&gt;
&lt;br /&gt;
;{{See also|Advancedsettings.xml}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Supported Metadata Containers ==&lt;br /&gt;
The following metadata containers are supported by {{kodi}}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Metadata Container || Note&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:APEv2 tag|APEv2 tag]] ||&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:Advanced_Systems_Format|ASF]] ||&lt;br /&gt;
|-&lt;br /&gt;
|Generic Tag || A generic tag for basic data from other odd file types&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:ID3|ID3]] || v1, v2.3 and v2.4&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:MPEG-4 Part 14#Metadata|MP4]] ||&lt;br /&gt;
|-&lt;br /&gt;
|[https://xiph.org/ Xiph.org] || Vorbis Comments ||&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:matroska|mka]] || See below for tag spec&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Common File &amp;amp; Tag Combination ==&lt;br /&gt;
You will notice that not all the tags listed in the section &#039;&#039;Supported Audio Formats&#039;&#039; above are listed in the following table. Those formats that are omitted do not have provision to support embedded tags. If your collection contains any of these unsupported formats, you will be unable to scan the music into the library. Your options are:&lt;br /&gt;
#Convert your audio file to a supported format and tag using MusicBrainz Picard. (recommended)&lt;br /&gt;
#Access your music via the File Manager or via File View&lt;br /&gt;
&lt;br /&gt;
{{kodi}} supports the following common Audio File and Tag Formats &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!| Metadata container&lt;br /&gt;
!| Additional Filename extensions&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:APEv2 tag|APEv2 tag]] || ape, mp3, aac, wv, mpc&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:Advanced_Systems_Format|ASF]] || asf, wmv, wma&lt;br /&gt;
|-&lt;br /&gt;
| Generic Tag || it, mod, module, nst, wow, s3m, xm&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:ID3|ID3 v1]] || mp3, aac&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:ID3|ID3 v2]] || mp3, aac, tta, aif, aiff, wav, flac&lt;br /&gt;
|-&lt;br /&gt;
| iTunes [[wikipedia:MPEG-4 Part 14#Metadata|MP4]] || .3g2 .m4a .m4b .m4p .m4r .m4v .mp4&lt;br /&gt;
|-&lt;br /&gt;
|[https://xiph.org/ Xiph.org] || flac, oga, ogg, opus&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:matroska|matroska]] || mka&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Note:&lt;br /&gt;
*FLAC files- xiph tags override id3v2 tags &lt;br /&gt;
*mp3 files can have either id3 or APE tags&lt;br /&gt;
*dsf, dff - ID3v2 format read but are handled by ffmpeg tag reader and it does not support all tags from IDE standard&lt;br /&gt;
*mka - standard matroska tags however, due to an issue with ffmpeg, multiple repeat tags for eg producer are not read.  Because of this, you can tag with a comma separated list of &#039;&#039;involved people&#039;&#039;.&lt;br /&gt;
This is the same format as ID3v2.4 TIPL tag where every odd value is a function (producer, engineer etc) and every even value is an artist.  You can also tag with a key of &#039;&#039;instruments&#039;&#039; which follows the same convention so &amp;quot;instrument, person, instrument, person&amp;quot; etc&lt;br /&gt;
&lt;br /&gt;
== Tags {{kodi}} reads ==&lt;br /&gt;
{{kodi}} will scan the following tags embedded in the music file. The column &#039;&#039;{{kodi}} Version&#039;&#039; indicates the version of {{kodi}} that the tag was introduced, and will work in subsequent versions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=&amp;quot;TagTable&amp;quot; /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align:left;&amp;quot;| {{kodi}} Version&lt;br /&gt;
! Vorbis (.Flac)&lt;br /&gt;
! ID3v2 (.mp3)&lt;br /&gt;
! APE&lt;br /&gt;
! MP4&lt;br /&gt;
! ASF&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ARTIST&lt;br /&gt;
|TPE1&lt;br /&gt;
|ARTIST&lt;br /&gt;
|\251ART&lt;br /&gt;
|Author&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ARTISTS&lt;br /&gt;
|ARTISTS&lt;br /&gt;
|ARTISTS&lt;br /&gt;
| ----:com.apple.iTunes:ARTISTS&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ALBUMARTIST  or ALBUM ARTIST&lt;br /&gt;
|TPE2 OR ALBUMARTIST or ALBUM ARTIST&lt;br /&gt;
|ALBUMARTIST  or ALBUM ARTIST&lt;br /&gt;
|aART&lt;br /&gt;
|WM/AlbumArtist&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ALBUMARTISTS or ALBUM ARTISTS&lt;br /&gt;
|ALBUMARTISTS or ALBUM ARTISTS&lt;br /&gt;
|ALBUMARTISTS or ALBUM ARTISTS&lt;br /&gt;
| ----:com.apple.iTunes:ALBUMARTISTS&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ALBUM&lt;br /&gt;
|TALB&lt;br /&gt;
|ALBUM&lt;br /&gt;
|\251alb&lt;br /&gt;
|WM/AlbumTitle&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|TITLE&lt;br /&gt;
|TIT2&lt;br /&gt;
|TITLE&lt;br /&gt;
|\251nam&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|TRACKNUMBER&lt;br /&gt;
|TRCK&lt;br /&gt;
|TRACKNUMBER or TRACK&lt;br /&gt;
|trkn&lt;br /&gt;
|WM/TrackNumber or WM/Track&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|DISCNUMBER&lt;br /&gt;
|TPOS&lt;br /&gt;
|DISCNUMBER or DISC&lt;br /&gt;
|disk&lt;br /&gt;
|WM/PartOfSet&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|YEAR&lt;br /&gt;
|TYER&lt;br /&gt;
|YEAR&lt;br /&gt;
|\251day&lt;br /&gt;
|WM/Year&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|DATE&lt;br /&gt;
|TDRC, TDRL&lt;br /&gt;
|DATE&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|GENRE&lt;br /&gt;
|TCON&lt;br /&gt;
|GENRE&lt;br /&gt;
|\251gen&lt;br /&gt;
|WM/Genre&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MOOD&lt;br /&gt;
|TMOO OR TXXX:MOOD&lt;br /&gt;
|MOOD&lt;br /&gt;
| ----:com.apple.iTunes:MOOD&lt;br /&gt;
|WM/Mood&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|COMMENT&lt;br /&gt;
|COMM&lt;br /&gt;
|COMMENT&lt;br /&gt;
|\251cmt&lt;br /&gt;
|(COMMENT)&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|CUESHEET&lt;br /&gt;
|&lt;br /&gt;
|CUESHEET&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|COMPILATION&lt;br /&gt;
|TCMP&lt;br /&gt;
|COMPILATION&lt;br /&gt;
|cpil&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|LYRICS&lt;br /&gt;
|USLT&lt;br /&gt;
|LYRICS&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_TRACK_GAIN&lt;br /&gt;
|REPLAYGAIN_TRACK_GAIN&lt;br /&gt;
|REPLAYGAIN_TRACK_GAIN&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_track_gain&lt;br /&gt;
|replaygain_track_gain&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_ALBUM_GAIN&lt;br /&gt;
|REPLAYGAIN_ALBUM_GAIN&lt;br /&gt;
|REPLAYGAIN_ALBUM_GAIN&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_album_gain&lt;br /&gt;
|replaygain_album_gain&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_TRACK_PEAK&lt;br /&gt;
|REPLAYGAIN_TRACK_PEAK&lt;br /&gt;
|REPLAYGAIN_TRACK_PEAK&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_track_peak&lt;br /&gt;
|replaygain_track_peak&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_album_peak&lt;br /&gt;
|replaygain_album_peak&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_album_peak&lt;br /&gt;
|replaygain_album_peak&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ARTISTID&lt;br /&gt;
|MUSICBRAINZ ARTIST ID&lt;br /&gt;
|MUSICBRAINZ_ARTISTID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Artist Id&lt;br /&gt;
|MusicBrainz/Artist Id&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTISTID&lt;br /&gt;
|MUSICBRAINZ ALBUM ARTIST ID&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTISTID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Artist Id&lt;br /&gt;
|MusicBrainz/Album Artist Id&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTIST&lt;br /&gt;
|MUSICBRAINZ ALBUM ARTIST&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTIST&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Artist&lt;br /&gt;
|MusicBrainz/Album Artist&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ALBUMID&lt;br /&gt;
|MUSICBRAINZ ALBUM ID&lt;br /&gt;
|MUSICBRAINZ_ALBUMID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Id&lt;br /&gt;
|MusicBrainz/Album Id&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_TRACKID&lt;br /&gt;
|UFID&lt;br /&gt;
|MUSICBRAINZ_TRACKID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Track Id&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|RATING&lt;br /&gt;
|POPM&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|METADATA_BLOCK_PICTURE or COVERART or COVERARTMIME&lt;br /&gt;
|APIC&lt;br /&gt;
|&lt;br /&gt;
|covr&lt;br /&gt;
|WM/Picture&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|COMPOSER&lt;br /&gt;
|TCOM&lt;br /&gt;
|COMPOSER&lt;br /&gt;
|\251wrt&lt;br /&gt;
|WM/Composer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|CONDUCTOR&lt;br /&gt;
|TPE3&lt;br /&gt;
|CONDUCTOR&lt;br /&gt;
| ----:com.apple.iTunes:CONDUCTOR&lt;br /&gt;
|WM/Conductor&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|LYRICIST&lt;br /&gt;
|TEXT&lt;br /&gt;
|LYRICIST&lt;br /&gt;
| ----:com.apple.iTunes:LYRICIST&lt;br /&gt;
|WM/Writer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|REMIXER or MIXARTIST&lt;br /&gt;
|TPE4&lt;br /&gt;
|REMIXER or MIXARTIST&lt;br /&gt;
| ----:com.apple.iTunes:REMIXER&lt;br /&gt;
|WM/ModifiedBy&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|ENSEMBLE&lt;br /&gt;
|(TIPL) or TXXX:Ensemble&lt;br /&gt;
|ENSEMBLE&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|ARRANGER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|ARRANGER&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|ENGINEER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|ENGINEER&lt;br /&gt;
| ----:com.apple.iTunes:ENGINEER&lt;br /&gt;
|WM/Engineer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|PRODUCER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|PRODUCER&lt;br /&gt;
| ----:com.apple.iTunes:PRODUCER&lt;br /&gt;
|WM/Producer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|DJMIXER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|DJMIXER&lt;br /&gt;
| ----:com.apple.iTunes:DJMIXER&lt;br /&gt;
|WM/DJMixer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|MIXER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|MIXER&lt;br /&gt;
| ----:com.apple.iTunes:MIXER&lt;br /&gt;
|WM/Mixer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|PERFORMER&lt;br /&gt;
|TMCL&lt;br /&gt;
|PERFORMER&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|LABEL&lt;br /&gt;
|TPUB&lt;br /&gt;
|LABEL&lt;br /&gt;
| ----:com.apple.iTunes:LABEL&lt;br /&gt;
|WM/Publisher&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|RELEASETYPE&lt;br /&gt;
|MUSICBRAINZ ALBUM TYPE&lt;br /&gt;
|MUSICBRAINZ_ALBUMTYPE&lt;br /&gt;
| ---:com.apple.iTunes:MusicBrainz Album Type&lt;br /&gt;
|MusicBrainz/Album Type&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|MUSICBRAINZ_RELEASEGROUPID&lt;br /&gt;
|MUSICBRAINZ RELEASE GROUP ID&lt;br /&gt;
|MUSICBRAINZ_RELEASEGROUPID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Release Group Id&lt;br /&gt;
|MusicBrainz/Release Group Id&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|ARTISTSORT&lt;br /&gt;
|TSOP&lt;br /&gt;
|ARTISTSORT&lt;br /&gt;
| &lt;br /&gt;
|WM/ArtistSortOrder&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|ALBUMARTISTSORT&lt;br /&gt;
|TS02&lt;br /&gt;
|ALBUMARTISTSORT&lt;br /&gt;
|soaa&lt;br /&gt;
|WM/AlbumArtistSortOrder&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|COMPOSERSORT&lt;br /&gt;
|TSOC&lt;br /&gt;
|COMPOSERSORT&lt;br /&gt;
|soco&lt;br /&gt;
|WM/ComposerSortOrder&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|WRITER&lt;br /&gt;
|WRITER&lt;br /&gt;
|WRITER&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|DISCSUBTITLE&lt;br /&gt;
|TSST&lt;br /&gt;
|DiscSubtitle&lt;br /&gt;
| ----:com.apple.iTunes:DISCSUBTITLE&lt;br /&gt;
|WM/SetSubTitle&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|BPM&lt;br /&gt;
|TBPM&lt;br /&gt;
|BPM&lt;br /&gt;
|tmpo&lt;br /&gt;
|WM/BeatsPerMinute&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|ORIGINALDATE or ORIGINALYEAR&lt;br /&gt;
|TDOR or TORY&lt;br /&gt;
|ORIGINALYEAR&lt;br /&gt;
| ----:com.apple.iTunes:originaldate&lt;br /&gt;
|WM/OriginalReleaseYear&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|RELEASESTATUS&lt;br /&gt;
|TXXX:MusicBrainz Album Status&lt;br /&gt;
|MUSICBRAINZ_ALBUMSTATUS&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Status&lt;br /&gt;
|MusicBrainz/Album Status&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;section end=&amp;quot;TagTable&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As of {{Kodi}} V22, the most common music tags can be applied to mka files and read by {{Kodi}}.  This includes a comma separated list of &#039;&#039;&#039;instruments&#039;&#039;&#039; and &#039;&#039;&#039;involved people&#039;&#039;&#039; as documented above.&lt;br /&gt;
&lt;br /&gt;
==== Please Note: ====&lt;br /&gt;
[[https://picard.musicbrainz.org/ Musicbrainz Picard]] is not capable of tagging mka files.  However, [[wikipedia:mp3tag|mp3tag]] and [[wikipedia:foobar2000|foobar2000]] are both viable alternatives that are.  They both run well under wine if you might need them to. Other compatible taggers are also available.&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Top}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;{{linear-gradient|left|#f5d3ff, #12b2e7}}&amp;quot;&amp;gt;{{next|[[Adding_music_to_the_library|Scanning Music into Library]]}} &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{updated|18}}&lt;br /&gt;
[[Category:Index]]&lt;br /&gt;
[[Category:Guides]]&lt;br /&gt;
[[Category:Manual]]&lt;br /&gt;
[[Category:Karellen]]&lt;br /&gt;
[[Category:First time user]]&lt;br /&gt;
[[Category:Music library]]&lt;br /&gt;
[[Category:Advanced topics]]&lt;br /&gt;
[[Category:Quick Start Guide]]&lt;/div&gt;</summary>
		<author><name>Black eagle</name></author>
	</entry>
	<entry>
		<id>https://kodi.wiki/index.php?title=Music_tagging&amp;diff=254573</id>
		<title>Music tagging</title>
		<link rel="alternate" type="text/html" href="https://kodi.wiki/index.php?title=Music_tagging&amp;diff=254573"/>
		<updated>2025-01-26T12:44:29Z</updated>

		<summary type="html">&lt;p&gt;Black eagle: /* Common File &amp;amp; Tag Combination */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{MusicLibraryCreate}}&lt;br /&gt;
{{mininav|[[Music library]]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
This page provides the following information:&lt;br /&gt;
&lt;br /&gt;
*How the Music section differs from the Video section of {{kodi}}&lt;br /&gt;
*The recommended method to organise your music files &lt;br /&gt;
*The recommended method for tagging your music files&lt;br /&gt;
*Explanation of some commonly misunderstood Music File Tags&lt;br /&gt;
*The Audio Files and Tags that {{kodi}} reads and uses&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Understanding the Music Library =&lt;br /&gt;
&amp;lt;section begin=&amp;quot;understanding&amp;quot; /&amp;gt;There is a fundamental differences between video library operation and the music library operation: &lt;br /&gt;
*The video library is based on using the filenames or folder names to obtain online data. If they are incorrectly named, then there are no scraper results and there will be no library entry.&lt;br /&gt;
*&#039;&#039;&#039;The music library is based on scanning tags embedded in the music files.&#039;&#039;&#039; It ignores the folder names and structure and file names. Proper tagging is essential to ensure the library is populated correctly. Having slight variations in the tags for artist and album names could mean duplicated and unwanted entries.&amp;lt;section end=&amp;quot;understanding&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Folder and File Structure =&lt;br /&gt;
Although {{kodi}} ignores the folder structure and the names of the folders and files, the structure of your folders is important as it affects the operation of other functions such as Import/Export, nfo files and Artwork. For example, if you have all your music files in one folder (which is possible), then you lose the ability to use local nfo files, local artwork, and the import/export module will not function correctly.&lt;br /&gt;
&lt;br /&gt;
The following is {{kodi}} &#039;&#039;&#039;best practice&#039;&#039;&#039;. Remember use a layout that is nice for you, but &#039;&#039;&#039;tag accurately.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Files ==&lt;br /&gt;
Song files require suitable tagging for use in {{kodi}}. While {{kodi}} can scan minimal tags into the library, it can lead to errors in the library and subsequent scraping. We recommend music files are tagged with MusicBrainz as detailed below.&lt;br /&gt;
&lt;br /&gt;
Remember that {{kodi}} does not extract any information from the filename, so the filename is your choice.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Folders ==&lt;br /&gt;
{{kodi}} is quite flexible with the folder structure. The diagram below is an &#039;&#039;&#039;example&#039;&#039;&#039;. You should group your albums in a manner that makes sense to you.&lt;br /&gt;
&lt;br /&gt;
To ensure {{kodi}} and other add-on processes can function efficently and correctly, the following is recommended.&lt;br /&gt;
*Songs from the same album should be in the one folder&lt;br /&gt;
*If there is more than one disk in the release, each disk should be in a sub-folder containing the songs from that disk&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a typical folder structure:&lt;br /&gt;
&lt;br /&gt;
 f:\   ....................................(root)&lt;br /&gt;
  |__Artist Information  ..................(Artist Information Folder)&lt;br /&gt;
  |&lt;br /&gt;
  |__Artist Music   .......................(source folder)&lt;br /&gt;
  |  |__ Madonna   ........................(artist folder)&lt;br /&gt;
  |  |   |__ Beautiful Stranger (1999)   ..(album folder)&lt;br /&gt;
  |  |   |   |__ Song 1&lt;br /&gt;
  |  |   |   |__ Song 2&lt;br /&gt;
  |  |   |   |__ Song 3 etc&lt;br /&gt;
  |  |   |__ Bedtime Stories (1994)   .....(album folder)&lt;br /&gt;
  |  |   |   |__ Song 1&lt;br /&gt;
  |  |   |   |__ Song 2&lt;br /&gt;
  |  |   |   |__ Song 3 etc&lt;br /&gt;
  |  |   |__ Like A Prayer (1989)   .......(album folder)&lt;br /&gt;
  |  |   |   |__ Song 1&lt;br /&gt;
  |  |   |   |__ Song 2&lt;br /&gt;
  |  |   |   |__ Song 3 etc&lt;br /&gt;
  |  |__ Simply Red   .....................(artist folder)&lt;br /&gt;
  |      |__ Picture Book (1985)   ........(album folder)&lt;br /&gt;
  |          |__ Song 1&lt;br /&gt;
  |          |__ Song 2&lt;br /&gt;
  |          |__ Song 3 etc&lt;br /&gt;
  |&lt;br /&gt;
  |__Compilations   .......................(Source)&lt;br /&gt;
  |  |__ Essential Eighties   .............(album folder)&lt;br /&gt;
  |  |       |__ Song 1&lt;br /&gt;
  |  |       |__ Song 2&lt;br /&gt;
  |  |       |__ Song 3 etc&lt;br /&gt;
  |  |__ 100% Hits- Best of 2005   ........(album folder)&lt;br /&gt;
  |          |__ Song 1&lt;br /&gt;
  |          |__ Song 2&lt;br /&gt;
  |          |__ Song 3 etc&lt;br /&gt;
  |&lt;br /&gt;
  |__Classical   ..........................(Source)&lt;br /&gt;
  |&lt;br /&gt;
  |__Audiobooks   .........................(Source)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sources ==&lt;br /&gt;
A source is the parent folder that contains your media collection- in this case Music. This folder is then set as a Source in {{kodi}} which enables {{kodi}} to access your Music. &lt;br /&gt;
&lt;br /&gt;
In the diagram from the previous section &#039;&#039;Artist Music, Compilations, Classical&#039;&#039; and &#039;&#039;Audiobooks&#039;&#039; are Sources.&lt;br /&gt;
&lt;br /&gt;
Notes on naming and setting a &#039;&#039;&#039;Source&#039;&#039;&#039;:&lt;br /&gt;
*There is no limit on the number of Sources that can be used&lt;br /&gt;
*The Source names, which essentially is your folder name, can be anything that makes sense to you. The names should be unique, which makes it easier to navigate to the correct source in {{Kodi}}&lt;br /&gt;
*Larger libraries do benefit from multiple sources&lt;br /&gt;
*There is no requirement on how to separate music between Sources. Many users separate based on Genre, alphabetical listing, release type or any method you prefer&lt;br /&gt;
*If your music collection exists on multiple drives, then a Source folder is required for each drive&lt;br /&gt;
*&#039;&#039;&#039;Never&#039;&#039;&#039; mix media classes. ie, ensure TV Shows, Movies, Music Videos or Music are not in the same source, nor as a sub-folder of another source.&lt;br /&gt;
*&#039;&#039;&#039;Never&#039;&#039;&#039; set the entire hard drive as your Source as this will create multiple ghost entries.&lt;br /&gt;
&lt;br /&gt;
Setting and Scanning of Sources is covered in detail in the next step of the guide. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Tagging =&lt;br /&gt;
Most music files purchased or ripped by your favourite software have only minimal metadata embedded. Normally this is not a problem and works very well on simple music players.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{kodi}}, being an advanced and feature rich player, requires greater accuracy with the embedded tags. Any slight variance in, for example, the Album name between the tracks from the same album will see multiple entries in the library for that Album. It is not uncommon to have a single album split into three similarly named albums. Also true for Artists. It is for this reason that there is a separation of the Scanning and Scraping processes for Music. The initial scan allows you to find and correct errors in tagging, before scraping.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
This table has examples of errors in tagging, which will cause duplicated entries in the library...&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
!Similar Name 1 || Similar Name 2 || Note&lt;br /&gt;
|-&lt;br /&gt;
|György Ligeti || Gyorgy Ligeti || Accented and unaccented names will create duplicate entries&lt;br /&gt;
|-&lt;br /&gt;
|The Best of || The Very Best Of || Inconsistent naming between songs of the same album and/or artist will cause duplicated entries&lt;br /&gt;
|-&lt;br /&gt;
|Madonna || Madonnna || Spelling mistakes will cause duplicated entries for albums and/or artists&lt;br /&gt;
|-&lt;br /&gt;
|Sting || Sting and The Police || Seen as two separate and unrelated Artists&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
As {{kodi}} scans your music collection, it copies the data contained in those tags into the {{kodi}} music database. The benefits of this are:&lt;br /&gt;
*Once the scan is complete, the tags are not accessed again&lt;br /&gt;
*All information is now obtained from the database. This has the benefit of dramatically increasing efficency and speed when navigating the library.&lt;br /&gt;
*Now that a database entry exists, you are able to scrape additional information from online sources. This is covered later in the guide.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== MusicBrainz ==&lt;br /&gt;
&#039;&#039;&#039;{{kodi}} has strong support for MusicBrainz tagging. It is highly recommended that users tag their music files using MusicBrainz Picard.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;MusicBrainz Picard&#039;&#039;&#039; is the music file tagger software that can access the MusicBrainz database to locate metadata to embed into your music files. MBIDs are useful because names are not unique. The bigger and more diverse your music collection is, the more likely you will encounter Artists with the same name. &lt;br /&gt;
&lt;br /&gt;
The advantages of tagging with MusicBrainz are:&lt;br /&gt;
*They allow you to have different artists with the same name in your library e.g. &amp;quot;John Williams&amp;quot; the classical guitarist and &amp;quot;John Williams&amp;quot; the film music composer and conductor.&lt;br /&gt;
*They negate inconsistencies in artist naming e.g. having &amp;quot;Peter Tchaikovsky&amp;quot; on some albums and &amp;quot;Piotr Czajkowski&amp;quot; on others&lt;br /&gt;
*They allow you to have more than one release of an album in your library e.g. the normal and deluxe editions of an album&lt;br /&gt;
*They clearly identify the artist and album in ways that names alone can not. This can then be used to accurately scrape additional artist and album information and locate the correct artwork&lt;br /&gt;
*They allow the scraping process to be more efficient, otherwise an extra call is made to try and get an mbid first to use at the scraping sites, and each request from Musicbrainz must be throttled to 1 per sec which will slow the scraping process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Below is a screenshot of the main screen of the Picard software. A brief description of the layout as follows.&lt;br /&gt;
&lt;br /&gt;
*Top Left Box- Folder listing of your music collection&lt;br /&gt;
*Top Centre Box- Albums are dragged and dropped here in preparation for matching and tagging. Pressing &#039;&#039;Lookup&#039;&#039; (greyed out) will commence the lookup process&lt;br /&gt;
*Top Right Box- Matching albums are displayed here and your songs are overlayed. In the screenshot, songs 01, 08 and 09 have been matched to the suggested album. If all songs match and you agree the correct album was located, simply pressing Save will tag the album with the tags displayed in the Bottom Tag Box.&lt;br /&gt;
*Bottom Tag Box - Selecting a song from the Top Right Box will display all available tag fields (left column), the current tags in the music file (Original Value column) and the MusicBrainz tags to be embedded in the music file (right column).&lt;br /&gt;
&lt;br /&gt;
The example in the image below shows the following:&lt;br /&gt;
*Most tags are missing (original value column)&lt;br /&gt;
*The top three yellow entries are incorrect (original value column) and the corrections are in the right column&lt;br /&gt;
*The green entries in the right column indicate new tags to be embedded&lt;br /&gt;
*The black entries at the bottom of the list indicate no change to the existing tags as they are correct or not used by MusicBrainz.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;packed&amp;quot; widths=&amp;quot;1000px&amp;quot; heights=&amp;quot;563px&amp;quot;&amp;gt;&lt;br /&gt;
File:MusicBrainzPicard01.jpg&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Although Picard is very easy to use, you must avoid blindly accepting everything offered by the software. It is important that you confirm the correct album was located. Due to the global nature of the database, there are many releases for a single album. These releases differ between countries, usually due to copyright requirements. This may lead you to inadvertendly select the incorrect release for your album, even though it is named exactly the same. The differences between releases may be as simple as different song ordering or the inclusion of additional bonus tracks.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clear Existing Tags ==&lt;br /&gt;
For the best tagging experience set the correct options in Picard, particularly the &amp;quot;Clear Existing Tags&amp;quot; option in settings. This option means that any old tags that may cause issues are wiped, preserving only the musicbrainz tagging. It will also be wise to tag using ID3v2.4 compatibility.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;packed&amp;quot; widths=&amp;quot;500px&amp;quot; heights=&amp;quot;283px&amp;quot;&amp;gt;&lt;br /&gt;
File:Picard options.jpg&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== albumartists ==&lt;br /&gt;
{{Kodi}} requires the &#039;&#039;&#039;albumartists&#039;&#039;&#039; tag to correctly handle multiple album artists on the same album. This tag is not a default tag in MusicBrainz Picard and other tagging software. &amp;lt;ref&amp;gt; https://forum.kodi.tv/showthread.php?tid=334729&amp;amp;pid=2760161#pid2760161 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To include this tag add a new script under &#039;&#039;Options &amp;gt; Options &amp;gt; Scripting &amp;gt; Add new script&#039;&#039; and include the following code...&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
$setmulti(albumartists,%_albumartists%)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;packed&amp;quot; widths=&amp;quot;500px&amp;quot; heights=&amp;quot;283px&amp;quot;&amp;gt;&lt;br /&gt;
File:Picard Script.JPG&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the music files are tagged, avoid modifying the MusicBrainz tags unless you clearly understand the relationship of the MBID&#039;s and the other related tags. For example, embedding MBID tags, but then editing the Artist tag or Album Artist tag will result in incorrect entries in the library.&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
*If you need to change the artist or album artist tag you also have to edit the matching artist mbid tag and album artist mbid tag. &lt;br /&gt;
*If Kodi finds a release mbid it will expect the artist mbid tags to also be present.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;&#039;&#039;See: [https://musicbrainz.org/ MusicBrainz Website]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
:&#039;&#039;&#039;&#039;&#039;See: [https://picard.musicbrainz.org/ MusicBrainz Picard Software]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;center&amp;gt;{{red|&#039;&#039;&#039;The remainder of this page deals with special use cases or provides information for technical interest and reference only. It can be safely disregarded if these do not apply to you&#039;&#039;&#039;}}&amp;lt;/center&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;{{linear-gradient|left|#f5d3ff, #12b2e7}}&amp;quot;&amp;gt;{{next|[[Adding_music_to_the_library|Scanning Music into Library]]}} &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Ripping CD&#039;s =&lt;br /&gt;
{{main|Ripping CDs}}&lt;br /&gt;
{{#lst:Ripping CDs|intro}}&lt;br /&gt;
&lt;br /&gt;
There is no requirement to use the {{Kodi}} CD Ripper. If you are comfortable using other ripping software, then we recommend you continue using that software.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Cue Sheets =&lt;br /&gt;
{{#lst:Cue_sheets|intro}}&lt;br /&gt;
&lt;br /&gt;
{{kodi}} does provide basic support for using cue sheets to define individual tracks when an entire CD has been ripped into a single music file. However the information provided by  the cue sheet standard is much more limited than that of standard tagging, hence to enjoy the full music library features it is recommended that tracks are ripped into separate files and fully tagged.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{red|If you do not use Cue Sheets you can safely move onto the next step.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
;{{see also|Cue_sheets}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Streams =&lt;br /&gt;
{{#lst:Internet_video_and_audio_streams|intro}}&lt;br /&gt;
&lt;br /&gt;
;{{see also|Internet_video_and_audio_streams}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Technical Explanation: File tags =&lt;br /&gt;
For many categories, such as genres and artists, {{kodi}} supports multiple values in the one field.  By default it uses the character sequence &amp;quot; / &amp;quot; to divide the entry into multiple values.  This divider may be changed via [[advancedsettings.xml]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Resolving Compilations and Multiple Artists ==&lt;br /&gt;
{{red|Applies to v17 and below. v18 introduced the [[Artist information folder]] which solved these problems. You are encouraged to update to v18}}&lt;br /&gt;
&lt;br /&gt;
{{kodi}} reads the &#039;&#039;Album Artist&#039;&#039; tag in ID3, Ogg, APE and MP4 tags and uses it if available to assign an artist to the album (independently of the track&#039;s artist information).  This is the &amp;quot;Album Artist&amp;quot; tag (in ID3 this is represented by the &amp;quot;TPE2&amp;quot; tag; in vorbiscomment (ogg) files &amp;quot;ALBUMARTIST&amp;quot;, &amp;quot;ALBUM ARTIST&amp;quot; and &amp;quot;ENSEMBLE&amp;quot; are all supported).  Multiple artists for either a track or album artist can be specified in &amp;quot;Artist1 / Artist2 / Artist3&amp;quot; format.&lt;br /&gt;
&lt;br /&gt;
If no &#039;&#039;Album Artist&#039;&#039; tag exists, {{kodi}} will use the first (primary) artist from the tracks as the &#039;&#039;Album Artist&#039;&#039;.  Essentially we do a string comparison of all the track artists, and assign the common artists as the &#039;&#039;Album artist&#039;&#039;. This is generally the TPE1 tag in ID3.&lt;br /&gt;
&lt;br /&gt;
As many users don&#039;t yet use the &#039;&#039;Album Artist&#039;&#039; tag, {{kodi}} has an additional filter system for identifying compilation albums, where each track normally has a different artist.  As {{kodi}} scans a folder, it does the following:&lt;br /&gt;
# Identifies albums based on &#039;&#039;Album&#039;&#039; name alone in the folder and groups the songs that have the same &#039;&#039;Album&#039;&#039; name together as an album.&lt;br /&gt;
# Runs through each album&#039;s assigned songs.  If there is 2 or more tracks with the same &#039;&#039;Track&#039;&#039; number, the group of songs must come from 2 or more albums, so the &#039;&#039;Album&#039;&#039; name is ruled out as a possible compilation.&lt;br /&gt;
# If any of the songs assigned to the &#039;&#039;Album&#039;&#039; name have an &#039;&#039;Album Artist&#039;&#039; tag, then {{kodi}} assumes the user knows what they&#039;re doing, and this album is also ruled out from being a compilation.&lt;br /&gt;
# If two or more songs assigned to the &#039;&#039;Album&#039;&#039; name then have different primary artists, then the &#039;&#039;Album&#039;&#039; name is considered to be a group of songs from a compilation, and the &#039;&#039;Various Artists&#039;&#039;&amp;quot; tag is assigned as the album artist.&lt;br /&gt;
# Otherwise, if all the songs have the same primary artist but don&#039;t have the same full artist list (eg a song or two has an additional artist) then the album is assigned the primary artist as it&#039;s &#039;&#039;Album Artist&#039;&#039;, and we assume the additional artists are guest artists.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ratings in ID3 tags ==&lt;br /&gt;
Ratings in ID3 tags are read via the POPM field, and (if this doesn&#039;t exist) in a custom (TXXX) field named &amp;quot;RATING&amp;quot;.  For the RATING field, we accept 1-5 as valid ratings.  For the POPM field things are more complicated, as there is no established standard in place.  We currently most closely respect what Mediamonkey does, and also have some support for what Windows Media Player 11 does.  The POPM tag takes a value from 0..255, with 0 meaning no rating, 1 the worst, and 255 the best.  We currently map these as follows:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
!&#039;&#039;&#039;POPM value&#039;&#039;&#039; || &#039;&#039;&#039;Star rating&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|0 ||&lt;br /&gt;
|- &lt;br /&gt;
|1 || &#039;&#039;&#039;*&#039;&#039;&#039; This is a special case for Windows Media Player&lt;br /&gt;
|- &lt;br /&gt;
| 2-8 || &lt;br /&gt;
|- &lt;br /&gt;
|9-49 || &#039;&#039;&#039;*&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|50-113 ||&#039;&#039;&#039;**&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|114-167 || &#039;&#039;&#039;***&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|168-218 || &#039;&#039;&#039;****&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|219-255 ||&#039;&#039;&#039;*****&#039;&#039;&#039;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Audio Formats &amp;amp; Tags =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Supported Audio Formats ==&lt;br /&gt;
Although the list of playable formats is quite comprehensive, it is not accurate to say that every {{kodi}} installation will play every format. The ability to play some of the more obscure formats will depend upon the version of {{kodi}} and the operating system in use. Some formats will require the installation of add-ons.&lt;br /&gt;
&lt;br /&gt;
{{#lst:Advancedsettings.xml|musicextensions}}&lt;br /&gt;
&lt;br /&gt;
;{{See also|Advancedsettings.xml}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Supported Metadata Containers ==&lt;br /&gt;
The following metadata containers are supported by {{kodi}}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Metadata Container || Note&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:APEv2 tag|APEv2 tag]] ||&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:Advanced_Systems_Format|ASF]] ||&lt;br /&gt;
|-&lt;br /&gt;
|Generic Tag || A generic tag for basic data from other odd file types&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:ID3|ID3]] || v1, v2.3 and v2.4&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:MPEG-4 Part 14#Metadata|MP4]] ||&lt;br /&gt;
|-&lt;br /&gt;
|[https://xiph.org/ Xiph.org] || Vorbis Comments ||&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:matroska|mka]] || See below for tag spec&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Common File &amp;amp; Tag Combination ==&lt;br /&gt;
You will notice that not all the tags listed in the section &#039;&#039;Supported Audio Formats&#039;&#039; above are listed in the following table. Those formats that are omitted do not have provision to support embedded tags. If your collection contains any of these unsupported formats, you will be unable to scan the music into the library. Your options are:&lt;br /&gt;
#Convert your audio file to a supported format and tag using MusicBrainz Picard. (recommended)&lt;br /&gt;
#Access your music via the File Manager or via File View&lt;br /&gt;
&lt;br /&gt;
{{kodi}} supports the following common Audio File and Tag Formats &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!| Metadata container&lt;br /&gt;
!| Additional Filename extensions&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:APEv2 tag|APEv2 tag]] || ape, mp3, aac, wv, mpc&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:Advanced_Systems_Format|ASF]] || asf, wmv, wma&lt;br /&gt;
|-&lt;br /&gt;
| Generic Tag || it, mod, module, nst, wow, s3m, xm&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:ID3|ID3 v1]] || mp3, aac&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:ID3|ID3 v2]] || mp3, aac, tta, aif, aiff, wav, flac&lt;br /&gt;
|-&lt;br /&gt;
| iTunes [[wikipedia:MPEG-4 Part 14#Metadata|MP4]] || .3g2 .m4a .m4b .m4p .m4r .m4v .mp4&lt;br /&gt;
|-&lt;br /&gt;
|[https://xiph.org/ Xiph.org] || flac, oga, ogg, opus&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:matroska|matroska]] || mka&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Note:&lt;br /&gt;
*FLAC files- xiph tags override id3v2 tags &lt;br /&gt;
*mp3 files can have either id3 or APE tags&lt;br /&gt;
*dsf, dff - ID3v2 format read but are handled by ffmpeg tag reader and it does not support all tags from IDE standard&lt;br /&gt;
*mka - standard matroska tags however, due to an issue with ffmpeg, multiple repeat tags for eg producer are not read.  Because of this, you can tag with a comma separated list of &#039;&#039;involved people&#039;&#039;.&lt;br /&gt;
This is the same format as ID3v2.4 TIPL tag where every odd value is a function (producer, engineer etc) and every even value is an artist.  You can also tag with a key of &#039;&#039;instruments&#039;&#039; which follows the same convention so &amp;quot;instrument, person, instrument, person&amp;quot; etc&lt;br /&gt;
&lt;br /&gt;
== Tags {{kodi}} reads ==&lt;br /&gt;
{{kodi}} will scan the following tags embedded in the music file. The column &#039;&#039;{{kodi}} Version&#039;&#039; indicates the version of {{kodi}} that the tag was introduced, and will work in subsequent versions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=&amp;quot;TagTable&amp;quot; /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align:left;&amp;quot;| {{kodi}} Version&lt;br /&gt;
! Vorbis (.Flac)&lt;br /&gt;
! ID3v2 (.mp3)&lt;br /&gt;
! APE&lt;br /&gt;
! MP4&lt;br /&gt;
! ASF&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ARTIST&lt;br /&gt;
|TPE1&lt;br /&gt;
|ARTIST&lt;br /&gt;
|\251ART&lt;br /&gt;
|Author&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ARTISTS&lt;br /&gt;
|ARTISTS&lt;br /&gt;
|ARTISTS&lt;br /&gt;
| ----:com.apple.iTunes:ARTISTS&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ALBUMARTIST  or ALBUM ARTIST&lt;br /&gt;
|TPE2 OR ALBUMARTIST or ALBUM ARTIST&lt;br /&gt;
|ALBUMARTIST  or ALBUM ARTIST&lt;br /&gt;
|aART&lt;br /&gt;
|WM/AlbumArtist&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ALBUMARTISTS or ALBUM ARTISTS&lt;br /&gt;
|ALBUMARTISTS or ALBUM ARTISTS&lt;br /&gt;
|ALBUMARTISTS or ALBUM ARTISTS&lt;br /&gt;
| ----:com.apple.iTunes:ALBUMARTISTS&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ALBUM&lt;br /&gt;
|TALB&lt;br /&gt;
|ALBUM&lt;br /&gt;
|\251alb&lt;br /&gt;
|WM/AlbumTitle&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|TITLE&lt;br /&gt;
|TIT2&lt;br /&gt;
|TITLE&lt;br /&gt;
|\251nam&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|TRACKNUMBER&lt;br /&gt;
|TRCK&lt;br /&gt;
|TRACKNUMBER or TRACK&lt;br /&gt;
|trkn&lt;br /&gt;
|WM/TrackNumber or WM/Track&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|DISCNUMBER&lt;br /&gt;
|TPOS&lt;br /&gt;
|DISCNUMBER or DISC&lt;br /&gt;
|disk&lt;br /&gt;
|WM/PartOfSet&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|YEAR&lt;br /&gt;
|TYER&lt;br /&gt;
|YEAR&lt;br /&gt;
|\251day&lt;br /&gt;
|WM/Year&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|DATE&lt;br /&gt;
|TDRC, TDRL&lt;br /&gt;
|DATE&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|GENRE&lt;br /&gt;
|TCON&lt;br /&gt;
|GENRE&lt;br /&gt;
|\251gen&lt;br /&gt;
|WM/Genre&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MOOD&lt;br /&gt;
|TMOO OR TXXX:MOOD&lt;br /&gt;
|MOOD&lt;br /&gt;
| ----:com.apple.iTunes:MOOD&lt;br /&gt;
|WM/Mood&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|COMMENT&lt;br /&gt;
|COMM&lt;br /&gt;
|COMMENT&lt;br /&gt;
|\251cmt&lt;br /&gt;
|(COMMENT)&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|CUESHEET&lt;br /&gt;
|&lt;br /&gt;
|CUESHEET&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|COMPILATION&lt;br /&gt;
|TCMP&lt;br /&gt;
|COMPILATION&lt;br /&gt;
|cpil&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|LYRICS&lt;br /&gt;
|USLT&lt;br /&gt;
|LYRICS&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_TRACK_GAIN&lt;br /&gt;
|REPLAYGAIN_TRACK_GAIN&lt;br /&gt;
|REPLAYGAIN_TRACK_GAIN&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_track_gain&lt;br /&gt;
|replaygain_track_gain&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_ALBUM_GAIN&lt;br /&gt;
|REPLAYGAIN_ALBUM_GAIN&lt;br /&gt;
|REPLAYGAIN_ALBUM_GAIN&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_album_gain&lt;br /&gt;
|replaygain_album_gain&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_TRACK_PEAK&lt;br /&gt;
|REPLAYGAIN_TRACK_PEAK&lt;br /&gt;
|REPLAYGAIN_TRACK_PEAK&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_track_peak&lt;br /&gt;
|replaygain_track_peak&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_album_peak&lt;br /&gt;
|replaygain_album_peak&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_album_peak&lt;br /&gt;
|replaygain_album_peak&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ARTISTID&lt;br /&gt;
|MUSICBRAINZ ARTIST ID&lt;br /&gt;
|MUSICBRAINZ_ARTISTID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Artist Id&lt;br /&gt;
|MusicBrainz/Artist Id&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTISTID&lt;br /&gt;
|MUSICBRAINZ ALBUM ARTIST ID&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTISTID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Artist Id&lt;br /&gt;
|MusicBrainz/Album Artist Id&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTIST&lt;br /&gt;
|MUSICBRAINZ ALBUM ARTIST&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTIST&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Artist&lt;br /&gt;
|MusicBrainz/Album Artist&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ALBUMID&lt;br /&gt;
|MUSICBRAINZ ALBUM ID&lt;br /&gt;
|MUSICBRAINZ_ALBUMID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Id&lt;br /&gt;
|MusicBrainz/Album Id&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_TRACKID&lt;br /&gt;
|UFID&lt;br /&gt;
|MUSICBRAINZ_TRACKID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Track Id&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|RATING&lt;br /&gt;
|POPM&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|METADATA_BLOCK_PICTURE or COVERART or COVERARTMIME&lt;br /&gt;
|APIC&lt;br /&gt;
|&lt;br /&gt;
|covr&lt;br /&gt;
|WM/Picture&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|COMPOSER&lt;br /&gt;
|TCOM&lt;br /&gt;
|COMPOSER&lt;br /&gt;
|\251wrt&lt;br /&gt;
|WM/Composer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|CONDUCTOR&lt;br /&gt;
|TPE3&lt;br /&gt;
|CONDUCTOR&lt;br /&gt;
| ----:com.apple.iTunes:CONDUCTOR&lt;br /&gt;
|WM/Conductor&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|LYRICIST&lt;br /&gt;
|TEXT&lt;br /&gt;
|LYRICIST&lt;br /&gt;
| ----:com.apple.iTunes:LYRICIST&lt;br /&gt;
|WM/Writer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|REMIXER or MIXARTIST&lt;br /&gt;
|TPE4&lt;br /&gt;
|REMIXER or MIXARTIST&lt;br /&gt;
| ----:com.apple.iTunes:REMIXER&lt;br /&gt;
|WM/ModifiedBy&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|ENSEMBLE&lt;br /&gt;
|(TIPL) or TXXX:Ensemble&lt;br /&gt;
|ENSEMBLE&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|ARRANGER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|ARRANGER&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|ENGINEER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|ENGINEER&lt;br /&gt;
| ----:com.apple.iTunes:ENGINEER&lt;br /&gt;
|WM/Engineer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|PRODUCER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|PRODUCER&lt;br /&gt;
| ----:com.apple.iTunes:PRODUCER&lt;br /&gt;
|WM/Producer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|DJMIXER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|DJMIXER&lt;br /&gt;
| ----:com.apple.iTunes:DJMIXER&lt;br /&gt;
|WM/DJMixer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|MIXER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|MIXER&lt;br /&gt;
| ----:com.apple.iTunes:MIXER&lt;br /&gt;
|WM/Mixer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|PERFORMER&lt;br /&gt;
|TMCL&lt;br /&gt;
|PERFORMER&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|LABEL&lt;br /&gt;
|TPUB&lt;br /&gt;
|LABEL&lt;br /&gt;
| ----:com.apple.iTunes:LABEL&lt;br /&gt;
|WM/Publisher&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|RELEASETYPE&lt;br /&gt;
|MUSICBRAINZ ALBUM TYPE&lt;br /&gt;
|MUSICBRAINZ_ALBUMTYPE&lt;br /&gt;
| ---:com.apple.iTunes:MusicBrainz Album Type&lt;br /&gt;
|MusicBrainz/Album Type&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|MUSICBRAINZ_RELEASEGROUPID&lt;br /&gt;
|MUSICBRAINZ RELEASE GROUP ID&lt;br /&gt;
|MUSICBRAINZ_RELEASEGROUPID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Release Group Id&lt;br /&gt;
|MusicBrainz/Release Group Id&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|ARTISTSORT&lt;br /&gt;
|TSOP&lt;br /&gt;
|ARTISTSORT&lt;br /&gt;
| &lt;br /&gt;
|WM/ArtistSortOrder&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|ALBUMARTISTSORT&lt;br /&gt;
|TS02&lt;br /&gt;
|ALBUMARTISTSORT&lt;br /&gt;
|soaa&lt;br /&gt;
|WM/AlbumArtistSortOrder&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|COMPOSERSORT&lt;br /&gt;
|TSOC&lt;br /&gt;
|COMPOSERSORT&lt;br /&gt;
|soco&lt;br /&gt;
|WM/ComposerSortOrder&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|WRITER&lt;br /&gt;
|WRITER&lt;br /&gt;
|WRITER&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|DISCSUBTITLE&lt;br /&gt;
|TSST&lt;br /&gt;
|DiscSubtitle&lt;br /&gt;
| ----:com.apple.iTunes:DISCSUBTITLE&lt;br /&gt;
|WM/SetSubTitle&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|BPM&lt;br /&gt;
|TBPM&lt;br /&gt;
|BPM&lt;br /&gt;
|tmpo&lt;br /&gt;
|WM/BeatsPerMinute&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|ORIGINALDATE or ORIGINALYEAR&lt;br /&gt;
|TDOR or TORY&lt;br /&gt;
|ORIGINALYEAR&lt;br /&gt;
| ----:com.apple.iTunes:originaldate&lt;br /&gt;
|WM/OriginalReleaseYear&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|RELEASESTATUS&lt;br /&gt;
|TXXX:MusicBrainz Album Status&lt;br /&gt;
|MUSICBRAINZ_ALBUMSTATUS&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Status&lt;br /&gt;
|MusicBrainz/Album Status&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;section end=&amp;quot;TagTable&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Top}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;{{linear-gradient|left|#f5d3ff, #12b2e7}}&amp;quot;&amp;gt;{{next|[[Adding_music_to_the_library|Scanning Music into Library]]}} &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{updated|18}}&lt;br /&gt;
[[Category:Index]]&lt;br /&gt;
[[Category:Guides]]&lt;br /&gt;
[[Category:Manual]]&lt;br /&gt;
[[Category:Karellen]]&lt;br /&gt;
[[Category:First time user]]&lt;br /&gt;
[[Category:Music library]]&lt;br /&gt;
[[Category:Advanced topics]]&lt;br /&gt;
[[Category:Quick Start Guide]]&lt;/div&gt;</summary>
		<author><name>Black eagle</name></author>
	</entry>
	<entry>
		<id>https://kodi.wiki/index.php?title=Music_tagging&amp;diff=254572</id>
		<title>Music tagging</title>
		<link rel="alternate" type="text/html" href="https://kodi.wiki/index.php?title=Music_tagging&amp;diff=254572"/>
		<updated>2025-01-26T12:29:39Z</updated>

		<summary type="html">&lt;p&gt;Black eagle: /* Supported Metadata Containers */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{MusicLibraryCreate}}&lt;br /&gt;
{{mininav|[[Music library]]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
This page provides the following information:&lt;br /&gt;
&lt;br /&gt;
*How the Music section differs from the Video section of {{kodi}}&lt;br /&gt;
*The recommended method to organise your music files &lt;br /&gt;
*The recommended method for tagging your music files&lt;br /&gt;
*Explanation of some commonly misunderstood Music File Tags&lt;br /&gt;
*The Audio Files and Tags that {{kodi}} reads and uses&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Understanding the Music Library =&lt;br /&gt;
&amp;lt;section begin=&amp;quot;understanding&amp;quot; /&amp;gt;There is a fundamental differences between video library operation and the music library operation: &lt;br /&gt;
*The video library is based on using the filenames or folder names to obtain online data. If they are incorrectly named, then there are no scraper results and there will be no library entry.&lt;br /&gt;
*&#039;&#039;&#039;The music library is based on scanning tags embedded in the music files.&#039;&#039;&#039; It ignores the folder names and structure and file names. Proper tagging is essential to ensure the library is populated correctly. Having slight variations in the tags for artist and album names could mean duplicated and unwanted entries.&amp;lt;section end=&amp;quot;understanding&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Folder and File Structure =&lt;br /&gt;
Although {{kodi}} ignores the folder structure and the names of the folders and files, the structure of your folders is important as it affects the operation of other functions such as Import/Export, nfo files and Artwork. For example, if you have all your music files in one folder (which is possible), then you lose the ability to use local nfo files, local artwork, and the import/export module will not function correctly.&lt;br /&gt;
&lt;br /&gt;
The following is {{kodi}} &#039;&#039;&#039;best practice&#039;&#039;&#039;. Remember use a layout that is nice for you, but &#039;&#039;&#039;tag accurately.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Files ==&lt;br /&gt;
Song files require suitable tagging for use in {{kodi}}. While {{kodi}} can scan minimal tags into the library, it can lead to errors in the library and subsequent scraping. We recommend music files are tagged with MusicBrainz as detailed below.&lt;br /&gt;
&lt;br /&gt;
Remember that {{kodi}} does not extract any information from the filename, so the filename is your choice.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Folders ==&lt;br /&gt;
{{kodi}} is quite flexible with the folder structure. The diagram below is an &#039;&#039;&#039;example&#039;&#039;&#039;. You should group your albums in a manner that makes sense to you.&lt;br /&gt;
&lt;br /&gt;
To ensure {{kodi}} and other add-on processes can function efficently and correctly, the following is recommended.&lt;br /&gt;
*Songs from the same album should be in the one folder&lt;br /&gt;
*If there is more than one disk in the release, each disk should be in a sub-folder containing the songs from that disk&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a typical folder structure:&lt;br /&gt;
&lt;br /&gt;
 f:\   ....................................(root)&lt;br /&gt;
  |__Artist Information  ..................(Artist Information Folder)&lt;br /&gt;
  |&lt;br /&gt;
  |__Artist Music   .......................(source folder)&lt;br /&gt;
  |  |__ Madonna   ........................(artist folder)&lt;br /&gt;
  |  |   |__ Beautiful Stranger (1999)   ..(album folder)&lt;br /&gt;
  |  |   |   |__ Song 1&lt;br /&gt;
  |  |   |   |__ Song 2&lt;br /&gt;
  |  |   |   |__ Song 3 etc&lt;br /&gt;
  |  |   |__ Bedtime Stories (1994)   .....(album folder)&lt;br /&gt;
  |  |   |   |__ Song 1&lt;br /&gt;
  |  |   |   |__ Song 2&lt;br /&gt;
  |  |   |   |__ Song 3 etc&lt;br /&gt;
  |  |   |__ Like A Prayer (1989)   .......(album folder)&lt;br /&gt;
  |  |   |   |__ Song 1&lt;br /&gt;
  |  |   |   |__ Song 2&lt;br /&gt;
  |  |   |   |__ Song 3 etc&lt;br /&gt;
  |  |__ Simply Red   .....................(artist folder)&lt;br /&gt;
  |      |__ Picture Book (1985)   ........(album folder)&lt;br /&gt;
  |          |__ Song 1&lt;br /&gt;
  |          |__ Song 2&lt;br /&gt;
  |          |__ Song 3 etc&lt;br /&gt;
  |&lt;br /&gt;
  |__Compilations   .......................(Source)&lt;br /&gt;
  |  |__ Essential Eighties   .............(album folder)&lt;br /&gt;
  |  |       |__ Song 1&lt;br /&gt;
  |  |       |__ Song 2&lt;br /&gt;
  |  |       |__ Song 3 etc&lt;br /&gt;
  |  |__ 100% Hits- Best of 2005   ........(album folder)&lt;br /&gt;
  |          |__ Song 1&lt;br /&gt;
  |          |__ Song 2&lt;br /&gt;
  |          |__ Song 3 etc&lt;br /&gt;
  |&lt;br /&gt;
  |__Classical   ..........................(Source)&lt;br /&gt;
  |&lt;br /&gt;
  |__Audiobooks   .........................(Source)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sources ==&lt;br /&gt;
A source is the parent folder that contains your media collection- in this case Music. This folder is then set as a Source in {{kodi}} which enables {{kodi}} to access your Music. &lt;br /&gt;
&lt;br /&gt;
In the diagram from the previous section &#039;&#039;Artist Music, Compilations, Classical&#039;&#039; and &#039;&#039;Audiobooks&#039;&#039; are Sources.&lt;br /&gt;
&lt;br /&gt;
Notes on naming and setting a &#039;&#039;&#039;Source&#039;&#039;&#039;:&lt;br /&gt;
*There is no limit on the number of Sources that can be used&lt;br /&gt;
*The Source names, which essentially is your folder name, can be anything that makes sense to you. The names should be unique, which makes it easier to navigate to the correct source in {{Kodi}}&lt;br /&gt;
*Larger libraries do benefit from multiple sources&lt;br /&gt;
*There is no requirement on how to separate music between Sources. Many users separate based on Genre, alphabetical listing, release type or any method you prefer&lt;br /&gt;
*If your music collection exists on multiple drives, then a Source folder is required for each drive&lt;br /&gt;
*&#039;&#039;&#039;Never&#039;&#039;&#039; mix media classes. ie, ensure TV Shows, Movies, Music Videos or Music are not in the same source, nor as a sub-folder of another source.&lt;br /&gt;
*&#039;&#039;&#039;Never&#039;&#039;&#039; set the entire hard drive as your Source as this will create multiple ghost entries.&lt;br /&gt;
&lt;br /&gt;
Setting and Scanning of Sources is covered in detail in the next step of the guide. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Tagging =&lt;br /&gt;
Most music files purchased or ripped by your favourite software have only minimal metadata embedded. Normally this is not a problem and works very well on simple music players.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{kodi}}, being an advanced and feature rich player, requires greater accuracy with the embedded tags. Any slight variance in, for example, the Album name between the tracks from the same album will see multiple entries in the library for that Album. It is not uncommon to have a single album split into three similarly named albums. Also true for Artists. It is for this reason that there is a separation of the Scanning and Scraping processes for Music. The initial scan allows you to find and correct errors in tagging, before scraping.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
This table has examples of errors in tagging, which will cause duplicated entries in the library...&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
!Similar Name 1 || Similar Name 2 || Note&lt;br /&gt;
|-&lt;br /&gt;
|György Ligeti || Gyorgy Ligeti || Accented and unaccented names will create duplicate entries&lt;br /&gt;
|-&lt;br /&gt;
|The Best of || The Very Best Of || Inconsistent naming between songs of the same album and/or artist will cause duplicated entries&lt;br /&gt;
|-&lt;br /&gt;
|Madonna || Madonnna || Spelling mistakes will cause duplicated entries for albums and/or artists&lt;br /&gt;
|-&lt;br /&gt;
|Sting || Sting and The Police || Seen as two separate and unrelated Artists&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
As {{kodi}} scans your music collection, it copies the data contained in those tags into the {{kodi}} music database. The benefits of this are:&lt;br /&gt;
*Once the scan is complete, the tags are not accessed again&lt;br /&gt;
*All information is now obtained from the database. This has the benefit of dramatically increasing efficency and speed when navigating the library.&lt;br /&gt;
*Now that a database entry exists, you are able to scrape additional information from online sources. This is covered later in the guide.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== MusicBrainz ==&lt;br /&gt;
&#039;&#039;&#039;{{kodi}} has strong support for MusicBrainz tagging. It is highly recommended that users tag their music files using MusicBrainz Picard.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;MusicBrainz Picard&#039;&#039;&#039; is the music file tagger software that can access the MusicBrainz database to locate metadata to embed into your music files. MBIDs are useful because names are not unique. The bigger and more diverse your music collection is, the more likely you will encounter Artists with the same name. &lt;br /&gt;
&lt;br /&gt;
The advantages of tagging with MusicBrainz are:&lt;br /&gt;
*They allow you to have different artists with the same name in your library e.g. &amp;quot;John Williams&amp;quot; the classical guitarist and &amp;quot;John Williams&amp;quot; the film music composer and conductor.&lt;br /&gt;
*They negate inconsistencies in artist naming e.g. having &amp;quot;Peter Tchaikovsky&amp;quot; on some albums and &amp;quot;Piotr Czajkowski&amp;quot; on others&lt;br /&gt;
*They allow you to have more than one release of an album in your library e.g. the normal and deluxe editions of an album&lt;br /&gt;
*They clearly identify the artist and album in ways that names alone can not. This can then be used to accurately scrape additional artist and album information and locate the correct artwork&lt;br /&gt;
*They allow the scraping process to be more efficient, otherwise an extra call is made to try and get an mbid first to use at the scraping sites, and each request from Musicbrainz must be throttled to 1 per sec which will slow the scraping process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Below is a screenshot of the main screen of the Picard software. A brief description of the layout as follows.&lt;br /&gt;
&lt;br /&gt;
*Top Left Box- Folder listing of your music collection&lt;br /&gt;
*Top Centre Box- Albums are dragged and dropped here in preparation for matching and tagging. Pressing &#039;&#039;Lookup&#039;&#039; (greyed out) will commence the lookup process&lt;br /&gt;
*Top Right Box- Matching albums are displayed here and your songs are overlayed. In the screenshot, songs 01, 08 and 09 have been matched to the suggested album. If all songs match and you agree the correct album was located, simply pressing Save will tag the album with the tags displayed in the Bottom Tag Box.&lt;br /&gt;
*Bottom Tag Box - Selecting a song from the Top Right Box will display all available tag fields (left column), the current tags in the music file (Original Value column) and the MusicBrainz tags to be embedded in the music file (right column).&lt;br /&gt;
&lt;br /&gt;
The example in the image below shows the following:&lt;br /&gt;
*Most tags are missing (original value column)&lt;br /&gt;
*The top three yellow entries are incorrect (original value column) and the corrections are in the right column&lt;br /&gt;
*The green entries in the right column indicate new tags to be embedded&lt;br /&gt;
*The black entries at the bottom of the list indicate no change to the existing tags as they are correct or not used by MusicBrainz.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;packed&amp;quot; widths=&amp;quot;1000px&amp;quot; heights=&amp;quot;563px&amp;quot;&amp;gt;&lt;br /&gt;
File:MusicBrainzPicard01.jpg&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Although Picard is very easy to use, you must avoid blindly accepting everything offered by the software. It is important that you confirm the correct album was located. Due to the global nature of the database, there are many releases for a single album. These releases differ between countries, usually due to copyright requirements. This may lead you to inadvertendly select the incorrect release for your album, even though it is named exactly the same. The differences between releases may be as simple as different song ordering or the inclusion of additional bonus tracks.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clear Existing Tags ==&lt;br /&gt;
For the best tagging experience set the correct options in Picard, particularly the &amp;quot;Clear Existing Tags&amp;quot; option in settings. This option means that any old tags that may cause issues are wiped, preserving only the musicbrainz tagging. It will also be wise to tag using ID3v2.4 compatibility.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;packed&amp;quot; widths=&amp;quot;500px&amp;quot; heights=&amp;quot;283px&amp;quot;&amp;gt;&lt;br /&gt;
File:Picard options.jpg&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== albumartists ==&lt;br /&gt;
{{Kodi}} requires the &#039;&#039;&#039;albumartists&#039;&#039;&#039; tag to correctly handle multiple album artists on the same album. This tag is not a default tag in MusicBrainz Picard and other tagging software. &amp;lt;ref&amp;gt; https://forum.kodi.tv/showthread.php?tid=334729&amp;amp;pid=2760161#pid2760161 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To include this tag add a new script under &#039;&#039;Options &amp;gt; Options &amp;gt; Scripting &amp;gt; Add new script&#039;&#039; and include the following code...&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
$setmulti(albumartists,%_albumartists%)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;packed&amp;quot; widths=&amp;quot;500px&amp;quot; heights=&amp;quot;283px&amp;quot;&amp;gt;&lt;br /&gt;
File:Picard Script.JPG&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the music files are tagged, avoid modifying the MusicBrainz tags unless you clearly understand the relationship of the MBID&#039;s and the other related tags. For example, embedding MBID tags, but then editing the Artist tag or Album Artist tag will result in incorrect entries in the library.&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
*If you need to change the artist or album artist tag you also have to edit the matching artist mbid tag and album artist mbid tag. &lt;br /&gt;
*If Kodi finds a release mbid it will expect the artist mbid tags to also be present.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;&#039;&#039;See: [https://musicbrainz.org/ MusicBrainz Website]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
:&#039;&#039;&#039;&#039;&#039;See: [https://picard.musicbrainz.org/ MusicBrainz Picard Software]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;center&amp;gt;{{red|&#039;&#039;&#039;The remainder of this page deals with special use cases or provides information for technical interest and reference only. It can be safely disregarded if these do not apply to you&#039;&#039;&#039;}}&amp;lt;/center&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;{{linear-gradient|left|#f5d3ff, #12b2e7}}&amp;quot;&amp;gt;{{next|[[Adding_music_to_the_library|Scanning Music into Library]]}} &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Ripping CD&#039;s =&lt;br /&gt;
{{main|Ripping CDs}}&lt;br /&gt;
{{#lst:Ripping CDs|intro}}&lt;br /&gt;
&lt;br /&gt;
There is no requirement to use the {{Kodi}} CD Ripper. If you are comfortable using other ripping software, then we recommend you continue using that software.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Cue Sheets =&lt;br /&gt;
{{#lst:Cue_sheets|intro}}&lt;br /&gt;
&lt;br /&gt;
{{kodi}} does provide basic support for using cue sheets to define individual tracks when an entire CD has been ripped into a single music file. However the information provided by  the cue sheet standard is much more limited than that of standard tagging, hence to enjoy the full music library features it is recommended that tracks are ripped into separate files and fully tagged.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{red|If you do not use Cue Sheets you can safely move onto the next step.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
;{{see also|Cue_sheets}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Streams =&lt;br /&gt;
{{#lst:Internet_video_and_audio_streams|intro}}&lt;br /&gt;
&lt;br /&gt;
;{{see also|Internet_video_and_audio_streams}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Technical Explanation: File tags =&lt;br /&gt;
For many categories, such as genres and artists, {{kodi}} supports multiple values in the one field.  By default it uses the character sequence &amp;quot; / &amp;quot; to divide the entry into multiple values.  This divider may be changed via [[advancedsettings.xml]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Resolving Compilations and Multiple Artists ==&lt;br /&gt;
{{red|Applies to v17 and below. v18 introduced the [[Artist information folder]] which solved these problems. You are encouraged to update to v18}}&lt;br /&gt;
&lt;br /&gt;
{{kodi}} reads the &#039;&#039;Album Artist&#039;&#039; tag in ID3, Ogg, APE and MP4 tags and uses it if available to assign an artist to the album (independently of the track&#039;s artist information).  This is the &amp;quot;Album Artist&amp;quot; tag (in ID3 this is represented by the &amp;quot;TPE2&amp;quot; tag; in vorbiscomment (ogg) files &amp;quot;ALBUMARTIST&amp;quot;, &amp;quot;ALBUM ARTIST&amp;quot; and &amp;quot;ENSEMBLE&amp;quot; are all supported).  Multiple artists for either a track or album artist can be specified in &amp;quot;Artist1 / Artist2 / Artist3&amp;quot; format.&lt;br /&gt;
&lt;br /&gt;
If no &#039;&#039;Album Artist&#039;&#039; tag exists, {{kodi}} will use the first (primary) artist from the tracks as the &#039;&#039;Album Artist&#039;&#039;.  Essentially we do a string comparison of all the track artists, and assign the common artists as the &#039;&#039;Album artist&#039;&#039;. This is generally the TPE1 tag in ID3.&lt;br /&gt;
&lt;br /&gt;
As many users don&#039;t yet use the &#039;&#039;Album Artist&#039;&#039; tag, {{kodi}} has an additional filter system for identifying compilation albums, where each track normally has a different artist.  As {{kodi}} scans a folder, it does the following:&lt;br /&gt;
# Identifies albums based on &#039;&#039;Album&#039;&#039; name alone in the folder and groups the songs that have the same &#039;&#039;Album&#039;&#039; name together as an album.&lt;br /&gt;
# Runs through each album&#039;s assigned songs.  If there is 2 or more tracks with the same &#039;&#039;Track&#039;&#039; number, the group of songs must come from 2 or more albums, so the &#039;&#039;Album&#039;&#039; name is ruled out as a possible compilation.&lt;br /&gt;
# If any of the songs assigned to the &#039;&#039;Album&#039;&#039; name have an &#039;&#039;Album Artist&#039;&#039; tag, then {{kodi}} assumes the user knows what they&#039;re doing, and this album is also ruled out from being a compilation.&lt;br /&gt;
# If two or more songs assigned to the &#039;&#039;Album&#039;&#039; name then have different primary artists, then the &#039;&#039;Album&#039;&#039; name is considered to be a group of songs from a compilation, and the &#039;&#039;Various Artists&#039;&#039;&amp;quot; tag is assigned as the album artist.&lt;br /&gt;
# Otherwise, if all the songs have the same primary artist but don&#039;t have the same full artist list (eg a song or two has an additional artist) then the album is assigned the primary artist as it&#039;s &#039;&#039;Album Artist&#039;&#039;, and we assume the additional artists are guest artists.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ratings in ID3 tags ==&lt;br /&gt;
Ratings in ID3 tags are read via the POPM field, and (if this doesn&#039;t exist) in a custom (TXXX) field named &amp;quot;RATING&amp;quot;.  For the RATING field, we accept 1-5 as valid ratings.  For the POPM field things are more complicated, as there is no established standard in place.  We currently most closely respect what Mediamonkey does, and also have some support for what Windows Media Player 11 does.  The POPM tag takes a value from 0..255, with 0 meaning no rating, 1 the worst, and 255 the best.  We currently map these as follows:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
!&#039;&#039;&#039;POPM value&#039;&#039;&#039; || &#039;&#039;&#039;Star rating&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|0 ||&lt;br /&gt;
|- &lt;br /&gt;
|1 || &#039;&#039;&#039;*&#039;&#039;&#039; This is a special case for Windows Media Player&lt;br /&gt;
|- &lt;br /&gt;
| 2-8 || &lt;br /&gt;
|- &lt;br /&gt;
|9-49 || &#039;&#039;&#039;*&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|50-113 ||&#039;&#039;&#039;**&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|114-167 || &#039;&#039;&#039;***&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|168-218 || &#039;&#039;&#039;****&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|219-255 ||&#039;&#039;&#039;*****&#039;&#039;&#039;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Audio Formats &amp;amp; Tags =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Supported Audio Formats ==&lt;br /&gt;
Although the list of playable formats is quite comprehensive, it is not accurate to say that every {{kodi}} installation will play every format. The ability to play some of the more obscure formats will depend upon the version of {{kodi}} and the operating system in use. Some formats will require the installation of add-ons.&lt;br /&gt;
&lt;br /&gt;
{{#lst:Advancedsettings.xml|musicextensions}}&lt;br /&gt;
&lt;br /&gt;
;{{See also|Advancedsettings.xml}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Supported Metadata Containers ==&lt;br /&gt;
The following metadata containers are supported by {{kodi}}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Metadata Container || Note&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:APEv2 tag|APEv2 tag]] ||&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:Advanced_Systems_Format|ASF]] ||&lt;br /&gt;
|-&lt;br /&gt;
|Generic Tag || A generic tag for basic data from other odd file types&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:ID3|ID3]] || v1, v2.3 and v2.4&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:MPEG-4 Part 14#Metadata|MP4]] ||&lt;br /&gt;
|-&lt;br /&gt;
|[https://xiph.org/ Xiph.org] || Vorbis Comments ||&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:matroska|mka]] || See below for tag spec&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Common File &amp;amp; Tag Combination ==&lt;br /&gt;
You will notice that not all the tags listed in the section &#039;&#039;Supported Audio Formats&#039;&#039; above are listed in the following table. Those formats that are ommitted do not have provision to support embedded tags. If your collection contains any of these unsupported formats, you will be unable to scan the music into the library. Your options are:&lt;br /&gt;
#Convert your audio file to a supported format and tag using MusicBrainz Picard. (recommended)&lt;br /&gt;
#Access your music via the File Manager or via File View&lt;br /&gt;
&lt;br /&gt;
{{kodi}} supports the following common Audio File and Tag Formats &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!| Metadata container&lt;br /&gt;
!| Additional Filename extensions&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:APEv2 tag|APEv2 tag]] || ape, mp3, aac, wv, mpc&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:Advanced_Systems_Format|ASF]] || asf, wmv, wma&lt;br /&gt;
|-&lt;br /&gt;
| Generic Tag || it, mod, module, nst, wow, s3m, xm&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:ID3|ID3 v1]] || mp3, aac&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:ID3|ID3 v2]] || mp3, aac, tta, aif, aiff, wav, flac&lt;br /&gt;
|-&lt;br /&gt;
| iTunes [[wikipedia:MPEG-4 Part 14#Metadata|MP4]] || .3g2 .m4a .m4b .m4p .m4r .m4v .mp4&lt;br /&gt;
|-&lt;br /&gt;
|[https://xiph.org/ Xiph.org] || flac, oga, ogg, opus&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Note:&lt;br /&gt;
*FLAC files- xiph tags override id3v2 tags &lt;br /&gt;
*mp3 files can have either id3 or APE tags&lt;br /&gt;
*mka, dsf, dff - ID3v2 format read but are handled by ffmpeg tag reader and it does not support all tags from IDE standard)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Tags {{kodi}} reads ==&lt;br /&gt;
{{kodi}} will scan the following tags embedded in the music file. The column &#039;&#039;{{kodi}} Version&#039;&#039; indicates the version of {{kodi}} that the tag was introduced, and will work in subsequent versions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=&amp;quot;TagTable&amp;quot; /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align:left;&amp;quot;| {{kodi}} Version&lt;br /&gt;
! Vorbis (.Flac)&lt;br /&gt;
! ID3v2 (.mp3)&lt;br /&gt;
! APE&lt;br /&gt;
! MP4&lt;br /&gt;
! ASF&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ARTIST&lt;br /&gt;
|TPE1&lt;br /&gt;
|ARTIST&lt;br /&gt;
|\251ART&lt;br /&gt;
|Author&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ARTISTS&lt;br /&gt;
|ARTISTS&lt;br /&gt;
|ARTISTS&lt;br /&gt;
| ----:com.apple.iTunes:ARTISTS&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ALBUMARTIST  or ALBUM ARTIST&lt;br /&gt;
|TPE2 OR ALBUMARTIST or ALBUM ARTIST&lt;br /&gt;
|ALBUMARTIST  or ALBUM ARTIST&lt;br /&gt;
|aART&lt;br /&gt;
|WM/AlbumArtist&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ALBUMARTISTS or ALBUM ARTISTS&lt;br /&gt;
|ALBUMARTISTS or ALBUM ARTISTS&lt;br /&gt;
|ALBUMARTISTS or ALBUM ARTISTS&lt;br /&gt;
| ----:com.apple.iTunes:ALBUMARTISTS&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ALBUM&lt;br /&gt;
|TALB&lt;br /&gt;
|ALBUM&lt;br /&gt;
|\251alb&lt;br /&gt;
|WM/AlbumTitle&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|TITLE&lt;br /&gt;
|TIT2&lt;br /&gt;
|TITLE&lt;br /&gt;
|\251nam&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|TRACKNUMBER&lt;br /&gt;
|TRCK&lt;br /&gt;
|TRACKNUMBER or TRACK&lt;br /&gt;
|trkn&lt;br /&gt;
|WM/TrackNumber or WM/Track&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|DISCNUMBER&lt;br /&gt;
|TPOS&lt;br /&gt;
|DISCNUMBER or DISC&lt;br /&gt;
|disk&lt;br /&gt;
|WM/PartOfSet&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|YEAR&lt;br /&gt;
|TYER&lt;br /&gt;
|YEAR&lt;br /&gt;
|\251day&lt;br /&gt;
|WM/Year&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|DATE&lt;br /&gt;
|TDRC, TDRL&lt;br /&gt;
|DATE&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|GENRE&lt;br /&gt;
|TCON&lt;br /&gt;
|GENRE&lt;br /&gt;
|\251gen&lt;br /&gt;
|WM/Genre&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MOOD&lt;br /&gt;
|TMOO OR TXXX:MOOD&lt;br /&gt;
|MOOD&lt;br /&gt;
| ----:com.apple.iTunes:MOOD&lt;br /&gt;
|WM/Mood&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|COMMENT&lt;br /&gt;
|COMM&lt;br /&gt;
|COMMENT&lt;br /&gt;
|\251cmt&lt;br /&gt;
|(COMMENT)&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|CUESHEET&lt;br /&gt;
|&lt;br /&gt;
|CUESHEET&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|COMPILATION&lt;br /&gt;
|TCMP&lt;br /&gt;
|COMPILATION&lt;br /&gt;
|cpil&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|LYRICS&lt;br /&gt;
|USLT&lt;br /&gt;
|LYRICS&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_TRACK_GAIN&lt;br /&gt;
|REPLAYGAIN_TRACK_GAIN&lt;br /&gt;
|REPLAYGAIN_TRACK_GAIN&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_track_gain&lt;br /&gt;
|replaygain_track_gain&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_ALBUM_GAIN&lt;br /&gt;
|REPLAYGAIN_ALBUM_GAIN&lt;br /&gt;
|REPLAYGAIN_ALBUM_GAIN&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_album_gain&lt;br /&gt;
|replaygain_album_gain&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_TRACK_PEAK&lt;br /&gt;
|REPLAYGAIN_TRACK_PEAK&lt;br /&gt;
|REPLAYGAIN_TRACK_PEAK&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_track_peak&lt;br /&gt;
|replaygain_track_peak&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_album_peak&lt;br /&gt;
|replaygain_album_peak&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_album_peak&lt;br /&gt;
|replaygain_album_peak&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ARTISTID&lt;br /&gt;
|MUSICBRAINZ ARTIST ID&lt;br /&gt;
|MUSICBRAINZ_ARTISTID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Artist Id&lt;br /&gt;
|MusicBrainz/Artist Id&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTISTID&lt;br /&gt;
|MUSICBRAINZ ALBUM ARTIST ID&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTISTID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Artist Id&lt;br /&gt;
|MusicBrainz/Album Artist Id&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTIST&lt;br /&gt;
|MUSICBRAINZ ALBUM ARTIST&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTIST&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Artist&lt;br /&gt;
|MusicBrainz/Album Artist&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ALBUMID&lt;br /&gt;
|MUSICBRAINZ ALBUM ID&lt;br /&gt;
|MUSICBRAINZ_ALBUMID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Id&lt;br /&gt;
|MusicBrainz/Album Id&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_TRACKID&lt;br /&gt;
|UFID&lt;br /&gt;
|MUSICBRAINZ_TRACKID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Track Id&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|RATING&lt;br /&gt;
|POPM&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|METADATA_BLOCK_PICTURE or COVERART or COVERARTMIME&lt;br /&gt;
|APIC&lt;br /&gt;
|&lt;br /&gt;
|covr&lt;br /&gt;
|WM/Picture&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|COMPOSER&lt;br /&gt;
|TCOM&lt;br /&gt;
|COMPOSER&lt;br /&gt;
|\251wrt&lt;br /&gt;
|WM/Composer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|CONDUCTOR&lt;br /&gt;
|TPE3&lt;br /&gt;
|CONDUCTOR&lt;br /&gt;
| ----:com.apple.iTunes:CONDUCTOR&lt;br /&gt;
|WM/Conductor&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|LYRICIST&lt;br /&gt;
|TEXT&lt;br /&gt;
|LYRICIST&lt;br /&gt;
| ----:com.apple.iTunes:LYRICIST&lt;br /&gt;
|WM/Writer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|REMIXER or MIXARTIST&lt;br /&gt;
|TPE4&lt;br /&gt;
|REMIXER or MIXARTIST&lt;br /&gt;
| ----:com.apple.iTunes:REMIXER&lt;br /&gt;
|WM/ModifiedBy&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|ENSEMBLE&lt;br /&gt;
|(TIPL) or TXXX:Ensemble&lt;br /&gt;
|ENSEMBLE&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|ARRANGER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|ARRANGER&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|ENGINEER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|ENGINEER&lt;br /&gt;
| ----:com.apple.iTunes:ENGINEER&lt;br /&gt;
|WM/Engineer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|PRODUCER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|PRODUCER&lt;br /&gt;
| ----:com.apple.iTunes:PRODUCER&lt;br /&gt;
|WM/Producer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|DJMIXER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|DJMIXER&lt;br /&gt;
| ----:com.apple.iTunes:DJMIXER&lt;br /&gt;
|WM/DJMixer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|MIXER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|MIXER&lt;br /&gt;
| ----:com.apple.iTunes:MIXER&lt;br /&gt;
|WM/Mixer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|PERFORMER&lt;br /&gt;
|TMCL&lt;br /&gt;
|PERFORMER&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|LABEL&lt;br /&gt;
|TPUB&lt;br /&gt;
|LABEL&lt;br /&gt;
| ----:com.apple.iTunes:LABEL&lt;br /&gt;
|WM/Publisher&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|RELEASETYPE&lt;br /&gt;
|MUSICBRAINZ ALBUM TYPE&lt;br /&gt;
|MUSICBRAINZ_ALBUMTYPE&lt;br /&gt;
| ---:com.apple.iTunes:MusicBrainz Album Type&lt;br /&gt;
|MusicBrainz/Album Type&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|MUSICBRAINZ_RELEASEGROUPID&lt;br /&gt;
|MUSICBRAINZ RELEASE GROUP ID&lt;br /&gt;
|MUSICBRAINZ_RELEASEGROUPID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Release Group Id&lt;br /&gt;
|MusicBrainz/Release Group Id&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|ARTISTSORT&lt;br /&gt;
|TSOP&lt;br /&gt;
|ARTISTSORT&lt;br /&gt;
| &lt;br /&gt;
|WM/ArtistSortOrder&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|ALBUMARTISTSORT&lt;br /&gt;
|TS02&lt;br /&gt;
|ALBUMARTISTSORT&lt;br /&gt;
|soaa&lt;br /&gt;
|WM/AlbumArtistSortOrder&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|COMPOSERSORT&lt;br /&gt;
|TSOC&lt;br /&gt;
|COMPOSERSORT&lt;br /&gt;
|soco&lt;br /&gt;
|WM/ComposerSortOrder&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|WRITER&lt;br /&gt;
|WRITER&lt;br /&gt;
|WRITER&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|DISCSUBTITLE&lt;br /&gt;
|TSST&lt;br /&gt;
|DiscSubtitle&lt;br /&gt;
| ----:com.apple.iTunes:DISCSUBTITLE&lt;br /&gt;
|WM/SetSubTitle&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|BPM&lt;br /&gt;
|TBPM&lt;br /&gt;
|BPM&lt;br /&gt;
|tmpo&lt;br /&gt;
|WM/BeatsPerMinute&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|ORIGINALDATE or ORIGINALYEAR&lt;br /&gt;
|TDOR or TORY&lt;br /&gt;
|ORIGINALYEAR&lt;br /&gt;
| ----:com.apple.iTunes:originaldate&lt;br /&gt;
|WM/OriginalReleaseYear&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|RELEASESTATUS&lt;br /&gt;
|TXXX:MusicBrainz Album Status&lt;br /&gt;
|MUSICBRAINZ_ALBUMSTATUS&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Status&lt;br /&gt;
|MusicBrainz/Album Status&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;section end=&amp;quot;TagTable&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Top}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;{{linear-gradient|left|#f5d3ff, #12b2e7}}&amp;quot;&amp;gt;{{next|[[Adding_music_to_the_library|Scanning Music into Library]]}} &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{updated|18}}&lt;br /&gt;
[[Category:Index]]&lt;br /&gt;
[[Category:Guides]]&lt;br /&gt;
[[Category:Manual]]&lt;br /&gt;
[[Category:Karellen]]&lt;br /&gt;
[[Category:First time user]]&lt;br /&gt;
[[Category:Music library]]&lt;br /&gt;
[[Category:Advanced topics]]&lt;br /&gt;
[[Category:Quick Start Guide]]&lt;/div&gt;</summary>
		<author><name>Black eagle</name></author>
	</entry>
	<entry>
		<id>https://kodi.wiki/index.php?title=Advancedsettings.xml&amp;diff=253236</id>
		<title>Advancedsettings.xml</title>
		<link rel="alternate" type="text/html" href="https://kodi.wiki/index.php?title=Advancedsettings.xml&amp;diff=253236"/>
		<updated>2024-08-02T07:22:13Z</updated>

		<summary type="html">&lt;p&gt;Black eagle: /* musiclibrary */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC right}}{{mininav|[[Settings]]|page=advancedsettings.xml}}&lt;br /&gt;
{{bigger|{{note|&#039;&#039;&#039;The advancedsettings.xml file does not exist by default. You have to create it first!&#039;&#039;&#039;}} }}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=&amp;quot;intro&amp;quot; /&amp;gt;The [[advancedsettings.xml]] file, which does not exist by default, can be created by a user in their &#039;&#039;&#039;[[Userdata|userdata folder]]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
This file is used for advanced settings and options that do not have GUI controls inside of {{kodi}}. Some settings are experimental or very rarely set, so they can only be used via the advancedsettings.xml file. The file is simply a plain text file and can be edited by various text editors, so long as the name is &amp;quot;advancedsettings.xml&amp;quot;. These advanced settings can be used to tweak various things such as episode naming patterns, special network ports, special behaviors, and more.&amp;lt;section end=&amp;quot;intro&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following page will describe the structure of the advancedsettings.xml file and the various individual settings.&lt;br /&gt;
&lt;br /&gt;
{{note|&lt;br /&gt;
# All XML tags must be lowercase. The start and end of the advancedsettings.xml file must have the &amp;lt;advancedsettings&amp;gt; and &amp;lt;/advancedsettings&amp;gt; tags.&lt;br /&gt;
# Kodi will only read the advancedsettings.xml file when it starts up. If you make changes while it is running then you must restart Kodi.&lt;br /&gt;
# For some Windows versions, Kodi has two &amp;lt;code&amp;gt;\userdata\&amp;lt;/code&amp;gt; folders. The correct one to put the advancedsettings.xml file in is not the one in Program Files, but in &amp;lt;code&amp;gt;%appdata%\Kodi\userdata\.&amp;lt;/code&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
== Layout ==&lt;br /&gt;
&lt;br /&gt;
The layout of &amp;lt;code&amp;gt;advancedsettings.xml&amp;lt;/code&amp;gt; is as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;advancedsettings version=&amp;quot;1.0&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;setting&amp;gt;value&amp;lt;/setting&amp;gt;&lt;br /&gt;
    ...&lt;br /&gt;
    &amp;lt;setting&amp;gt;value&amp;lt;/setting&amp;gt;&lt;br /&gt;
&amp;lt;/advancedsettings&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;quot;setting&amp;quot; gives the name of the setting, and &amp;quot;value&amp;quot; gives its value.&lt;br /&gt;
&lt;br /&gt;
A list of the available &amp;quot;setting&amp;quot; strings and their values is given below.&lt;br /&gt;
&lt;br /&gt;
= List of available settings =&lt;br /&gt;
List of available settings that are recognised in the advancedsettings.xml file &amp;lt;ref&amp;gt;https://github.com/xbmc/xbmc/blob/master/xbmc/settings/AdvancedSettings.cpp&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Recommended: Use the table of contents or the search function in your browser to locate items.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting settings ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== loglevel ===&lt;br /&gt;
{{Anchor|.3Cloglevel.3E}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=&amp;quot;loglevel&amp;quot; /&amp;gt;&lt;br /&gt;
Sets the logging level used to log errors and information. The &amp;quot;hide&amp;quot; attribute is optional. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;loglevel hide=&amp;quot;attribute&amp;quot;&amp;gt;options&amp;lt;/loglevel&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;mw-collapsible mw-collapsed wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width:100px;&amp;quot; | Attribute&lt;br /&gt;
! style=&amp;quot;width:500px;&amp;quot; | Action&lt;br /&gt;
|-&lt;br /&gt;
! &#039;&#039;&#039;true&#039;&#039;&#039; &lt;br /&gt;
| Hides the &amp;quot;enable debugging&amp;quot; setting in the Settings page. (default)&lt;br /&gt;
|-&lt;br /&gt;
! &#039;&#039;&#039;false&#039;&#039;&#039;&lt;br /&gt;
| Allows &amp;quot;enable debugging&amp;quot; setting to switch between &#039;&#039;&#039;0&#039;&#039;&#039; and &#039;&#039;&#039;2&#039;&#039;&#039;.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;mw-collapsible mw-collapsed wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width:100px;&amp;quot; | Option&lt;br /&gt;
! style=&amp;quot;width:500px;&amp;quot; | Action&lt;br /&gt;
|-&lt;br /&gt;
! &#039;&#039;&#039;-1&#039;&#039;&#039;&lt;br /&gt;
| No logging, suppresses all log output &lt;br /&gt;
|-&lt;br /&gt;
! &#039;&#039;&#039;0&#039;&#039;&#039;&lt;br /&gt;
| Normal logging, only logging errors (default)&lt;br /&gt;
|-&lt;br /&gt;
! &#039;&#039;&#039;1&#039;&#039;&#039;&lt;br /&gt;
| Debug logging with freemem, fps and cpu usage (no on screen)&lt;br /&gt;
|-&lt;br /&gt;
! &#039;&#039;&#039;2&#039;&#039;&#039; &lt;br /&gt;
| Same as 1 (with on screen display)&lt;br /&gt;
|-&lt;br /&gt;
! &#039;&#039;&#039;3&#039;&#039;&#039; &lt;br /&gt;
| Same as 1 + full smb logging&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width:100px;&amp;quot; | Example &lt;br /&gt;
! style=&amp;quot;width:500px;&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
! Example 1:&lt;br /&gt;
|&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;advancedsettings version=&amp;quot;1.0&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;loglevel&amp;gt;2&amp;lt;/loglevel&amp;gt;  &lt;br /&gt;
&amp;lt;/advancedsettings&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! Example 2:&lt;br /&gt;
|&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;advancedsettings version=&amp;quot;1.0&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;loglevel hide=&amp;quot;true&amp;quot;&amp;gt;2&amp;lt;/loglevel&amp;gt;&lt;br /&gt;
&amp;lt;/advancedsettings&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; The setting is persistent through shutdown and restarts.&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; If debugging is enabled in the GUI, loglevel will be set to &#039;&#039;&#039;2&#039;&#039;&#039;. This will over-ride the &amp;lt;code&amp;gt;advancedsettings.xml&amp;lt;/code&amp;gt; setting. You must disable the GUI Setting before adding the entry to &amp;lt;code&amp;gt;advancedsettings.xml&amp;lt;/code&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;section end=&amp;quot;loglevel&amp;quot; /&amp;gt;&lt;br /&gt;
:&#039;&#039;{{see also|Log_file|label 1=Debug Log}}&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== jsonrpc ===&lt;br /&gt;
{{Anchor|.3Cjsonrpc.3E}}&lt;br /&gt;
To make it easier for developers using the [[JSON-RPC_API]] API in their (third party) applications to debug during development the json output of Kodi can be prettified by setting &#039;&#039;&#039;compactoutput&#039;&#039;&#039; to &#039;&#039;&#039;false&#039;&#039;&#039;. Default json output mode is a compact print which does not contain any unnecessary whitespaces and therefore is difficult to read for humans.&lt;br /&gt;
Furthermore using the &#039;&#039;&#039;tcpport&#039;&#039;&#039; setting it is possible to change the default TCP port used by Kodi for JSON RPC (which is 9090) to any other valid port.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;jsonrpc&amp;gt;&lt;br /&gt;
    &amp;lt;compactoutput&amp;gt;false&amp;lt;/compactoutput&amp;gt;&lt;br /&gt;
    &amp;lt;tcpport&amp;gt;9999&amp;lt;/tcpport&amp;gt;&lt;br /&gt;
&amp;lt;/jsonrpc&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Audio/video playback settings ==&lt;br /&gt;
&lt;br /&gt;
=== skiploopfilter ===&lt;br /&gt;
{{anchor|.3Cskiploopfilter.3E}}&lt;br /&gt;
The amount of the loop filter to skip on h.264 decoding.  This can help the performance of slower machines when decoding h264 content.  Values, in decreasing CPU usage (and decreasing quality)&lt;br /&gt;
* -16 None&lt;br /&gt;
* 0 Skip only empty frames (default)&lt;br /&gt;
* 8 Skip non-reference frames&lt;br /&gt;
* 16 Skip bi-dir frames&lt;br /&gt;
* 32 Skip all non-key frames&lt;br /&gt;
* 48 Skip all frames&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;skiploopfilter&amp;gt;8&amp;lt;/skiploopfilter&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== video ===&lt;br /&gt;
{{anchor|.3Cvideo.3E}}&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;video&amp;gt; section also includes the following child-tags, which have their own sections:&lt;br /&gt;
*[[#cleandatetime]]&lt;br /&gt;
*[[#cleanstrings]]&lt;br /&gt;
*[[#excludefromscan]]&lt;br /&gt;
*[[#excludefromlisting]]&lt;br /&gt;
*[[#excludetvshowsfromscan]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{note|Some tags that have a &amp;quot;third-level&amp;quot; and are grouped together are highlighted in color.}}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
! Tag !! Description&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
&amp;lt;video&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Parent tag that all other child tags need to be placed inside of. Do not use more than one &#039;&#039;&#039;&amp;lt;code&amp;gt;&amp;lt;video&amp;gt;&amp;lt;/code&amp;gt;&#039;&#039;&#039; tag, but instead place all other child-tags within a single &#039;&#039;&#039;&amp;lt;code&amp;gt;&amp;lt;video&amp;gt;&amp;lt;/video&amp;gt;&amp;lt;/code&amp;gt;&#039;&#039;&#039; set.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;subsdelayrange&amp;gt;10&amp;lt;/subsdelayrange&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Delay range for subtitles, in seconds.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;maxtempo&amp;gt;2.1&amp;lt;/maxtempo&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Allow further increase of playback speed over the default of 1.5&amp;lt;br&amp;gt;&lt;br /&gt;
maxtempo must be in the range of 1.5 to 2.1 &amp;lt;br&amp;gt;&lt;br /&gt;
Be aware of the limitations of your platform / hardware as not all are capable of the increased maxtempo &amp;lt;ref&amp;gt;https://forum.kodi.tv/showthread.php?tid=10023&amp;amp;pid=2795069#pid2795069&amp;lt;/ref&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;audiodelayrange&amp;gt;10&amp;lt;/audiodelayrange&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Delay range for audio/video sync, in seconds.&lt;br /&gt;
|- &lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;usetimeseeking&amp;gt;true&amp;lt;/usetimeseeking&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Whether to use time based or percentage based seeking. {{small see also|Skip steps}}&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;timeseekforwardbig&amp;gt;600&amp;lt;/timeseekforwardbig&amp;gt;&lt;br /&gt;
  &amp;lt;timeseekbackwardbig&amp;gt;-600&amp;lt;/timeseekbackwardbig&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Time to seek forward in seconds when doing a long seek.  Defaults to 600 (10 minutes) and -600 (-10 minutes) respectively. &#039;&#039;{{small|See also: [[Skip steps]] }}&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;percentseekforward&amp;gt;2&amp;lt;/percentseekforward&amp;gt;&lt;br /&gt;
  &amp;lt;percentseekbackward&amp;gt;-2&amp;lt;/percentseekbackward&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Amount to seek forward as a percentage, when doing a short seek.  Defaults to 2 (2%) and -2 (2%) respectively. &#039;&#039;{{small|See also: [[Skip steps]] }}&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;percentseekforwardbig&amp;gt;10&amp;lt;/percentseekforwardbig&amp;gt;&lt;br /&gt;
  &amp;lt;percentseekbackwardbig&amp;gt;-10&amp;lt;/percentseekbackwardbig&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Amount to seek forward as a percentage, when doing a long seek.  Defaults to 10 (10%) and -10 (10%) respectively. &#039;&#039;{{small|See also: [[Skip steps]] }}&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;fullscreenonmoviestart&amp;gt;true&amp;lt;/fullscreenonmoviestart&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Whether to go to fullscreen or not when starting a movie. Defaults to true.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;defaultplayer&amp;gt;VideoPlayer&amp;lt;/defaultplayer&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Set the default video player: VideoPlayer or an external player. See &#039;&#039;&#039;[[External players]]&#039;&#039;&#039; for more info.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;excludefromscan&amp;gt;&lt;br /&gt;
    &amp;lt;regexp&amp;gt;[-\._ ](sample|trailer)[-\._ ]&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;/excludefromscan&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Regular expressions that if evaluated to true won&#039;t be added to library.  It is possible to add multiple &amp;lt;code&amp;gt;&amp;lt;regexp&amp;gt;&amp;lt;/code&amp;gt; tags to match multiple patterns&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;excludefromlisting&amp;gt;&lt;br /&gt;
    &amp;lt;regexp&amp;gt;[-\._ ](sample|trailer)[-\._ ]&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;/excludefromlisting&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Regular expressions that if evaluated to true won&#039;t be displayed in files view.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;playcountminimumpercent&amp;gt;90&amp;lt;/playcountminimumpercent&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Minimum percentage that has to be played before it is marked as watched. Set to 101 to never auto-mark items as watched. &#039;&#039;{{small|See also: [[HOW-TO:Modify automatic watch and resume points]] }}&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;ignoresecondsatstart&amp;gt;180&amp;lt;/ignoresecondsatstart&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Number of seconds to ignore at video start after which a resume point is created. &#039;&#039;{{small|See also: [[HOW-TO:Modify automatic watch and resume points]] }}&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;ignorepercentatend&amp;gt;8&amp;lt;/ignorepercentatend&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Percentage of video to ignore at the end. If you stop watching the video here no resume point is created. Set to 101 to never save a resume point. The video is already marked as watched at 90%, see above. &#039;&#039;{{small|See also: [[HOW-TO:Modify automatic watch and resume points]] }}&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;vdpauscaling&amp;gt;true&amp;lt;/vdpauscaling&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Scales with vdpau instead of opengl and turns on its HQ scaler when available, enabling this might slow down rendering and cause framedrops especially on ION systems, this setting requires a vdpau feature set C GPU.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;ppffmpegdeinterlacing&amp;gt;linblenddeint&amp;lt;/ppffmpegdeinterlacing&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Override the deinterlacing options passed to libpostproc.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;ppffmpegpostprocessing&amp;gt;ha:128:7,va,dr&amp;lt;/ppffmpegpostprocessing&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Override the post processing options passed to libpostproc when &#039;Video post-processing&#039; is activated in GUI Videos-Settings-Playback.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;autoscalemaxfps&amp;gt;30&amp;lt;/autoscalemaxfps&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| When scaling method is set to auto, bilinear is chosen when the fps is higher than this limit, the default is 30.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;adjustrefreshrate&amp;gt; &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#CADCFB;&amp;quot; | Settings for when &amp;quot;Adjust refreshrate to match video fps&amp;quot; is enabled in the video playback GUI settings.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
    &amp;lt;override&amp;gt;&lt;br /&gt;
      &amp;lt;fps&amp;gt;23.976&amp;lt;/fps&amp;gt;&lt;br /&gt;
      &amp;lt;refresh&amp;gt;60.0&amp;lt;/refresh&amp;gt;&lt;br /&gt;
    &amp;lt;/override&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#CADCFB;&amp;quot; | &#039;&#039;&#039;Example -&#039;&#039;&#039; &amp;quot;Adjust refreshrate to match video fps&amp;quot; will try to select the best refreshrate for the video fps but it doesn&#039;t always get it right, for example it might switch to an unsupported refreshrate. You can add overrides here to switch to a certain refreshrate based on video fps. It&#039;s possible to add as many overrides as you need.  Overrides are processed in order, if the first one doesn&#039;t match the fps or no refreshrates match that override, it will try the next one until no overrides are left.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;fps&#039;&#039;&#039; - if the fps is between 23.966 and 23.986&lt;br /&gt;
* &#039;&#039;&#039;refresh&#039;&#039;&#039; - switch to the first found refreshrate that is between 59.99 and 60.01&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
    &amp;lt;override&amp;gt;&lt;br /&gt;
      &amp;lt;fpsmin&amp;gt;29.96&amp;lt;/fpsmin&amp;gt;&lt;br /&gt;
      &amp;lt;fpsmax&amp;gt;30.01&amp;lt;/fpsmax&amp;gt;&lt;br /&gt;
      &amp;lt;refreshmin&amp;gt;59.0&amp;lt;/refreshmin&amp;gt;&lt;br /&gt;
      &amp;lt;refreshmax&amp;gt;61.0&amp;lt;/refreshmax&amp;gt;&lt;br /&gt;
    &amp;lt;/override&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#CADCFB;&amp;quot; | &#039;&#039;&#039;Example -&#039;&#039;&#039; &lt;br /&gt;
* &#039;&#039;&#039;fpsmin&#039;&#039;&#039; / &#039;&#039;&#039;fpsmin&#039;&#039;&#039; - You can also specify the fps range yourself.&lt;br /&gt;
* &#039;&#039;&#039;refreshmin&#039;&#039;&#039; / &#039;&#039;&#039;refreshmax&#039;&#039;&#039; - Same for the refreshrate&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
    &amp;lt;fallback&amp;gt;&lt;br /&gt;
      &amp;lt;refresh&amp;gt;50.0&amp;lt;/refresh&amp;gt;&lt;br /&gt;
    &amp;lt;/fallback&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#CADCFB;&amp;quot; | &#039;&#039;&#039;Example -&#039;&#039;&#039; If none of the overrides match, or none of the refreshrates match any of the fps matching overrides, it will choose a fallback refreshrate. Fallbacks are process in order, if the first fallback doesn&#039;t match any refreshrate, it will try the next one until no fallbacks are left.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;refresh&#039;&#039;&#039; - Switch to the first found refreshrate that is between 49.99 and 50.01.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
    &amp;lt;fallback&amp;gt;&lt;br /&gt;
      &amp;lt;refreshmin&amp;gt;49.0&amp;lt;/refreshmin&amp;gt;&lt;br /&gt;
      &amp;lt;refreshmax&amp;gt;51.0&amp;lt;/refreshmax&amp;gt;&lt;br /&gt;
    &amp;lt;/fallback&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#CADCFB;&amp;quot; | &#039;&#039;&#039;Example -&#039;&#039;&#039; You can also specify the range for the fallback yourself.&lt;br /&gt;
&lt;br /&gt;
If none of the overrides match the video fps, or no refreshrates match any of the fps matching overrides, and no fallbacks are specified or no refreshrates match any fallbacks, it will automatically choose the best refreshrate (same as having no overrides and fallbacks).&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;/adjustrefreshrate&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#CADCFB;&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;checkdxvacompatibility&amp;gt;value&amp;lt;/checkdxvacompatibility&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Advanced setting not present: let Kodi autodetect cards that support H.264 profile &amp;gt; L4.1. Set value to false to enable DXVA no matter what. Set value to true if Kodi doesn&#039;t autodetect that the graphics card doesn&#039;t support &amp;gt; L4.1.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;useocclusionquery&amp;gt;-1&amp;lt;/useocclusionquery&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Use an occlusion query when capturing videoframes, -1 means auto detect, 0 means disabled, 1 means enabled, the default is -1.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;fpsdetect&amp;gt;1&amp;lt;/fpsdetect&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| FPS detection for video playback&lt;br /&gt;
* 0 = trust codec fps&lt;br /&gt;
* 1 = recalculate from video timestamps with uniform spacing&lt;br /&gt;
* 2 = recalculate from video timestamps always&lt;br /&gt;
|- &lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;latency&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#F0E68C;&amp;quot;| Start of &#039;&#039;&#039;latency&#039;&#039;&#039; tags. Display latency (video lag). Latency is given in msecs.&lt;br /&gt;
|- &lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
    &amp;lt;delay&amp;gt;0&amp;lt;/delay&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#F0E68C;&amp;quot; | Global default display latency.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
    &amp;lt;refresh&amp;gt;&amp;lt;/refresh&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#F0E68C;&amp;quot; | Override latency for given display (not video) refresh rates. When Kodi is in windowed mode, override is ignored. Multiple overrides are allowed.&lt;br /&gt;
&lt;br /&gt;
Syntax of an override entry:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
&amp;lt;refresh&amp;gt;&lt;br /&gt;
  &amp;lt;min&amp;gt;, &amp;lt;max&amp;gt; refresh rate range, OR&lt;br /&gt;
  &amp;lt;rate&amp;gt; exact refresh rate&lt;br /&gt;
  &amp;lt;delay&amp;gt; display latency for the given refresh rate&lt;br /&gt;
&amp;lt;/refresh&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
    &amp;lt;refresh&amp;gt;&lt;br /&gt;
      &amp;lt;min&amp;gt;23&amp;lt;/min&amp;gt;&lt;br /&gt;
      &amp;lt;max&amp;gt;24&amp;lt;/max&amp;gt;&lt;br /&gt;
      &amp;lt;delay&amp;gt;125&amp;lt;/delay&amp;gt;&lt;br /&gt;
    &amp;lt;/refresh&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#F0E68C;&amp;quot; | &#039;&#039;&#039;Example:&#039;&#039;&#039; display has 125 msec latency at 23-24 Hz&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
    &amp;lt;refresh&amp;gt;&lt;br /&gt;
      &amp;lt;rate&amp;gt;50&amp;lt;/rate&amp;gt;&lt;br /&gt;
      &amp;lt;delay&amp;gt;50&amp;lt;/delay&amp;gt;&lt;br /&gt;
    &amp;lt;/refresh&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#F0E68C;&amp;quot; | &#039;&#039;&#039;Example:&#039;&#039;&#039; display has 50 msec latency at 50 (+/-0.01) Hz&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;/latency&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#F0E68C;&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;stereoscopicregex3d&amp;gt;[-. _]3d[-. _]&amp;lt;/stereoscopicregex3d&amp;gt;&lt;br /&gt;
  &amp;lt;stereoscopicregexsbs&amp;gt;[-. _]h?sbs[-. _]&amp;lt;/stereoscopicregexsbs&amp;gt;&lt;br /&gt;
  &amp;lt;stereoscopicregextab&amp;gt;[-. _]h?tab[-. _]&amp;lt;/stereoscopicregextab&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Filename triggers for 3D (stereoscopic) mode.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;assfixedworks&amp;gt;false&amp;lt;/assfixedworks&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Position behavior of ass subtitiles when setting &amp;quot;subtitle position on screen&amp;quot; set to &amp;quot;fixed&amp;quot;. True to show at the fixed position set in video calibration. False to show at the bottom of video (default). {{note|Removed in Kodi v20.}}&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;subtitleverticalmargin&amp;gt;120&amp;lt;/subtitleverticalmargin&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Allows to customise the vertical margin of text based subtitles, which will be applied to each type of subtitle position in subtitle settings. {{note|Available in Kodi v20 and above.}}&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
&amp;lt;/video&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== audio ===&lt;br /&gt;
{{anchor|.3Caudio.3E}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;audio&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Amount of headroom Kodi should use above the maximum volume level, in decibels.  Defaults to 0, valid values 0, 6, 12. --&amp;gt;&lt;br /&gt;
  &amp;lt;headroom&amp;gt;0&amp;lt;/headroom&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Default audio player: paplayer or videoplayer --&amp;gt;&lt;br /&gt;
  &amp;lt;defaultplayer&amp;gt;paplayer&amp;lt;/defaultplayer&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Regular expressions that if evaluated to true won&#039;t be added to library. --&amp;gt;&lt;br /&gt;
  &amp;lt;excludefromscan&amp;gt; &lt;br /&gt;
    &amp;lt;regexp&amp;gt;[-\._ ](podcast)[-\._ ]&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;/excludefromscan&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Regular expressions that if evaluated to true won&#039;t be displayed in Files View --&amp;gt;&lt;br /&gt;
  &amp;lt;excludefromlisting&amp;gt; &lt;br /&gt;
    &amp;lt;regexp&amp;gt;[-\._ ](podcast)[-\._ ]&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;/excludefromlisting&amp;gt;&lt;br /&gt;
  &amp;lt;!-- 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. --&amp;gt;&lt;br /&gt;
  &amp;lt;ac3downmixgain&amp;gt;12.0&amp;lt;/ac3downmixgain&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Whether to use time based or percentage based seeking. --&amp;gt;&lt;br /&gt;
  &amp;lt;usetimeseeking&amp;gt;true&amp;lt;/usetimeseeking&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Time to seek forward in seconds when doing a long seek.  Defaults to 600 (10 minutes) and -600 (-10 minutes) respectively. --&amp;gt;&lt;br /&gt;
  &amp;lt;timeseekforwardbig&amp;gt;600&amp;lt;/timeseekfowardbig&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Time to seek backward in seconds when doing a long seek back.  Defaults to 600 (10 minutes) and -600 (-10 minutes) respectively. --&amp;gt;&lt;br /&gt;
  &amp;lt;timeseekbackwardbig&amp;gt;-600&amp;lt;/timeseekbackward&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Minimum percentage that has to be played before it is considered for incrementing in the Top 100 database view, or for last.fm submittal --&amp;gt;&lt;br /&gt;
  &amp;lt;playcountminimumpercent&amp;gt;99&amp;lt;/playcountminimumpercent&amp;gt; &lt;br /&gt;
  &amp;lt;!-- Whether to use Dynamic Range Compression (DRC) on AC3 streams. 1.0 is &amp;quot;full&amp;quot; compression, as defined by the audio track&#039;s metadata, which is recommended for &amp;quot;basic&amp;quot; sound systems such as the internal speakers on a TV. 0.0 is no compression at all, which is recommended for people with nice multi-speaker sound systems. -1.0 (default) defaults to whatever ffmpeg uses, which is currently the same as 1.0. This has no effect if passthrough is enabled for AC3. --&amp;gt;&lt;br /&gt;
  &amp;lt;applydrc&amp;gt;-1.0&amp;lt;/applydrc&amp;gt; &lt;br /&gt;
  &amp;lt;!-- default values for limiter/compressor --&amp;gt;&lt;br /&gt;
  &amp;lt;limiterhold&amp;gt;0.025&amp;lt;/limiterhold&amp;gt; &lt;br /&gt;
  &amp;lt;!-- default values for limiter/compressor --&amp;gt;&lt;br /&gt;
  &amp;lt;limiterrelease&amp;gt;0.1&amp;lt;/limiterrelease&amp;gt; &lt;br /&gt;
  &amp;lt;!-- This setting is only relevant for Passthrough in the context of resyncing, e.g.; when there is no resampling possible. This value decides after which amount of discontinuity in milliseconds VideoPlayer will ErrorAdjust the Clock. On platforms like Android where the sink delay is just a non exact interpolation, a too small value might cause rare image stutter. The maximum value is 100 ms. A higher value makes no sense cause of A/V issues. This is a last-resort workaround as the root-cause cannot be mitigated 100% [Available from Kodi v20] --&amp;gt;&lt;br /&gt;
  &amp;lt;maxpassthroughoffsyncduration&amp;gt;10&amp;lt;/maxpassthroughoffsyncduration&amp;gt; &lt;br /&gt;
  &amp;lt;!-- This setting is used on Android only. While Android itself supports 32 bit Float format for at least Stereo since many years, certain Vendors don&#039;t properly implement it for Multi-Channel Audio. As those devices still open correctly, but then no signal reaches the output device, we disabled this for the time being and used 16 bit Integer only. With this setting you can enable 32 bit Output for multi-channel for kodi by setting allowmultichannelfloat to true. Default: false. This makes a lossless Input -&amp;gt; Output chain possible, as it can hold 24 bit Audio without any loss towards the internal Android Mixer, which is using Float precision anyways. --&amp;gt;&lt;br /&gt;
  &amp;lt;allowmultichannelfloat&amp;gt;false&amp;lt;/allowmultichannelfloat&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Android only. There are currently various broken devices with AMLogic BSP out there. They open a sink with a buffer of 170 ms, but then don&#039;t consume any idea for sometimes even more than 1000 ms of audio data. Then they silently drop the data under the hood and move on, resulting in kodi being totally out of sink. Reopening the devices (sometimes 2 times) fixes this. Sadly there are some semi-broken devices out there that do the same on startup, but afterwards work kind of fine with a higher delay. I cannot programmatically distinguish those two cases. For Zidoo and FireTV Cube 3rd Gen, you have to manually enable this advanced setting. --&amp;gt;&lt;br /&gt;
  &amp;lt;superviseaudiodelay&amp;gt;false&amp;lt;/superviseaudiodelay&amp;gt;&lt;br /&gt;
&amp;lt;/audio&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== forcedswaptime ===&lt;br /&gt;
{{anchor|.3Cforcedswaptime.3E}}&lt;br /&gt;
Use to force a backbuffer-&amp;gt;frontbuffer swap while vsync is enabled. Set to the time (in ms) to allow for the swap (e.g. &amp;lt;forcedswaptime&amp;gt;1&amp;lt;/forcedswaptime&amp;gt; is typical).  &lt;br /&gt;
&lt;br /&gt;
Default: Off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== edl ===&lt;br /&gt;
{{anchor|.3Cedl.3E}}&lt;br /&gt;
{{main|Edit_decision_list}}&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;edl&amp;gt;&lt;br /&gt;
    &amp;lt;!-- if true, commercial breaks will be merged according to the remaining options. --&amp;gt;&lt;br /&gt;
  &amp;lt;mergeshortcommbreaks&amp;gt;false&amp;lt;/mergeshortcommbreaks&amp;gt;&lt;br /&gt;
    &amp;lt;!-- Commercial breaks won&#039;t be merged if the total length of the commercial break would be greater than this (seconds) --&amp;gt;&lt;br /&gt;
  &amp;lt;maxcommbreaklength&amp;gt;250&amp;lt;/maxcommbreaklength&amp;gt;&lt;br /&gt;
    &amp;lt;!-- After merging, commercial breaks shorter than this will be removed (seconds) --&amp;gt;&lt;br /&gt;
  &amp;lt;mincommbreaklength&amp;gt;90&amp;lt;/mincommbreaklength&amp;gt;&lt;br /&gt;
    &amp;lt;!-- Commercial breaks that are further apart than this won&#039;t be merged (seconds) --&amp;gt;&lt;br /&gt;
  &amp;lt;maxcommbreakgap&amp;gt;120&amp;lt;/maxcommbreakgap&amp;gt;&lt;br /&gt;
    &amp;lt;!-- How long to wait before automatically skipping when the start of a commercial break reached (seconds). Possible values: from -60 to 60--&amp;gt;&lt;br /&gt;
  &amp;lt;commbreakautowait&amp;gt;0&amp;lt;/commbreakautowait&amp;gt;&lt;br /&gt;
    &amp;lt;!-- How long to rewind after automatically skipping to the end of the commercial break (seconds). Possible values: from -60 to 60 --&amp;gt;&lt;br /&gt;
  &amp;lt;commbreakautowind&amp;gt;0&amp;lt;/commbreakautowind&amp;gt;&lt;br /&gt;
    &amp;lt;!-- Avoid showing the edl commbreak notifications. These are displayed by default --&amp;gt;&lt;br /&gt;
  &amp;lt;displaycommbreaknotifications&amp;gt;false&amp;lt;/displaycommbreaknotifications&amp;gt;&lt;br /&gt;
&amp;lt;/edl&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Notes:&#039;&#039;&#039;&lt;br /&gt;
* displaycommbreaknotifications&amp;lt;ref&amp;gt;https://github.com/xbmc/xbmc/pull/20711&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PVR &amp;amp; Live TV ==&lt;br /&gt;
{{anchor|.3Cpvr.3E}}&lt;br /&gt;
Settings available for PVR, EPG and Live TV. Edit Decision List settings are located in the previous section.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== pvr ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot; line=&#039;line&#039;&amp;gt;&lt;br /&gt;
&amp;lt;pvr&amp;gt;&lt;br /&gt;
  &amp;lt;timecorrection&amp;gt;0&amp;lt;/timecorrection&amp;gt;  &amp;lt;!-- Correct all times (epg tags, timer tags, recording tags) by this amount of minutes. --&amp;gt;&lt;br /&gt;
  &amp;lt;infotoggleinterval&amp;gt;3000&amp;lt;/infotoggleinterval&amp;gt;  &amp;lt;!-- If there is more than one pvr gui info item available (e.g. multiple recordings active at the same time), use this toggle delay in milliseconds. --&amp;gt;&lt;br /&gt;
  &amp;lt;channeliconsautoscan&amp;gt;true&amp;lt;/channeliconsautoscan&amp;gt; &amp;lt;!-- Automatically scan user defined folder for channel icons when loading internal channel groups. --&amp;gt;&lt;br /&gt;
  &amp;lt;autoscaniconsuserset&amp;gt;false&amp;lt;/autoscaniconsuserset&amp;gt; &amp;lt;!-- Mark channel icons populated by auto scan as &amp;quot;user set&amp;quot;. --&amp;gt;&lt;br /&gt;
  &amp;lt;numericchannelswitchtimeout&amp;gt;1000&amp;lt;/numericchannelswitchtimeout&amp;gt; &amp;lt;!-- Time in ms before the numeric dialog auto closes when confirmchannelswitch is disabled. --&amp;gt;&lt;br /&gt;
&amp;lt;/pvr&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== pvrrecordings ====&lt;br /&gt;
In v19 and later, allows users to modify sort type and order of pvr recordings. &amp;lt;ref&amp;gt;https://github.com/xbmc/xbmc/pull/18605&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
;Note- These settings are child tags to the &#039;&#039;&amp;lt;pvr&amp;gt;&#039;&#039; tag in the previous section.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot; line=&#039;line&#039;&amp;gt;&lt;br /&gt;
&amp;lt;pvr&amp;gt;&lt;br /&gt;
   &amp;lt;pvrrecordings&amp;gt;&lt;br /&gt;
      &amp;lt;sortmethod&amp;gt;2&amp;lt;/sortmethod&amp;gt;  &amp;lt;!-- 1=Name 2=Date 3=Size 4=File --&amp;gt;&lt;br /&gt;
      &amp;lt;sortorder&amp;gt;2&amp;lt;/sortorder&amp;gt;    &amp;lt;!-- 1=Ascending 2=Descending --&amp;gt;&lt;br /&gt;
   &amp;lt;/pvrrecordings&amp;gt;&lt;br /&gt;
&amp;lt;/pvr&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== epg ===&lt;br /&gt;
{{anchor|.3Cpvr.3E}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot; line=&#039;line&#039;&amp;gt;&lt;br /&gt;
&amp;lt;epg&amp;gt;&lt;br /&gt;
  &amp;lt;updatecheckinterval&amp;gt;300&amp;lt;/updatecheckinterval&amp;gt;  &amp;lt;!-- Check every X seconds, if EPG data need to be updated. This does not mean that every X seconds an EPG update is actually triggered, it&#039;s just the interval how often to check whether an update should be triggered. If this value is greater than GUI setting &#039;epg.epgupdate&#039; value, then EPG updates will done with the value specified for &#039;updatecheckinterval&#039;, effectively overriding the GUI setting&#039;s value. --&amp;gt;&lt;br /&gt;
  &amp;lt;updateemptytagsinterval&amp;gt;60&amp;lt;/updateemptytagsinterval&amp;gt;  &amp;lt;!-- If a TV channel has no EPG data, try to obtain data for that channel every X seconds. This overrides the GUI setting &#039;epg.epgupdate&#039; value, but only for channels without EPG data. If this value is less than &#039;updatecheckinterval&#039; value, then data update will be done with the interval specified by &#039;updatecheckinterval&#039;. Example 1: epg.epgupdate = 120 (minutes!), updatecheckinterval = 300, updateemptytagsinterval = 60 =&amp;gt; trigger an EPG update for every channel without EPG data every 5 minutes and trigger an EPG update for every channel with EPG data every 2 hours. Example 2: epg.epgupdate = 120 (minutes!), updatecheckinterval = 300, updateemptytagsinterval = 3600 =&amp;gt; trigger an EPG update for every channel without EPG data every 2 hours and trigger an EPG update for every channel with EPG data every 1 hour. --&amp;gt;&lt;br /&gt;
  &amp;lt;cleanupinterval&amp;gt;900&amp;lt;/cleanupinterval&amp;gt;  &amp;lt;!-- remove old entries from the EPG every X seconds --&amp;gt;&lt;br /&gt;
  &amp;lt;activetagcheckinterval&amp;gt;60&amp;lt;/activetagcheckinterval&amp;gt;  &amp;lt;!-- check for updated active tags every X seconds --&amp;gt;&lt;br /&gt;
  &amp;lt;retryinterruptedupdateinterval&amp;gt;60&amp;lt;/retryinterruptedupdateinterval&amp;gt;  &amp;lt;!-- retry an interrupted EPG update after X seconds --&amp;gt;&lt;br /&gt;
  &amp;lt;displayupdatepopup&amp;gt;true&amp;lt;/displayupdatepopup&amp;gt;  &amp;lt;!-- display a progress popup while updating EPG data from clients --&amp;gt;&lt;br /&gt;
  &amp;lt;displayincrementalupdatepopup&amp;gt;false&amp;lt;/displayincrementalupdatepopup&amp;gt;  &amp;lt;!-- also display a progress popup while doing incremental EPG updates --&amp;gt;&lt;br /&gt;
&amp;lt;/epg&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Video library settings ==&lt;br /&gt;
&lt;br /&gt;
=== videoextensions ===&lt;br /&gt;
{{anchor|.3Cvideoextensions.3E}}&amp;lt;section begin=&amp;quot;videoextensions&amp;quot; /&amp;gt;&lt;br /&gt;
A list of additional file-extensions to allow (&#039;&#039;&#039;add&#039;&#039;&#039;) or exclude (&#039;&#039;&#039;remove&#039;&#039;&#039;) in the My Video windows.&lt;br /&gt;
&lt;br /&gt;
Default extensions for VIDEOS:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.m4v .3g2 .3gp .nsv .tp .ts .ty .strm .pls .rm .rmvb .mpd .m3u .m3u8 .ifo .mov .qt .divx .xvid&lt;br /&gt;
.bivx .vob .nrg .img .iso .udf .pva .wmv .asf .asx .ogm .m2v .avi .bin .dat .mpg .mpeg .mp4&lt;br /&gt;
.mkv .mk3d .avc .vp3 .svq3 .nuv .viv .dv .fli .flv .001 .wpl .xspf .zip .vdr .dvr-ms .xsp .mts&lt;br /&gt;
.m2t .m2ts .evo .ogv .sdp .avs .rec .url .pxml .vc1 .h264 .rcv .rss .mpls .mpl .webm .bdmv&lt;br /&gt;
.bdm .wtv .trp .f4v&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Examples:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;videoextensions&amp;gt;&lt;br /&gt;
  &amp;lt;add&amp;gt;.ex1|.ex2&amp;lt;/add&amp;gt;&lt;br /&gt;
  &amp;lt;remove&amp;gt;.ex3|.ex4&amp;lt;/remove&amp;gt;&lt;br /&gt;
&amp;lt;/videoextensions&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;section end=&amp;quot;videoextensions&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== discstubextensions ===&lt;br /&gt;
{{main|Media stubs}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=&amp;quot;discstubextensions&amp;quot; /&amp;gt;&lt;br /&gt;
The default filename extension for Disc Stubs is:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
.disc&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Using the following tags, it is possible to &amp;lt;tt&amp;gt;&amp;lt;add&amp;gt;&amp;lt;/tt&amp;gt; additional or &amp;lt;tt&amp;gt;&amp;lt;remove&amp;gt;&amp;lt;/tt&amp;gt; existing disc stub extensions to better suit your requirements.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;discstubextensions&amp;gt;&lt;br /&gt;
  &amp;lt;add&amp;gt;.disk|.stub&amp;lt;/add&amp;gt;&lt;br /&gt;
  &amp;lt;remove&amp;gt;.disc&amp;lt;/remove&amp;gt;&lt;br /&gt;
&amp;lt;/discstubextensions&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;section end=&amp;quot;discstubextensions&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== languagecodes ===&lt;br /&gt;
{{anchor|.3Clanguagecodes.3E}}&lt;br /&gt;
User-defined translation table for language codes used in subtitles and audio.&lt;br /&gt;
It can be used to add, extend or override Kodi&#039;s language codes.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to add a new language code:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;languagecodes&amp;gt;&lt;br /&gt;
  &amp;lt;code&amp;gt;&lt;br /&gt;
    &amp;lt;short&amp;gt;alt&amp;lt;/short&amp;gt;&lt;br /&gt;
    &amp;lt;long&amp;gt;Alternate&amp;lt;/long&amp;gt;&lt;br /&gt;
  &amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/languagecodes&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to add a new language code with subtag (e.g. pt-BR):&#039;&#039;&#039;&lt;br /&gt;
{{note|This support is available from Kodi v20}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;languagecodes&amp;gt;&lt;br /&gt;
  &amp;lt;code&amp;gt;&lt;br /&gt;
    &amp;lt;short&amp;gt;pt-BR&amp;lt;/short&amp;gt;&lt;br /&gt;
    &amp;lt;long&amp;gt;Portuguese - Brazil&amp;lt;/long&amp;gt;&lt;br /&gt;
  &amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/languagecodes&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;NOTE FOR MKV FILES:&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
MKV files that contain audio/subtitle tracks with language codes with subtags are not yet supported, but from &amp;lt;code&amp;gt;Kodi v21&amp;lt;/code&amp;gt; a workaround was introduced that allows Kodi to recognize language codes with subtags.&lt;br /&gt;
To use the workaround, you must open the MKV file with an editor and in the metadata of the desired audio/subtitle track, edit the track Name (or Title field) by adding the language code wrapped in curly brackets, as in following example:&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;code&amp;gt;Original track name: Audio portuguese/brazil&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;code&amp;gt;Modified track name: Audio portuguese/brazil {pt-BR}&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to extend an existing language code:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Set the same &amp;quot;long&amp;quot; description of the existing language, for example we reuse the Portughese language for another language code:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;languagecodes&amp;gt;&lt;br /&gt;
  &amp;lt;code&amp;gt;&lt;br /&gt;
    &amp;lt;short&amp;gt;pt-BR&amp;lt;/short&amp;gt;&lt;br /&gt;
    &amp;lt;long&amp;gt;Portuguese&amp;lt;/long&amp;gt;&lt;br /&gt;
  &amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/languagecodes&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this case when in Kodi settings you set the &amp;quot;Portuguese&amp;quot; language, when in playing according to availability the track &amp;quot;pt&amp;quot; or &amp;quot;pt-BR&amp;quot; will be chosen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to override an existing language code:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
This allow you to rename an existing language. Set to an existing language code your preferred &amp;quot;long&amp;quot; name description.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;WARNING: This can cause problems with add-ons, so do not override languages if you are not aware of the side effects.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;languagecodes&amp;gt;&lt;br /&gt;
  &amp;lt;code&amp;gt;&lt;br /&gt;
    &amp;lt;short&amp;gt;en&amp;lt;/short&amp;gt;&lt;br /&gt;
    &amp;lt;long&amp;gt;English example&amp;lt;/long&amp;gt;&lt;br /&gt;
  &amp;lt;/code&amp;gt;&lt;br /&gt;
  &amp;lt;code&amp;gt;&lt;br /&gt;
    &amp;lt;short&amp;gt;en-GB&amp;lt;/short&amp;gt;&lt;br /&gt;
    &amp;lt;long&amp;gt;English example&amp;lt;/long&amp;gt;&lt;br /&gt;
  &amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/languagecodes&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== moviestacking ===&lt;br /&gt;
{{anchor|.3Cmoviestacking.3E}}&amp;lt;section begin=&amp;quot;moviestacking&amp;quot; /&amp;gt;&lt;br /&gt;
{{main|Naming_video_files/Movies}}&lt;br /&gt;
This is used by the [[Naming_video_files/Movies#Split_Video_Files|file stacking]] algorithm to combine multi-part files and contains a list of regular expressions. For stacking videos that are contained in folders, such as VIDEO_TS folders, see &#039;&#039;&#039;[[advancedsettings.xml#folderstacking|&amp;lt;folderstacking&amp;gt;]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
As of v9.11, video stacking regular expressions &#039;&#039;&#039;must&#039;&#039;&#039; contain exactly four (4) capture expressions. &lt;br /&gt;
&lt;br /&gt;
Default:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;moviestacking&amp;gt;&lt;br /&gt;
  &amp;lt;!-- &amp;lt;cd/dvd/part/pt/disk/disc&amp;gt; &amp;lt;0-N&amp;gt; --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;(.*?)([ _.-]*(?:cd|dvd|p(?:ar)?t|dis[ck])[ _.-]*[0-9]+)(.*?)(\.[^.]+)$&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;!-- &amp;lt;cd/dvd/part/pt/disk/disc&amp;gt; &amp;lt;a-d&amp;gt; --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;(.*?)([ _.-]*(?:cd|dvd|p(?:ar)?t|dis[ck])[ _.-]*[a-d])(.*?)(\.[^.]+)$&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;!-- movienamea-xvid.avi, movienameb-xvid.avi --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;(.*?)([ ._-]*[a-d])(.*?)(\.[^.]+)$&amp;lt;/regexp&amp;gt;&lt;br /&gt;
&amp;lt;/moviestacking&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the argument &amp;lt;tt&amp;gt;action=&amp;quot;append&amp;quot;&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;append=&amp;quot;yes&amp;quot;&amp;lt;/tt&amp;gt; is supplied, the default moviestacking regular expressions will remain intact and the user specified ones will be added to the end.  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;moviestacking action=&amp;quot;append&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;!-- This expression will match movename1-xvid.avi, moviename2-xvid.avi.&lt;br /&gt;
         Be warned that it will likely stack sequels in a flat directory layout,&lt;br /&gt;
         so it is only recommend in a dir-per-video layout. --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;(.*?)([ ._-]*[0-9])(.*?)(\.[^.]+)$&amp;lt;/regexp&amp;gt;&lt;br /&gt;
&amp;lt;/moviestacking&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the argument &amp;lt;tt&amp;gt;action=&amp;quot;prepend&amp;quot;&amp;lt;/tt&amp;gt; is supplied, the default moviestacking regular expressions will remain intact and the user specified ones will be added to the beginning. &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;moviestacking action=&amp;quot;prepend&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;(Title)(Volume)(Ignore)(Extension)&amp;lt;/regexp&amp;gt;&lt;br /&gt;
&amp;lt;/moviestacking&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If no argument is supplied, or the argument &amp;lt;tt&amp;gt;append=&amp;quot;no&amp;quot;&amp;lt;/tt&amp;gt; is supplied, the default moviestacking regular expressions are overwritten by the user specified ones.&lt;br /&gt;
&amp;lt;section end=&amp;quot;moviestacking&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== folderstacking ===&lt;br /&gt;
{{main|Naming_video_files/Movies}}&lt;br /&gt;
This is similar to &#039;&#039;&#039;[[advancedsettings.xml#moviestacking|&amp;lt;moviestacking&amp;gt;]]&#039;&#039;&#039;, but is used for videos that are contained in folders that use the folder names to stack, such as VIDEO_TS folders (DVD rips that are not in ISO format).&lt;br /&gt;
&lt;br /&gt;
Default:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;folderstacking&amp;gt;&lt;br /&gt;
  &amp;lt;!-- &amp;lt;cd/dvd/disk/disc&amp;gt; &amp;lt;0-N&amp;gt; --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;((cd|dvd|dis[ck])[0-9]+)$&amp;lt;/regexp&amp;gt;&lt;br /&gt;
&amp;lt;/folderstacking&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== cleandatetime ===&lt;br /&gt;
{{anchor|.3Ccleandatetime.3E}}&lt;br /&gt;
Matches a year number in a string using a Regular Expression&lt;br /&gt;
&lt;br /&gt;
Default expression:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;video&amp;gt;&lt;br /&gt;
  &amp;lt;cleandatetime&amp;gt;(.*[^ _\,\.\(\)\[\]\-])[ _\.\(\)\[\]\-]+(19[0-9][0-9]|20[0-9][0-9])([ _\,\.\(\)\[\]\-]|[^0-9]$)?&amp;lt;/cleandatetime&amp;gt;&lt;br /&gt;
&amp;lt;/video&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
:* The string found before will be used as basis string getting cleaned by the cleanstrings expressions. &lt;br /&gt;
:* By default date formats like MM:YY are ignored.&lt;br /&gt;
&lt;br /&gt;
=== cleanstrings ===&lt;br /&gt;
{{anchor|.3Ccleanstrings.3E}}&lt;br /&gt;
Clean unwanted characters from filenames or folders by using a list of Regular Expressions. Please note that everything right of the match (at the end of the file name) is removed, so if you would have a file named &#039;&#039;Super movie.mp4&#039;&#039; and would add &amp;lt;tt&amp;gt;&amp;lt;regexp&amp;gt; &amp;lt;/regexp&amp;gt;&amp;lt;/tt&amp;gt; (only a space), the only thing that would be left is &#039;&#039;Super&#039;&#039;, which is probably not what you want.&lt;br /&gt;
&lt;br /&gt;
{{Github_link|[https://github.com/xbmc/xbmc/blob/Nexus/xbmc/settings/AdvancedSettings.cpp#L201-L211 Code in Github]}}&lt;br /&gt;
&lt;br /&gt;
Default expressions:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;video&amp;gt;&lt;br /&gt;
  &amp;lt;cleanstrings&amp;gt;&lt;br /&gt;
   &amp;lt;regexp&amp;gt;([ _\\,\\.\\(\\)\\[\\]\\-](10bit|480p|480i|576p|576i|720p|720i|1080p|1080i|2160p|3d|aac|ac3|aka|atmos|avi|bd5|bdrip|bluray|brrip|cam|cd[1-9]|custom|dc|ddp|divx|divx5|dolbydigital|dolbyvision|dsr|dsrip|dts|dts-hdma|dts-hra|dts-x|dv|dvd|dvd5|dvd9|dvdivx|dvdrip|dvdscr|dvdscreener|extended|fragment|fs|h264|h265|hdr|hdr10|hevc|hddvd|hdrip|hdtv|hdtvrip|hrhd|hrhdtv|internal|limited|multisubs|nfofix|ntsc|ogg|ogm|pal|pdtv|proper|r3|r5|read.nfo|remastered|remux|repack|rerip|retail|screener|se|svcd|tc|telecine|telesync|truehd|ts|uhd|unrated|ws|x264|x265|xvid|xvidvd|xxx|web-dl|webrip|www.www|\\[.*\\])([ _\\,\\.\\(\\)\\[\\]\\-]|$)&amp;quot;);&amp;lt;/regexp&amp;gt;&lt;br /&gt;
   &amp;lt;regexp&amp;gt;(\[.*\])&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;/cleanstrings&amp;gt;&lt;br /&gt;
&amp;lt;/video&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Updated in v20&amp;lt;ref&amp;gt;https://github.com/xbmc/xbmc/pull/20549&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:* Arguments &amp;lt;tt&amp;gt;action=&amp;quot;append&amp;quot;&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;action=&amp;quot;prepend&amp;quot;&amp;lt;/tt&amp;gt; will insert user specified expressions after, or before, the defaults above. (Further details in [[Advancedsettings.xml#.3Cmoviestacking.3E|moviestacking]] section)&lt;br /&gt;
&lt;br /&gt;
=== tvshowmatching ===&lt;br /&gt;
{{anchor|.3Ctvshowmatching.3E}}&lt;br /&gt;
Matches the season and episode numbers in file paths by using a list of Regular Expressions&lt;br /&gt;
&lt;br /&gt;
{{Github_link|[https://github.com/xbmc/xbmc/blob/Matrix/xbmc/settings/AdvancedSettings.cpp#L232 Code in Github]}}&lt;br /&gt;
&lt;br /&gt;
Defaults:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tvshowmatching&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;s([0-9]+)[ ._x-]*e([0-9]+(?:(?:[a-i]|\\.[1-9])(?![0-9]))?)([^\\\\/]*)$&amp;lt;/regexp&amp;gt;  &amp;lt;!-- foo.s01.e01, foo.s01_e01, S01E02 foo, S01 - E02, S01xE02 --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;[\._ -]()[Ee][Pp]_?([0-9]+)([^\\/]*)$&amp;lt;/regexp&amp;gt;  &amp;lt;!-- foo.ep01, foo.EP_01 --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;([0-9]{4})[\.-]([0-9]{2})[\.-]([0-9]{2})&amp;lt;/regexp&amp;gt;  &amp;lt;!-- foo.yyyy.mm.dd.* (byDate=true) --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;([0-9]{2})[\.-]([0-9]{2})[\.-]([0-9]{4})&amp;lt;/regexp&amp;gt;  &amp;lt;!-- foo.mm.dd.yyyy.* (byDate=true) --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;[\\/\._ \[\(-]([0-9]+)x([0-9]+)([^\\/]*)$&amp;lt;/regexp&amp;gt;  &amp;lt;!-- foo.1x09* or just /1x09* --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;[\\/\._ -]([0-9]+)([0-9][0-9])([\._ -][^\\/]*)$&amp;lt;/regexp&amp;gt;  &amp;lt;!-- foo.103*, 103 foo --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;[\/._ -]p(?:ar)?t[_. -]()([ivx]+)([._ -][^\/]*)$&amp;lt;/regexp&amp;gt;  &amp;lt;!-- Part I, Pt.VI --&amp;gt;&lt;br /&gt;
&amp;lt;/tvshowmatching&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:* Arguments &amp;lt;tt&amp;gt;action=&amp;quot;append&amp;quot;&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;action=&amp;quot;prepend&amp;quot;&amp;lt;/tt&amp;gt; will insert user specified expressions after, or before, the defaults above. (Further details in [[Advancedsettings.xml#.3Cmoviestacking.3E|moviestacking]] section)&lt;br /&gt;
:* Paths are converted to lower case before matching.&lt;br /&gt;
:* For multi-episode matching to work, there needs to be a third set of parentheses &#039;()&#039; at the end, this part is fed back into the regexp engine.&lt;br /&gt;
:* A [https://forum.kodi.tv/showthread.php?tid=51614 forum thread] has a discussion of pre-made regex lists to match common names. These might improve Kodi&#039;s ability to match TV show names in some situations, at the risk of additional false positives.&lt;br /&gt;
&lt;br /&gt;
==== Filenames without Season ====&lt;br /&gt;
There are two methods to add episodes without a season in their file path. Both ways will force the season to &#039;1&#039; by default, so that you can use&lt;br /&gt;
the &#039;Use Absolute Ordering (Single Season)&#039; setting from the TheTvDb.com scraper.&lt;br /&gt;
&lt;br /&gt;
; Simple Method &#039;&#039;(XBMC v9.11 onwards and Kodi)&#039;&#039;&lt;br /&gt;
: Use only one pair of parentheses&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&amp;lt;regexp&amp;gt;[/\._ \-]([0-9]+)&amp;lt;/regexp&amp;gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
; Advanced Method &#039;&#039;(XBMC v10.05 onwards and Kodi)&#039;&#039;&lt;br /&gt;
: Supports multi-episode files without season&lt;br /&gt;
: Use an empty pair of parentheses for the season&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&amp;lt;regexp&amp;gt;[/\._ \-]()([0-9]+)(-[0-9]+)?&amp;lt;/regexp&amp;gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; Specifying Default Season &#039;&#039;(XBMC v12.0 onwards and Kodi)&#039;&#039;&lt;br /&gt;
It is possible to set the default season for specific regular expressions by setting the &#039;defaultseason&#039; attribute.&lt;br /&gt;
: Works with both the simple method and advanced method&lt;br /&gt;
: If not used, the season will be set to &#039;1&#039;&lt;br /&gt;
: Useful for setting specials to season &#039;0&#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&amp;lt;regexp defaultseason=&amp;quot;0&amp;quot;&amp;gt;[/\._ \-]X()([0-9]+)(-[0-9]+)?&amp;lt;/regexp&amp;gt;&lt;br /&gt;
&amp;lt;regexp defaultseason=&amp;quot;1&amp;quot;&amp;gt;[/\._ \-]E()([0-9]+)(-[0-9]+)?&amp;lt;/regexp&amp;gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== tvmultipartmatching ===&lt;br /&gt;
{{anchor|.3Ctvmultipartmatching.3E}}&lt;br /&gt;
Matches a multipart episode number based on a previously identified episode file, using a list of Regular Expressions.&lt;br /&gt;
&lt;br /&gt;
Default:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tvmultipartmatching&amp;gt;^[-_ex]+([0-9]+(?:(?:[a-i]|\\.[1-9])(?![0-9]))?)&amp;lt;/tvmultipartmatching&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
:* Text matching is compared case-insensitive.&lt;br /&gt;
:* Specifying this option &#039;&#039;&#039;replaces&#039;&#039;&#039; the default value&lt;br /&gt;
&lt;br /&gt;
=== excludefromscan ===&lt;br /&gt;
{{anchor|.3Cexcludefromscan.3E}}&lt;br /&gt;
Matches filenames or folders which should be excluded from a library scan (except tvshows) using a list of Regular Expressions. This can be for both Video or Audio sections of &amp;lt;tt&amp;gt;advancedsettings.xml&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Defaults:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;video&amp;gt;&lt;br /&gt;
  &amp;lt;excludefromscan&amp;gt;&lt;br /&gt;
    &amp;lt;regexp&amp;gt;-trailer&amp;lt;/regexp&amp;gt;&lt;br /&gt;
    &amp;lt;regexp&amp;gt;[!-._ \\/]sample[-._ \\/]&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;/excludefromscan&amp;gt;&lt;br /&gt;
&amp;lt;/video&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:* Arguments &amp;lt;tt&amp;gt;action=&amp;quot;append&amp;quot;&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;action=&amp;quot;prepend&amp;quot;&amp;lt;/tt&amp;gt; will insert user specified expressions after, or before, the defaults above. (Further details in [[Advancedsettings.xml#.3Cmoviestacking.3E|moviestacking]] section)&lt;br /&gt;
&lt;br /&gt;
=== excludefromlisting ===&lt;br /&gt;
{{anchor|.3Cexcludefromlisting.3E}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;video&amp;gt;  &lt;br /&gt;
  &amp;lt;excludefromlisting&amp;gt; &amp;lt;!-- Regular expressions that if evaluated to true won&#039;t be displayed in Files View --&amp;gt;&lt;br /&gt;
    &amp;lt;regexp&amp;gt;[-\._ ](sample|trailer)[-\._ ]&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;/excludefromlisting&amp;gt;&lt;br /&gt;
&amp;lt;/video&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== excludetvshowsfromscan ===&lt;br /&gt;
{{anchor|.3Cexcludetvshowsfromscan.3E}}&lt;br /&gt;
Matches filenames or folders which should be excluded from a tvshow library scan using a list of Regular Expressions&lt;br /&gt;
&lt;br /&gt;
Defaults:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;video&amp;gt;&lt;br /&gt;
  &amp;lt;excludetvshowsfromscan&amp;gt;&lt;br /&gt;
    &amp;lt;regexp&amp;gt;[!-._ \\/]sample[-._ \\/]&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;/excludetvshowsfromscan&amp;gt;&lt;br /&gt;
&amp;lt;/video&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:* Arguments &amp;lt;tt&amp;gt;action=&amp;quot;append&amp;quot;&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;action=&amp;quot;prepend&amp;quot;&amp;lt;/tt&amp;gt; will insert user specified expressions after, or before, the defaults above. (Further details in [[Advancedsettings.xml#.3Cmoviestacking.3E|moviestacking]] section)&lt;br /&gt;
&lt;br /&gt;
=== trailermatching ===&lt;br /&gt;
{{anchor|.3Ctrailermatching.3E}}&lt;br /&gt;
Contains Regular Expression syntax to match the locally stored trailers to movies in the library. Only files with recognized video file extensions will be considered, and the extensions are removed for the Regular Expression evaluation.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;trailermatching&amp;gt;&lt;br /&gt;
    &amp;lt;!-- This regexp will match moviename_Trailer.avi --&amp;gt;&lt;br /&gt;
    &amp;lt;regexp&amp;gt;(.*?)(_Trailer)$&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;/trailermatching&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== videolibrary ===&lt;br /&gt;
{{anchor|.3Cvideolibrary.3E}}&lt;br /&gt;
Options specific to the Video Library&lt;br /&gt;
&lt;br /&gt;
{{Note|Kodi v20 users don&#039;t need set &amp;quot;importwatched&amp;quot; or &amp;quot;importresumepoint&amp;quot; to true anymore as that&#039;s the default then &amp;lt;ref&amp;gt;https://github.com/xbmc/xbmc/pull/20842&amp;lt;/ref&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot; line=&#039;line&#039;&amp;gt;&lt;br /&gt;
  &amp;lt;videolibrary&amp;gt;&lt;br /&gt;
    &amp;lt;allitemsonbottom&amp;gt;false&amp;lt;/allitemsonbottom&amp;gt;  &amp;lt;!-- sorts the &amp;quot;*All&amp;quot; items at the bottom of the list when in Ascending order --&amp;gt;&lt;br /&gt;
    &amp;lt;cleanonupdate&amp;gt;false&amp;lt;/cleanonupdate&amp;gt;  &amp;lt;!-- default set to false to prevent Kodi from removing items from the database while updating.  --&amp;gt;&lt;br /&gt;
    &amp;lt;usefasthash&amp;gt;true&amp;lt;/usefasthash&amp;gt; &amp;lt;!-- defaults to true. Set to false in order to skip hashing based on the folders modification time. --&amp;gt;&lt;br /&gt;
    &amp;lt;recentlyaddeditems&amp;gt;35&amp;lt;/recentlyaddeditems&amp;gt; &amp;lt;!-- number of recently added items. Defaults to 25 --&amp;gt;&lt;br /&gt;
    &amp;lt;itemseparator&amp;gt; / &amp;lt;/itemseparator&amp;gt;  &amp;lt;!-- separator used for multiple artists/genres in tags. Note, this is *space* *slash* *space* --&amp;gt;&lt;br /&gt;
    &amp;lt;exportautothumbs&amp;gt;false&amp;lt;/exportautothumbs&amp;gt;  &amp;lt;!-- export auto-generated thumbs. Defaults to false --&amp;gt;&lt;br /&gt;
    &amp;lt;importwatchedstate&amp;gt;false&amp;lt;/importwatchedstate&amp;gt;  &amp;lt;!-- import previously exported playdate and playcount from .nfo files. Defaults to false --&amp;gt;&lt;br /&gt;
    &amp;lt;importresumepoint&amp;gt;false&amp;lt;/importresumepoint&amp;gt;  &amp;lt;!-- import previously exported resume point from .nfo files. Defaults to false --&amp;gt;&lt;br /&gt;
    &amp;lt;dateadded&amp;gt;1&amp;lt;/dateadded&amp;gt; &amp;lt;!-- 0 results in using the current datetime when adding a video;&lt;br /&gt;
                                  1 (default) results in prefering to use the files mtime (if it&#039;s valid) and only using the file&#039;s ctime if the mtime isn&#039;t valid;&lt;br /&gt;
                                  2 results in using the newer datetime of the file&#039;s mtime and ctime --&amp;gt;&lt;br /&gt;
  &amp;lt;/videolibrary&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== videoscanner ===&lt;br /&gt;
{{anchor|.3Cvideoscanner.3E}}&lt;br /&gt;
Options specific to the Video scanner&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;videoscanner&amp;gt;&lt;br /&gt;
    &amp;lt;ignoreerrors&amp;gt;true&amp;lt;/ignoreerrors&amp;gt; &amp;lt;!-- Set to true to silently ignore errors while scanning videos. This prevents the error dialogue box, so you don&#039;t have to keep hitting &amp;quot;yes&amp;quot; to keep scanning.--&amp;gt;&lt;br /&gt;
  &amp;lt;/videoscanner&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Library artwork ==&lt;br /&gt;
&lt;br /&gt;
{{note|Using &amp;lt;imageres&amp;gt;9999&amp;lt;/imageres&amp;gt; and &amp;lt;fanartres&amp;gt;9999&amp;lt;/fanartres&amp;gt; will allow caching artwork at original size.}}&lt;br /&gt;
&lt;br /&gt;
=== imageres ===&lt;br /&gt;
{{anchor|.3Cimageres.3E}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=&amp;quot;imageres description&amp;quot; /&amp;gt;Specify the maximum resolution that [[Artwork/Cache#Texture optimization| cached artwork]] (other than fanart / 16:9 images) should be resized to in pixels. The width is automatically calculated as being 16/9*height.  The image will be resized to fit within this size. e.g. an image that is 2000x500 will be cached at size 1280x320. An image that is 500x800 will be cached at size 450x720 using the default value of 720.&amp;lt;section end=&amp;quot;imageres description&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;imageres&amp;gt;720&amp;lt;/imageres&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== fanartres ===&lt;br /&gt;
{{anchor|.3Cfanartres.3E}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=&amp;quot;fanartres description&amp;quot; /&amp;gt;Specify the maximum resolution that [[Artwork/Cache#Texture optimization| cached fanart]] should be resized to in pixels. The width is automatically calculated as being 16/9*height. Only images that are exactly 16x9 and equal to or greater than this resolution will be cached at this size - all other images will be cached using &amp;lt;imageres&amp;gt;. The default value is 1080.&amp;lt;section end=&amp;quot;fanartres description&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;fanartres&amp;gt;1080&amp;lt;/fanartres&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== imagescalingalgorithm ===&lt;br /&gt;
Specify the image scaling algorithm for image resizing when [[Artwork/Cache#Texture optimization| caching artwork]] to the local texture cache.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;imagescalingalgorithm&amp;gt;bicubic&amp;lt;/imagescalingalgorithm&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[https://github.com/xbmc/xbmc/blob/master/xbmc/pictures/PictureScalingAlgorithm.cpp#L20-L32 Available image scaling algorithms]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=text enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
fast_bilinear&lt;br /&gt;
bilinear&lt;br /&gt;
bicubic&lt;br /&gt;
experimental&lt;br /&gt;
nearest_neighbor&lt;br /&gt;
averaging_area&lt;br /&gt;
bicublin&lt;br /&gt;
gaussian&lt;br /&gt;
sinc&lt;br /&gt;
lanczos&lt;br /&gt;
bicubic_spline&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== imagequalityjpeg ===&lt;br /&gt;
This specifies the quality of the images when stored in jpeg format. By default kodi uses a quality of 4 which is a good compromise between size and quality. If you want to reduce the thumbnail sizes (decreasing quality) choose a higher value up to 21. If high quality (large thumbnail size) is needed, chose a smaller value, e.g. 0,1,2 or 3. (Added in v20 &amp;lt;ref&amp;gt;https://github.com/xbmc/xbmc/pull/21418&amp;lt;/ref&amp;gt;)&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;imagequalityjpeg&amp;gt;4&amp;lt;/imagequalityjpeg&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Video and music library settings ==&lt;br /&gt;
&lt;br /&gt;
=== playlistasfolders ===&lt;br /&gt;
{{anchor|.3Cplaylistasfolders.3E}}&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Set to false to revert to the previous behaviour. When you select a playlist, its content is added to the list of elements to be played.&lt;br /&gt;
&lt;br /&gt;
:{{note|This setting will not affect smart playlists, they will always show as folders.}}&lt;br /&gt;
&lt;br /&gt;
;Example&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;playlistasfolders&amp;gt;true&amp;lt;/playlistasfolders&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== playlistretries ===&lt;br /&gt;
{{anchor|.3Cplaylistretries.3E}}&lt;br /&gt;
The number of retries attempted if a source is offline. With this control you can alter the number of consecutive failed items before a playlist fails.&lt;br /&gt;
&lt;br /&gt;
Default:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;playlistretries&amp;gt;100&amp;lt;/playlistretries&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== playlisttimeout ===&lt;br /&gt;
{{anchor|.3Cplaylisttimeout.3E}}&lt;br /&gt;
The timeout, in seconds, before item failure.&lt;br /&gt;
&lt;br /&gt;
Default:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;playlisttimeout&amp;gt;20&amp;lt;/playlisttimeout&amp;gt; &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== sorttokens ===&lt;br /&gt;
Allows you to specify additional tokens that will be ignored at the start of lines during sorting.&lt;br /&gt;
{{note|Sort tokens are case sensitive.}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;sorttokens&amp;gt;&lt;br /&gt;
  &amp;lt;token&amp;gt;the&amp;lt;/token&amp;gt;&lt;br /&gt;
&amp;lt;/sorttokens&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In the above example &amp;quot;the &amp;quot;, &amp;quot;the.&amp;quot; and &amp;quot;the_&amp;quot; will be ignored at the start of titles or names when sorting items, in both video and music libraries. A separator can also be specified, for example&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;sorttokens&amp;gt;&lt;br /&gt;
    &amp;lt;token separators=&amp;quot;&#039;&amp;quot;&amp;gt;L&amp;lt;/token&amp;gt;&lt;br /&gt;
&amp;lt;/sorttokens&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
In that case the value L&#039;, as in French movie name &#039;&#039;L&#039;argent&#039;&#039;, will be ignored and the item listed under &amp;quot;A&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== musicdatabase/videodatabase ===&lt;br /&gt;
{{anchor|.3Cmusicdatabase.3E/.3Cvideodatabase.3E|musicdatabase/videodatabase|database tags music/video/tv/epg/adsp}}&lt;br /&gt;
{{main|MySQL}}&lt;br /&gt;
&amp;lt;section begin=&amp;quot;videodatabase&amp;quot; /&amp;gt;&lt;br /&gt;
Allows advanced customization of the default database settings for music, video, TV, EPG, and ADSP databases.&lt;br /&gt;
&lt;br /&gt;
:{{note| &#039;&#039;&#039;It is HIGHLY recommended that you not attempt to place an sqlite3 database outside of kodi&#039;s path.  sqlite3 contains no filesystem abstraction, so this will plain break on any non-local (as far as Kodi is concerned) paths.  Use this for mysql only.&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Parent tags:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;videodatabase&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;musicdatabase&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;tvdatabase&amp;gt;&#039;&#039;&#039; - Highly experimental/unstable and no practical benefit for most users. &#039;&#039;&#039;Avoid using.&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;epgdatabase&amp;gt;&#039;&#039;&#039; - Highly experimental/unstable and no practical benefit for most users. &#039;&#039;&#039;Avoid using.&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;adspdatabase&amp;gt;&#039;&#039;&#039; - Highly experimental/unstable and no practical benefit for most users. &#039;&#039;&#039;Avoid using.&#039;&#039;&#039;&lt;br /&gt;
{{MySQL warning}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Child tags: &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;type&amp;gt;&lt;br /&gt;
: &#039;&#039;Required&#039;&#039; - Can be either &amp;quot;sqlite3&amp;quot; or &amp;quot;mysql&amp;quot; (default: sqlite3)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;host&amp;gt;&lt;br /&gt;
:&#039;&#039;Required&#039;&#039; - &lt;br /&gt;
* sqlite3: defines the relative path to the database file (eg. /usr/local/kodi/databases).&lt;br /&gt;
* mysql: defines the host of the mysql socket (eg. localhost, 192.168.0.1, etc)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;port&amp;gt;&lt;br /&gt;
: &#039;&#039;Optional&#039;&#039; -&lt;br /&gt;
* sqlite3: silently ignored&lt;br /&gt;
* mysql: defines the port of the mysql socket (default: 3306)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;name&amp;gt;&lt;br /&gt;
: &#039;&#039;Optional&#039;&#039; -&lt;br /&gt;
:by default &amp;quot;MyVideos&amp;quot;+DB number will be used.&lt;br /&gt;
* sqlite3: defines the name of the database file to read from, excluding the &amp;quot;.db&amp;quot; extension.&lt;br /&gt;
* mysql: defines the name of the database to use&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;user&amp;gt;&lt;br /&gt;
: &#039;&#039;Required for MySQL&#039;&#039; -&lt;br /&gt;
* sqlite3: silently ignored&lt;br /&gt;
* mysql: defines the user with privileged access to the database&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;pass&amp;gt;&lt;br /&gt;
: &#039;&#039;Required for MySQL&#039;&#039; -&lt;br /&gt;
* sqlite3: silently ignored&lt;br /&gt;
* mysql: defines the password for the user with privileged access to the database&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;compression&amp;gt;&lt;br /&gt;
: &#039;&#039;Optional&#039;&#039; - Defaults to false. Set to &amp;quot;true&amp;quot; to enable MySQL compression protocol. Performance benefit is going to be largely dependent on the network bandwidth, latency between database and clients and on the size of the result sets. [https://github.com/xbmc/xbmc/pull/6484]&lt;br /&gt;
: {{Note|Slower clients (such as the RPi and others) won&#039;t benefit from it as the zlib de-compression overhead is higher than the actual compression savings}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;key&amp;gt;&lt;br /&gt;
: &#039;&#039;Optional&#039;&#039; - SSL setting for MySQL [https://github.com/xbmc/xbmc/pull/2566]&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;cert&amp;gt;&lt;br /&gt;
: &#039;&#039;Optional&#039;&#039; - SSL setting for MySQL [https://github.com/xbmc/xbmc/pull/2566]&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;ca&amp;gt;&lt;br /&gt;
: &#039;&#039;Optional&#039;&#039; - SSL setting for MySQL [https://github.com/xbmc/xbmc/pull/2566]&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;capath&amp;gt;&lt;br /&gt;
: &#039;&#039;Optional&#039;&#039; - SSL setting for MySQL [https://github.com/xbmc/xbmc/pull/2566]&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;ciphers&amp;gt;&lt;br /&gt;
: &#039;&#039;Optional&#039;&#039; - SSL setting for MySQL [https://github.com/xbmc/xbmc/pull/2566]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Examples:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
1) Configure a database for MySQL.&lt;br /&gt;
:{{note| &#039;&#039;The &#039;&#039;&#039;&amp;lt;videodatabase&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;musicdatabase&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;tvdatabase&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;epgdatabase&amp;gt;&#039;&#039;&#039;, and &#039;&#039;&#039;&amp;lt;adspdatabase&amp;gt;&#039;&#039;&#039; tags are interchangeable here.&#039;&#039;}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;videodatabase&amp;gt;&lt;br /&gt;
  &amp;lt;type&amp;gt;mysql&amp;lt;/type&amp;gt;&lt;br /&gt;
  &amp;lt;host&amp;gt;192.168.0.10&amp;lt;/host&amp;gt;&lt;br /&gt;
  &amp;lt;name&amp;gt;kodi_video&amp;lt;/name&amp;gt;&lt;br /&gt;
  &amp;lt;user&amp;gt;kodi&amp;lt;/user&amp;gt;&lt;br /&gt;
  &amp;lt;pass&amp;gt;kodi&amp;lt;/pass&amp;gt;&lt;br /&gt;
&amp;lt;/videodatabase&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2) Configure a database for an sqlite database.&lt;br /&gt;
:{{note| &#039;&#039;The &#039;&#039;&#039;&amp;lt;videodatabase&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;musicdatabase&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;tvdatabase&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;epgdatabase&amp;gt;&#039;&#039;&#039;, and &#039;&#039;&#039;&amp;lt;adspdatabase&amp;gt;&#039;&#039;&#039; tags are interchangeable here.&#039;&#039;}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;musicdatabase&amp;gt;&lt;br /&gt;
  &amp;lt;type&amp;gt;sqlite3&amp;lt;/type&amp;gt;&lt;br /&gt;
  &amp;lt;host&amp;gt;/usr/local/share/kodi/databases&amp;lt;/host&amp;gt;&lt;br /&gt;
&amp;lt;/musicdatabase&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section end=&amp;quot;videodatabase&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== externalplayer ===&lt;br /&gt;
{{anchor|.3Cexternalplayer.3E}}&lt;br /&gt;
{{see|External players}}&lt;br /&gt;
&lt;br /&gt;
== Music settings ==&lt;br /&gt;
&lt;br /&gt;
=== musicextensions ===&lt;br /&gt;
{{anchor|.3Cmusicextensions.3E}}&lt;br /&gt;
&amp;lt;section begin=&amp;quot;musicextensions&amp;quot; /&amp;gt;&lt;br /&gt;
Default extensions for MUSIC:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.nsv .m4a .flac .aac .strm .pls .rm .rma .mpa .wav .wma .ogg .mp3 .mp2 .m3u .gdm .imf .m15 .sfx&lt;br /&gt;
.uni .ac3 .dts .cue .aif .aiff .wpl .xspf .ape .mac .mpc .mp+ .mpp .shn .zip .wv .dsp .xsp .xwav&lt;br /&gt;
.waa .wvs .wam .gcm .idsp .mpdsp .mss .spt .rsd .sap .cmc .cmr .dmc .mpt .mpd .rmt .tmc .tm8&lt;br /&gt;
.tm2 .oga .url .pxml .tta .rss .wtv .mka .tak .opus .dff .dsf .m4b .dtshd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is possible to add or remove extensions for Music, using the following XML tags. Useful if you keep, say, FLAC and mp3 versions of music in the same folder. The &amp;lt;remove&amp;gt; tag can be used to remove mp3 from being listed in the library, leaving only the higher quality FLAC being displayed.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;musicextensions&amp;gt;&lt;br /&gt;
   &amp;lt;add&amp;gt;.ex1|.ex2&amp;lt;/add&amp;gt;&lt;br /&gt;
   &amp;lt;remove&amp;gt;.ex3|.ex4&amp;lt;/remove&amp;gt;&lt;br /&gt;
 &amp;lt;/musicextensions&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section end=&amp;quot;musicextensions&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== cddbaddress ===&lt;br /&gt;
{{anchor|.3Ccddbaddress.3E}}&lt;br /&gt;
The address of the online CDDb database.  You may set this to another freedb mirror if there is a more suitable one.  &lt;br /&gt;
&lt;br /&gt;
Default: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;gt;&lt;br /&gt;
&amp;lt;cddbaddress&amp;gt;freedb.freedb.org&amp;lt;/cddbaddress&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== songinfoduration ===&lt;br /&gt;
{{anchor|.3Csonginfoduration.3E}}&lt;br /&gt;
This controls how long the song information will remain onscreen when the song changes during visualisations.  The valid range is &amp;quot;1&amp;quot; to &amp;quot;Indefinite (0)&amp;quot;, in seconds.  This does not include the duration of any transition effects. &lt;br /&gt;
&lt;br /&gt;
Default:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;songinfoduration&amp;gt;10&amp;lt;/songinfoduration&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== musicfilenamefilters ===&lt;br /&gt;
{{anchor|.3Cmusicfilenamefilters.3E}}&lt;br /&gt;
Contains filters to match music information (artist, title etc.) from a tag-less music filename.  The first &amp;lt;filter&amp;gt; to match completely is used. Matched items include:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
%A - Artist&lt;br /&gt;
%T - Title&lt;br /&gt;
%B - Album&lt;br /&gt;
%N - Track number&lt;br /&gt;
%S - Part of set (disk number)&lt;br /&gt;
%D - Duration&lt;br /&gt;
%G - Genre&lt;br /&gt;
%Y - Year&lt;br /&gt;
%R - Rating&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;musicfilenamefilters&amp;gt;&lt;br /&gt;
  &amp;lt;filter&amp;gt;%A - %T&amp;lt;/filter&amp;gt;&lt;br /&gt;
&amp;lt;/musicfilenamefilters&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== musiclibrary ===&lt;br /&gt;
Options specific to the Music Library&lt;br /&gt;
&amp;lt;section begin=&amp;quot;MusicLibrary&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot; line=&#039;line&#039;&amp;gt;&lt;br /&gt;
&amp;lt;musiclibrary&amp;gt;&lt;br /&gt;
    &amp;lt;allitemsonbottom&amp;gt;true&amp;lt;/allitemsonbottom&amp;gt;       &amp;lt;!-- sorts the &amp;quot;*All&amp;quot; items at the bottom of the list when in Ascending order --&amp;gt;&lt;br /&gt;
    &amp;lt;cleanonupdate&amp;gt;false&amp;lt;/cleanonupdate&amp;gt;            &amp;lt;!-- default set to false to prevent Kodi from removing items from the database while updating.  --&amp;gt;&lt;br /&gt;
    &amp;lt;recentlyaddeditems&amp;gt;35&amp;lt;/recentlyaddeditems&amp;gt;     &amp;lt;!-- number of recently added items. Defaults to 25 --&amp;gt;&lt;br /&gt;
    &amp;lt;albumformat&amp;gt;%B - %Y&amp;lt;/albumformat&amp;gt;              &amp;lt;!-- album label template, default is &amp;quot;%B&amp;quot; --&amp;gt;&lt;br /&gt;
    &amp;lt;prioritiseapetags&amp;gt;true&amp;lt;/prioritiseapetags&amp;gt;     &amp;lt;!-- prioritise APEv2 tags over ID3v1/2 tags, default is false. --&amp;gt;&lt;br /&gt;
    &amp;lt;itemseparator&amp;gt; / &amp;lt;/itemseparator&amp;gt;              &amp;lt;!-- separator used for multiple artists/genres in tags. Note, this is *space* *slash* *space* See Note below--&amp;gt;&lt;br /&gt;
    &amp;lt;artistseparators&amp;gt;                              &amp;lt;!-- separator used for multiple artists. Note that spaces are used for some separators. See Note below--&amp;gt;&lt;br /&gt;
        &amp;lt;separator&amp;gt;;&amp;lt;/separator&amp;gt;&lt;br /&gt;
        &amp;lt;separator&amp;gt;:&amp;lt;/separator&amp;gt;&lt;br /&gt;
        &amp;lt;separator&amp;gt;|&amp;lt;/separator&amp;gt;&lt;br /&gt;
        &amp;lt;separator&amp;gt; feat. &amp;lt;/separator&amp;gt;&lt;br /&gt;
        &amp;lt;separator&amp;gt; ft. &amp;lt;/separator&amp;gt;&lt;br /&gt;
    &amp;lt;/artistseparators&amp;gt;&lt;br /&gt;
    &amp;lt;dateadded&amp;gt;1&amp;lt;/dateadded&amp;gt;                        &amp;lt;!--0 results in using the current datetime when adding a song;&lt;br /&gt;
                                                        1 (default) results in prefering to use the files mtime (if it&#039;s valid) and only using the file&#039;s ctime if the mtime isn&#039;t valid;&lt;br /&gt;
                                                        2 results in using the newer datetime of the file&#039;s mtime and ctime   --&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
    &amp;lt;!-- New for v19 and later releases --&amp;gt;&lt;br /&gt;
    &amp;lt;useisodates&amp;gt;false&amp;lt;/useisodates&amp;gt;                &amp;lt;!-- When &amp;quot;true&amp;quot; all dates displayed in the music library will be in ISO 8601 format (YYYY-MM-DD or part thereof).&lt;br /&gt;
                                                         Defaults to &amp;quot;false&amp;quot; (use localized dates) --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;!-- New for v21 and later --&amp;gt;&lt;br /&gt;
    &amp;lt;artistnavigatestosongs&amp;gt;true&amp;lt;/artistnavigatestosongs&amp;gt;  &amp;lt;!-- When set to &amp;quot;true&amp;quot; Kodi will skip directly to the songs of an artist. Instead of navigating artist -&amp;gt; album -&amp;gt; disc -&amp;gt; songs, it&lt;br /&gt;
                                                                will navigate artist -&amp;gt; songs.  This is similar to how Spotify etc navigates.  Defaults to &amp;quot;false&amp;quot; --&amp;gt;&lt;br /&gt;
&amp;lt;/musiclibrary&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
{{Note|Changing the &amp;lt;itemseparator&amp;gt; or &amp;lt;artistseparators&amp;gt; will only affect newly added items. A rescan won&#039;t change the existing ones. Remove the Source(s) or delete the Music DB and rebuild. This process should be made easier from v18 and up using &amp;lt;promptfulltagscan&amp;gt;. &amp;lt;artistseparators&amp;gt; are cAsE sensitive and only used if you are not using MBID&#039;s.  Separators will be used alongside MBID&#039;s from v22 onwards.}}&amp;lt;section end=&amp;quot;MusicLibrary&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Photos settings ==&lt;br /&gt;
&lt;br /&gt;
=== pictureextensions ===&lt;br /&gt;
{{anchor|.3Cpictureextensions.3E}}&lt;br /&gt;
A list of additional file-extensions to allow (&#039;&#039;&#039;add&#039;&#039;&#039;) or exclude (&#039;&#039;&#039;remove&#039;&#039;&#039;) in the My Pictures window.&lt;br /&gt;
&lt;br /&gt;
Default extensions for PICTURES:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.png .jpg .jpeg .bmp .gif .ico .tif .tiff .tga .pcx .cbz .zip .rss .webp .jp2 .apng&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Examples:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pictureextensions&amp;gt;&lt;br /&gt;
  &amp;lt;add&amp;gt;.ex1|.ex2&amp;lt;/add&amp;gt;&lt;br /&gt;
  &amp;lt;remove&amp;gt;.ex3|.ex4&amp;lt;/remove&amp;gt;&lt;br /&gt;
&amp;lt;/pictureextensions&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== pictureexcludes ===&lt;br /&gt;
{{anchor|.3Cpictureexcludes.3E}}&lt;br /&gt;
Matches filenames or folders which should be excluded from being displayed in My Pictures using a list of Regular Expressions&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pictureexcludes&amp;gt;  &amp;lt;!-- Regular expressions that if evaluated to true won&#039;t be displayed in My Pictures --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;small&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;[-\._ ](sample|trailer)[-\._ ]&amp;lt;/regexp&amp;gt;&lt;br /&gt;
&amp;lt;/pictureexcludes&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== slideshow ===&lt;br /&gt;
{{anchor|.3Cslideshow.3E}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;slideshow&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Amount to pan images as a percentage of the screen --&amp;gt;&lt;br /&gt;
  &amp;lt;panamount&amp;gt;2.5&amp;lt;/panamount&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Amount to zoom images as a percentage of the screen --&amp;gt;&lt;br /&gt;
  &amp;lt;zoomamount&amp;gt;5.0&amp;lt;/zoomamount&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Amount to compensate (zoom) images to attempt to reduce black bars. --&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Results in cropping of the longer length of the image in order to reduce the black bars on the shorter length of the image.  --&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Defaults to 20. --&amp;gt;&lt;br /&gt;
  &amp;lt;blackbarcompensation&amp;gt;20&amp;lt;/blackbarcompensation&amp;gt;  &lt;br /&gt;
&amp;lt;/slideshow&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Network settings ==&lt;br /&gt;
&lt;br /&gt;
=== ftp ===&lt;br /&gt;
{{anchor|.3Cftp.3DE}}&lt;br /&gt;
Specific settings if a ftp server is in use as a source&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ftp&amp;gt;&lt;br /&gt;
  &amp;lt;remotethumbs&amp;gt;true&amp;lt;/remotethumbs&amp;gt; &amp;lt;!-- enable extraction of flag and thumb for ftp --&amp;gt;&lt;br /&gt;
&amp;lt;/ftp&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== samba ===&lt;br /&gt;
{{anchor|.3Csamba.3E}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;samba&amp;gt;&lt;br /&gt;
  &amp;lt;doscodepage&amp;gt;&amp;lt;/doscodepage&amp;gt;  &amp;lt;!-- code page to use for filenames --&amp;gt;&lt;br /&gt;
  &amp;lt;clienttimeout&amp;gt;10&amp;lt;/clienttimeout&amp;gt;  &amp;lt;!-- timeout (in seconds) --&amp;gt;&lt;br /&gt;
  &amp;lt;statfiles&amp;gt;true&amp;lt;/statfiles&amp;gt;  &amp;lt;!-- Set to false to disable smb stat() on files to speed up listings of large directories (over slow links) --&amp;gt;&lt;br /&gt;
&amp;lt;/samba&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== hosts ===&lt;br /&gt;
{{anchor|.3Cfhosts.3E}}&lt;br /&gt;
Static dns entries which take precedence over your dns server.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;hosts&amp;gt;&lt;br /&gt;
  &amp;lt;entry name=&amp;quot;HOSTNAME&amp;quot;&amp;gt;IPADDRESS&amp;lt;/entry&amp;gt;&lt;br /&gt;
&amp;lt;/hosts&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== network ===&lt;br /&gt;
{{anchor|.3Cnetwork.3E}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml line=&#039;line&#039;&amp;gt;&lt;br /&gt;
&amp;lt;network&amp;gt;&lt;br /&gt;
  &amp;lt;curlclienttimeout&amp;gt;10&amp;lt;/curlclienttimeout&amp;gt;  &amp;lt;!-- Timeout in seconds for libcurl (http/ftp) connections --&amp;gt;&lt;br /&gt;
  &amp;lt;curllowspeedtime&amp;gt;20&amp;lt;/curllowspeedtime&amp;gt;    &amp;lt;!-- Time in seconds for libcurl to consider a connection lowspeed --&amp;gt;&lt;br /&gt;
  &amp;lt;curlretries&amp;gt;2&amp;lt;/curlretries&amp;gt;               &amp;lt;!-- Amount of retries for certain failed libcurl operations (e.g. timeout) --&amp;gt;&lt;br /&gt;
  &amp;lt;httpproxyusername&amp;gt;&amp;lt;/httpproxyusername&amp;gt;    &amp;lt;!-- username for Basic Proxy Authentication --&amp;gt;&lt;br /&gt;
  &amp;lt;httpproxypassword&amp;gt;&amp;lt;/httpproxypassword&amp;gt;    &amp;lt;!-- password for Basic Proxy Authentication --&amp;gt;&lt;br /&gt;
  &amp;lt;disableipv6&amp;gt;false&amp;lt;/disableipv6&amp;gt;           &amp;lt;!-- Certain hardware/OS combinations have trouble with ipv6. Set &amp;quot;true&amp;quot; to disable --&amp;gt;&lt;br /&gt;
  &amp;lt;disablehttp2&amp;gt;false&amp;lt;/disablehttp2&amp;gt;         &amp;lt;!-- Added in v19- Allows disabling HTTP2 for broken Curl / HTTP2 servers --&amp;gt;&lt;br /&gt;
  &amp;lt;nfstimeout&amp;gt;30&amp;lt;/nfstimeout&amp;gt;                &amp;lt;!-- Added in v19- Timeout in seconds for NFS access, 0 = wait forever (previous behaviour) default is 5s  --&amp;gt;&lt;br /&gt;
  &amp;lt;catrustfile&amp;gt;filepath&amp;lt;/catrustfile&amp;gt;        &amp;lt;!-- Added in v19- Allows specifying a custom SSL CA trust store bundle. e.g. special://masterprofile/cacerts.pem --&amp;gt;&lt;br /&gt;
  &amp;lt;curlkeepaliveinterval&amp;gt;30&amp;lt;/curlkeepaliveinterval&amp;gt;     &amp;lt;!-- Added in v19- Enable TCP keepalive probes in curl --&amp;gt;&lt;br /&gt;
  &amp;lt;nfsretries&amp;gt;0&amp;lt;/nfsretries&amp;gt;                 &amp;lt;!-- 0 to disable, default: -1 (unlimited) Added in v20--&amp;gt;&lt;br /&gt;
&amp;lt;/network&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More information:&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
* &amp;lt;curlkeepaliveinterval&amp;gt;&amp;lt;ref&amp;gt;https://github.com/xbmc/xbmc/pull/19319&amp;lt;/ref&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
* &amp;lt;nfsretries&amp;gt;&amp;lt;ref&amp;gt;https://github.com/xbmc/xbmc/pull/19513&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== airtunesport ===&lt;br /&gt;
{{anchor|.3Cairtunesport.3E}}&amp;lt;section begin=&amp;quot;airtunesport&amp;quot; /&amp;gt;&lt;br /&gt;
This overwrites the defalt listening port of the AirTunes server (announced via zeroconf).&lt;br /&gt;
&amp;lt;section end=&amp;quot;airtunesport&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== airplayport ===&lt;br /&gt;
{{anchor|.3Cairplayport.3E}}&amp;lt;section begin=&amp;quot;airplayport&amp;quot; /&amp;gt;&lt;br /&gt;
This overwrites the default listening port of the AirPlay server (announced via zeroconf).&lt;br /&gt;
&amp;lt;section end=&amp;quot;airplayport&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== File system settings ==&lt;br /&gt;
&lt;br /&gt;
=== packagefoldersize ===&lt;br /&gt;
&amp;lt;section begin=&amp;quot;packagefoldersize&amp;quot; /&amp;gt;&lt;br /&gt;
{{anchor|.3Cpackagefoldersize.3E}}&lt;br /&gt;
{{xml setting&lt;br /&gt;
 | tag name = packagefoldersize&lt;br /&gt;
 | option type = numerical&lt;br /&gt;
 | option values = &lt;br /&gt;
 | default values = 200&lt;br /&gt;
 | platform = all&lt;br /&gt;
 | XBMC version = 12&lt;br /&gt;
 | description = The amount (in megabytes) of add-on zip packages saved from previous add-on installs. These packages are mainly used for the [[Add-ons|add-on]] rollback feature. Increasing the size should increase the amount of past versions saved. Defaults to 200 MB.&lt;br /&gt;
 | example = Example: &amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&amp;lt;packagefoldersize&amp;gt;200&amp;lt;/packagefoldersize&amp;gt; &amp;lt;!-- this example would keep up to 200MB of add-on packages. --&amp;gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;section end=&amp;quot;packagefoldersize&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== detectasudf ===&lt;br /&gt;
{{anchor|.3Cdetectasudf.3E}}&lt;br /&gt;
{{xml setting&lt;br /&gt;
 | tag name = detectasudf&lt;br /&gt;
 | option type = binary&lt;br /&gt;
 | option values = true, false&lt;br /&gt;
 | default values = false&lt;br /&gt;
 | platform = all&lt;br /&gt;
 | XBMC version = &lt;br /&gt;
 | description = Set to true if you wish to detect joint ISO9660/UDF disks as UDF.&lt;br /&gt;
 | example = Example: &amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&amp;lt;detectasudf&amp;gt;false&amp;lt;/detectasudf&amp;gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== handlemounting ===&lt;br /&gt;
{{anchor|.3Chandlemounting.3E}}&lt;br /&gt;
{{xml setting&lt;br /&gt;
 | tag name = handlemounting&lt;br /&gt;
 | option type = binary&lt;br /&gt;
 | option values = true, false&lt;br /&gt;
 | default values = false&lt;br /&gt;
 | platform = Linux&lt;br /&gt;
 | XBMC version = &lt;br /&gt;
 | description = Only used in Linux, it defines if Kodi should attempt to mount media drives (via udisks or udisks2).&amp;lt;br/&amp;gt;Default: False. If kodi is executed with the --standalone option (e.g. as done by kodi-standalone.sh) it by default will be True.&lt;br /&gt;
 | example = Example: &amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&amp;lt;handlemounting&amp;gt;false&amp;lt;/handlemounting&amp;gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== automountopticalmedia ===&lt;br /&gt;
{{xml setting&lt;br /&gt;
 | tag name = automountopticalmedia&lt;br /&gt;
 | option type = binary&lt;br /&gt;
 | option values = true, false&lt;br /&gt;
 | default values = false&lt;br /&gt;
 | platform = Linux&lt;br /&gt;
 | XBMC version = &lt;br /&gt;
 | description = Only used in linux for the udisks and udisks2 providers&amp;lt;br/&amp;gt;defines if kodi should automount optical discs&amp;lt;ref&amp;gt;https://github.com/xbmc/xbmc/pull/20840&amp;lt;/ref&amp;gt;&lt;br /&gt;
 | example = Example: &amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&amp;lt;automountopticalmedia&amp;gt;true&amp;lt;/automountopticalmedia&amp;gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== pathsubstitution ===&lt;br /&gt;
{{anchor|.3Cpathsubstitution.3E}}&lt;br /&gt;
{{main|Path substitution}}&lt;br /&gt;
&lt;br /&gt;
{{divbox|red||&#039;&#039;&#039;Note:&#039;&#039;&#039; Path substition for &amp;quot;sources&amp;quot; and profiles is broken, and will &#039;&#039;&#039;NOT&#039;&#039;&#039; be fixed.}}&lt;br /&gt;
&lt;br /&gt;
Path substitutions are for use for redirecting file paths.  These are processed in order, and are useful for substituting an absolute path on a PC with a path suitable for Kodi to handle.  &lt;br /&gt;
&lt;br /&gt;
Default: No path substitutions defined.  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pathsubstitution&amp;gt;&lt;br /&gt;
  &amp;lt;substitute&amp;gt;&lt;br /&gt;
    &amp;lt;from&amp;gt;G:\dvds\&amp;lt;/from&amp;gt;&lt;br /&gt;
    &amp;lt;to&amp;gt;smb://somecomputer/g-share/dvds/&amp;lt;/to&amp;gt; &amp;lt;!-- Note the difference between the usage of forward and backslashes --&amp;gt;&lt;br /&gt;
  &amp;lt;/substitute&amp;gt;&lt;br /&gt;
&amp;lt;/pathsubstitution&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Input control settings ==&lt;br /&gt;
&lt;br /&gt;
=== remotedelay ===&lt;br /&gt;
{{anchor|.3Cremotedelay.3E}}&lt;br /&gt;
The repeat delay for a LIRC remote control. A delay value between 1 and 20 before a remote button starts repeating on a long keypress (i.e. continuously sending button pushes while it&#039;s held down). &lt;br /&gt;
&lt;br /&gt;
Default: 3&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;remotedelay&amp;gt;10&amp;lt;/remotedelay&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== controllerdeadzone ===&lt;br /&gt;
{{anchor|.3Ccontrollerdeadzone.3E}}&lt;br /&gt;
This advanced settings has been removed. &lt;br /&gt;
Since v17, the [[Advancedsettings.xml#controllerdeadzone|&amp;amp;lt;controllerdeadzone&amp;amp;gt;]] advanced setting has been removed. Deadzones can now be configured by plugging in the controller and selecting it in Settings -&amp;gt; System settings -&amp;gt; Input -&amp;gt; Peripherals.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== enablemultimediakeys ===&lt;br /&gt;
{{anchor|.3Cenablemultimediakeys.3E}}&lt;br /&gt;
This setting only has any effect on Windows versions of Kodi, and only applies to builds from 28th May 2011 onwards.&lt;br /&gt;
In Windows the multimedia keys generate a WM_APPCOMMAND message in addition the keypress. Kodi processes both keypresses and the WM_APPCOMMAND messages, and the end result would be that the command is executed twice. To avoid this, by default multimedia keypresses are disabled. Although it should rarely be necessary, the enablemultimediakeys setting allows you to enable the multimedia keys.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;enablemultimediakeys&amp;gt;true&amp;lt;/enablemultimediakeys&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== seeksteps ===&lt;br /&gt;
{{Main|Skip steps}}&lt;br /&gt;
&lt;br /&gt;
This setting changes which increments are available in the settings GUI for additive seeking. Note that &amp;lt;code&amp;gt;&amp;lt;seeksteps&amp;gt;&amp;lt;/code&amp;gt; is not used to actually choose which seek steps are enabled.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Default:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;seeksteps&amp;gt;7, 15, 30, 60, 180, 300, 600, 900, 1800&amp;lt;/seeksteps&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{editor note|the defaults need to be updated for seeksteps.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== touchscreen ===&lt;br /&gt;
{{anchor|.3Ctouchscreen.3E}}&lt;br /&gt;
This setting allows you to move/align the origin of the touch screen with the origin of the display used. If touch input does not result in a correct movement of the mouse pointer, the behaviour can be corrected with an offset and a stretch/compress factor.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;touchscreen&amp;gt;&lt;br /&gt;
		&amp;lt;x_offset&amp;gt;0&amp;lt;/x_offset&amp;gt; &amp;lt;!-- set pixel x offset to align it to the used display--&amp;gt;&lt;br /&gt;
		&amp;lt;y_offset&amp;gt;0&amp;lt;/y_offset&amp;gt; &amp;lt;!-- set pixel y offset to align it to the used display--&amp;gt;&lt;br /&gt;
		&amp;lt;x_stretch_factor&amp;gt;1.0&amp;lt;/x_stretch_factor&amp;gt; &amp;lt;!-- stretch/compress the touch x axis--&amp;gt;&lt;br /&gt;
		&amp;lt;y_stretch_factor&amp;gt;1.0&amp;lt;/y_stretch_factor&amp;gt; &amp;lt;!-- stretch/compress the touch y axis--&amp;gt;&lt;br /&gt;
    &amp;lt;/touchscreen&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== scanirserver ===&lt;br /&gt;
Introduced in v18 and used in MS Windows setups only.&amp;lt;ref&amp;gt;https://github.com/xbmc/xbmc/pull/13896&amp;lt;/ref&amp;gt;&lt;br /&gt;
Used to disable the regular connection attempts to the IR Server Suite when there is no remote to connect to.&lt;br /&gt;
&lt;br /&gt;
The default setting is to allow connection attempts. To disable connection attempts change value to &#039;&#039;&#039;false&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
     &amp;lt;scanirserver&amp;gt;true&amp;lt;/scanirserver&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== GUI rendering settings ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== algorithmdirtyregions ===&lt;br /&gt;
{{anchor|.3Calgorithmdirtyregions.3E}}&lt;br /&gt;
{{see also|HOW-TO:Modify dirty regions}}&lt;br /&gt;
&amp;lt;section begin=&amp;quot;algorithmdirtyregions&amp;quot; /&amp;gt;{{note|Some GPU/hardware configurations will have some minor issues (such as a visual &amp;quot;flicker&amp;quot;). For those situations try mode 2 or use the default (mode 3, which requires no advancedsetting). Almost all ARM-based devices (such as [[Android]]) willl likely have flickering issues.}}&lt;br /&gt;
 &lt;br /&gt;
Enable dirty-region processing. Dirty regions are any parts of the screen that have changed since the last frame. By not re-rendering what hasn&#039;t changed the GUI can be sped up. Because all GPUs work differently, only Mode 3 is guaranteed to work for everyone without flickering issues. This mode will reduce CPU/GPU usage, but will not increase GUI speed.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
! value !! result !! description&lt;br /&gt;
|-&lt;br /&gt;
! 0&lt;br /&gt;
| Off&lt;br /&gt;
| The entire viewport is always rendered.&lt;br /&gt;
|-&lt;br /&gt;
! 1&lt;br /&gt;
|Union&lt;br /&gt;
|All dirty regions are grouped into the smallest possible rectangle. This is typically the fastest mode for slower GPUs due to only making one pass.&lt;br /&gt;
|-&lt;br /&gt;
! 2&lt;br /&gt;
| {{nowrap|Cost reduction}}&lt;br /&gt;
| Each dirty region is presented separately, in as many passes as there are regions.&lt;br /&gt;
|-&lt;br /&gt;
! 3&lt;br /&gt;
| {{nowrap|Whole Screen}}&lt;br /&gt;
| The entire screen is rendered if there are any dirty regions. This is a safe default for drivers that clear buffer contents (manifests as blinking or vibrating images). &#039;&#039;&#039;Default&#039;&#039;&#039;&lt;br /&gt;
|}&amp;lt;section end=&amp;quot;algorithmdirtyregions&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;gui&amp;gt;    &lt;br /&gt;
  &amp;lt;algorithmdirtyregions&amp;gt;1&amp;lt;/algorithmdirtyregions&amp;gt;&lt;br /&gt;
&amp;lt;/gui&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== visualizedirtyregions ===&lt;br /&gt;
{{anchor|.3Cvisualizedirtyregions.3E}}&lt;br /&gt;
{{see also|HOW-TO:Modify dirty regions}}&lt;br /&gt;
&amp;lt;section begin=&amp;quot;visualizedirtyregions&amp;quot; /&amp;gt;Enable dirty-region visualization. Paints a rectangle over marked controls.&lt;br /&gt;
&lt;br /&gt;
* true: on&lt;br /&gt;
* false: off &#039;&#039;&#039;(Default)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{{note|This is only a development mode and isn&#039;t of use to normal users.}}&lt;br /&gt;
&amp;lt;section end=&amp;quot;visualizedirtyregions&amp;quot; /&amp;gt;&lt;br /&gt;
Example: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;gui&amp;gt;    &lt;br /&gt;
  &amp;lt;visualizedirtyregions&amp;gt;true&amp;lt;/visualizedirtyregions&amp;gt;&lt;br /&gt;
&amp;lt;/gui&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== smartredraw ===&lt;br /&gt;
&lt;br /&gt;
{{note|This is an experimental feature and you might face issues using it. So please be aware of that.}}&lt;br /&gt;
&lt;br /&gt;
This new feature was introduced in Kodi 18 and if enabled, the GUI process call (and therefore the render call) is only done if anything has changed. The result will be a faster GUI and less load if Kodi plays a video&lt;br /&gt;
&lt;br /&gt;
* true: on&lt;br /&gt;
* false: off &#039;&#039;&#039;(Default)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;gui&amp;gt;    &lt;br /&gt;
  &amp;lt;smartredraw&amp;gt;true&amp;lt;/smartredraw&amp;gt;&lt;br /&gt;
&amp;lt;/gui&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== anisotropicfiltering ===&lt;br /&gt;
&lt;br /&gt;
This new feature was introduced for the GL/GLES rendering backends in Kodi 22. It allows for better (hardware specific) filtering of textures at glancing angles. Depending on the hardware it might have no effect, or there might be a performance degradation. Typical values are &amp;quot;2&amp;quot; or &amp;quot;3&amp;quot;, but might go as high as &amp;quot;16&amp;quot;, depending on the hardware. The default is &amp;quot;1&amp;quot; (disabled).&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;gui&amp;gt;    &lt;br /&gt;
  &amp;lt;anisotropicfiltering&amp;gt;2&amp;lt;/anisotropicfiltering&amp;gt;&lt;br /&gt;
&amp;lt;/gui&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== fronttobackrendering ===&lt;br /&gt;
&lt;br /&gt;
This experimental feature was introduced for the GL/GLES rendering backends in Kodi 22. It enables a form of occlusion culling, by rendering opaque object from front to back. Most GPUs should benefit from this setting (especially on ARM based systems), often resulting in higher frame rates or less memory bandwidth usage.&lt;br /&gt;
&lt;br /&gt;
* true: on&lt;br /&gt;
* false: off &#039;&#039;&#039;(Default)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;gui&amp;gt;    &lt;br /&gt;
  &amp;lt;fronttobackrendering&amp;gt;true&amp;lt;/fronttobackrendering&amp;gt;&lt;br /&gt;
&amp;lt;/gui&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== geometryclear ===&lt;br /&gt;
&lt;br /&gt;
This experimental setting was introduced for the GL/GLES rendering backends in Kodi 22. It disables geometry based screen clearing in favor of fixed function clearing. Depending on the GPU (most ARM systems, Intel &amp;gt;gen 12), disabling the setting might be preferable for increased performance.&lt;br /&gt;
&lt;br /&gt;
* true: on &#039;&#039;&#039;(Default)&#039;&#039;&#039;&lt;br /&gt;
* false: off&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;gui&amp;gt;    &lt;br /&gt;
  &amp;lt;geometryclear&amp;gt;false&amp;lt;/geometryclear&amp;gt;&lt;br /&gt;
&amp;lt;/gui&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Other interface settings ==&lt;br /&gt;
&lt;br /&gt;
=== window ===&lt;br /&gt;
{{anchor|.3Cwindow.3E}}&lt;br /&gt;
{{note|This is a &amp;quot;hidden&amp;quot; guisettings.xml setting (defined by the mouse moving the window size), but it is mentioned here because it is a particularly useful override when used in advancedsettings.xml}}&lt;br /&gt;
This allows you to manually set the default size of Kodi&#039;s windowed mode.  If you resize the window, it will return to the set size when restarting.&lt;br /&gt;
&lt;br /&gt;
WIDTH and HEIGHT are the values for each dimension, in pixels.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;window&amp;gt;&lt;br /&gt;
    &amp;lt;width&amp;gt;WIDTH&amp;lt;/width&amp;gt;&lt;br /&gt;
    &amp;lt;height&amp;gt;HEIGHT&amp;lt;/height&amp;gt;&lt;br /&gt;
&amp;lt;/window&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== restrictcapsmask ===&lt;br /&gt;
{{anchor|.3Crestrictcapsmask.3E}}&lt;br /&gt;
Windows only. A bitmask to prevent Kodi from using detected texture capabilities of the GPU. This helps work around buggy hardware/drivers.&lt;br /&gt;
&lt;br /&gt;
1: prevent the use of compressed textures (DXT1, DXT3, DXT5)&lt;br /&gt;
2: prevent the use of non-power-of-two dimensions for textures&lt;br /&gt;
4: prevent the use of compressed textures with non-power-of-two dimensions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;restrictcapsmask&amp;gt;0&amp;lt;/restrictcapsmask&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== showexitbutton ===&lt;br /&gt;
{{anchor|.3Cshowexitbutton.3E}}&lt;br /&gt;
Setting to hide the exit button, useful for people running appliance based setups where exit would only confuse/complicate the user. Modifiable via the advancedsettings.xml by setting showexitbutton to false, default is true (show)&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;showexitbutton&amp;gt;true&amp;lt;/showexitbutton&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== fullscreen ===&lt;br /&gt;
{{anchor|.3Cfullscreen.3E}}&lt;br /&gt;
Starts Kodi in full screen (check resolutions!).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;fullscreen&amp;gt;false&amp;lt;/fullscreen&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== splash ===&lt;br /&gt;
{{anchor|.3Csplash.3E}}&lt;br /&gt;
Set to false if you wish to disable the startup splash image. Defaults to true.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;splash&amp;gt;true&amp;lt;/splash&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== cputempcommand ===&lt;br /&gt;
{{anchor|.3Ccputempcommand.3E}}&lt;br /&gt;
Provide a shell command Kodi will use to get CPU temperature. It should print out only &amp;quot;[temp as integer] [scale as one of &amp;quot;CcFf&amp;quot;]&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
;&amp;lt;u&amp;gt;For Nvidia and Raspberry Pi&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;cputempcommand&amp;gt;sed -e &#039;s/\([0-9]*\)[0-9]\{3\}.*/\1 C/&#039; /sys/class/thermal/thermal_zone0/temp&amp;lt;/cputempcommand&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
or&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;cputempcommand&amp;gt;echo &amp;quot;$(sensors -u | tail -n64 | grep temp1_input | awk &#039;{print $2 }&#039; |awk &#039;{printf(&amp;quot;%d\n&amp;quot;,$1 + 0.5);}&#039;) C&amp;quot;&amp;lt;/cputempcommand&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
;&amp;lt;u&amp;gt;For ATI/AMD&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;cputempcommand&amp;gt;sensors|sed -ne &amp;quot;s/temp1: \+[-+]\([0-9]\+\).*/\1 C/p&amp;quot;&amp;lt;/cputempcommand&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== gputempcommand ===&lt;br /&gt;
{{anchor|.3Cgputempcommand.3E}}&lt;br /&gt;
Provide a shell command Kodi will use to get GPU temperature. It should print out only &amp;quot;[temp as integer] [scale as one of &amp;quot;CcFf&amp;quot;]&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
;&amp;lt;u&amp;gt;For Nvidia&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;gputempcommand&amp;gt;echo &amp;quot;$(nvidia-settings -tq gpuCoreTemp) C&amp;quot;&amp;lt;/gputempcommand&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
or&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;gputempcommand&amp;gt;echo &amp;quot;$(nvidia-smi -q -d TEMPERATURE | grep Gpu | cut -c35-36) C&amp;quot;&amp;lt;/gputempcommand&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
;&amp;lt;u&amp;gt;For ATI/AMD&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;gputempcommand&amp;gt;/usr/bin/aticonfig --od-gettemperature | grep Temperature | cut -f 2 -d &amp;quot;-&amp;quot; | cut -f 1 -d &amp;quot;.&amp;quot; | sed -e &amp;quot;s, ,,&amp;quot; | sed &#039;s/$/ C/&#039;&amp;lt;/gputempcommand&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;u&amp;gt;For Raspberry Pi&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;gputempcommand&amp;gt;/opt/vc/bin/vcgencmd measure_temp | sed -e &amp;quot;s/temp=//&amp;quot; -e &amp;quot;s/\..*&#039;/ /&amp;quot;&amp;lt;/gputempcommand&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== glrectanglehack ===&lt;br /&gt;
{{anchor|.3Cglrectanglehack.3E}}&lt;br /&gt;
Problems with ghosting or videos which are only played back in the left upper quarter? The following ATI hack may solve it.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;glrectanglehack&amp;gt;yes&amp;lt;/glrectanglehack&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== alwaysontop ===&lt;br /&gt;
{{anchor|.3Calwaysontop.3E}}&lt;br /&gt;
Added in XBMC v9.11 (Windows OS only). Keeps Kodi always on top when windowed.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;alwaysontop&amp;gt;yes&amp;lt;/alwaysontop&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There is also a fake fullscreen GUI option in Kodi&#039;s settings.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== minimizetotray ===&lt;br /&gt;
{{anchor|.3Cminimizetotray.3E}}&lt;br /&gt;
{{note|Available in Kodi v20 and above.}}&lt;br /&gt;
&lt;br /&gt;
Windows only. Minimizes Kodi to the system tray. Defaults to false.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;minimizetotray&amp;gt;true&amp;lt;/minimizetotray&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Removed tags =&lt;br /&gt;
{{anchor|Recently removed tags}}&lt;br /&gt;
* {{anchor|.3Cthumbsize.3E}}&#039;&#039;&#039;&amp;lt;thumbsize&amp;gt;&#039;&#039;&#039; - replaced by &amp;lt;[[#imageres|imageres]]&amp;gt; in v12 Frodo&lt;br /&gt;
* {{anchor|.3Cfanartheight.3E}}&#039;&#039;&#039;&amp;lt;fanartheight&amp;gt;&#039;&#039;&#039; - replaced by &amp;lt;[[#fanartres|fanartres]]&amp;gt; in v12 Frodo&lt;br /&gt;
* {{anchor|.3Cdvdthumbs.3E}}&#039;&#039;&#039;&amp;lt;dvdthumbs&amp;gt;&#039;&#039;&#039; - removed in v12 Frodo&lt;br /&gt;
* {{anchor|.3Cbusydialogdelayms.3E}}&#039;&#039;&#039;&amp;lt;busydialogdelayms&amp;gt;&#039;&#039;&#039; - removed in v12 Frodo&lt;br /&gt;
* {{anchor|.3Cbginfoloadermaxthreads.3E}}&#039;&#039;&#039;&amp;lt;bginfoloadermaxthreads&amp;gt;&#039;&#039;&#039; - removed in v13 Gotham&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;showepginfoonselect&amp;gt;&#039;&#039;&#039; - replaced by a GUI setting in v13 Gotham&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;resample&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;forceDirectSound&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;audiophile&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;audiosinkbufferdurationmsec&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;allowtranscode44100&amp;gt;&#039;&#039;&#039;, and &#039;&#039;&#039;&amp;lt;streamsilence&amp;gt;&#039;&#039;&#039; - These were various sub-tags for &amp;lt;audio&amp;gt; that were removed in v13 Gotham and either replaced by GUI settings or were no longer needed.&lt;br /&gt;
* {{anchor|.3Cenableairtunesdebuglog.3E}}&#039;&#039;&#039;&amp;lt;enableairtunesdebuglog&amp;gt;&#039;&#039;&#039; - replaced by a GUI option in v14 Helix&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;videoDisableHi10pMultithreading&amp;gt;&#039;&#039;&#039; - renamed to &amp;lt;disableswmultithreading&amp;gt; in v14 Helix&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;hideallitems&amp;gt;&#039;&#039;&#039; - For both the &amp;lt;code&amp;gt;&amp;lt;videolibrary&amp;gt;&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;&amp;lt;musiclibrary&amp;gt;&amp;lt;/code&amp;gt; sections, this is replaced by a GUI option in v15 Isengard&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;SmallStepBackSeconds&amp;gt;&#039;&#039;&#039; - In v15 the &amp;lt;code&amp;gt;SmallStepBack&amp;lt;/code&amp;gt; [[Action_IDs]] has been replaced by &amp;lt;code&amp;gt;seek(-7)&amp;lt;/code&amp;gt; in default keymaps. See &#039;&#039;&#039;[[skip steps]]&#039;&#039;&#039; for details. When the original &amp;lt;code&amp;gt;SmallStepBack&amp;lt;/code&amp;gt; action ID is used it defaults to the first backwards [[skip steps|additive seeking value]].&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;timeseekforward&amp;gt;/&amp;lt;timeseekbackward&amp;gt;&#039;&#039;&#039; - In v15 these tags are replaced by GUI options via [[skip steps|additive seeking]], which is configured in the GUI. See &#039;&#039;&#039;[[skip steps]]&#039;&#039;&#039; for details.&lt;br /&gt;
* {{anchor|.3Ckaraoke.3E}}&#039;&#039;&#039;&amp;lt;karaoke&amp;gt;&#039;&#039;&#039; - In v16 all of the karaoke features in Kodi were removed.&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;useddsfanart&amp;gt;&#039;&#039;&#039; - removed in v17 Krypton.&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;cachemembuffersize&amp;gt;&#039;&#039;&#039; and &#039;&#039;&#039;&amp;lt;readbufferfactor&amp;gt;&#039;&#039;&#039; - In v17 &#039;&#039;&#039;&amp;lt;cachemembuffersize&amp;gt;&#039;&#039;&#039; is renamed to &#039;&#039;&#039;&amp;lt;memorysize&amp;gt;&#039;&#039;&#039; and &amp;lt;code&amp;gt;&amp;lt;readbufferfactor&amp;gt;&amp;lt;/code&amp;gt; is renamed to &amp;lt;code&amp;gt;&amp;lt;readfactor&amp;gt;&amp;lt;/code&amp;gt;. In addition, all three buffer related settings in &amp;lt;network&amp;gt; are moved out of &amp;lt;network&amp;gt; and into a new &amp;lt;cache&amp;gt; parent tag.&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;minvideocachelevel&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;minaudiocachelevel&amp;gt;&#039;&#039;&#039;, and &#039;&#039;&#039;&amp;lt;cacheindvdplayer&amp;gt;&#039;&#039;&#039; have been removed in v17.&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;useffmpegvda&amp;gt;&#039;&#039;&#039; - Tag was only used for development testing. Removed in v17.&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;nofliptimeout&amp;gt;&#039;&#039;&#039; - Removed in v17&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;blackbarcolour&amp;gt;&#039;&#039;&#039; - Removed in v17 (maybe?)&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;disableswmultithreading&amp;gt;&#039;&#039;&#039; - Removed in v17 (maybe?)&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;controllerdeadzone&amp;gt;&#039;&#039;&#039; - Removed in v17&lt;br /&gt;
* {{anchor|.3Cmeasurerefreshrate.3E}}&#039;&#039;&#039;&amp;lt;measurerefreshrate&amp;gt;&#039;&#039;&#039; - Removed in v17 or v18?&lt;br /&gt;
* {{anchor|.3Cmyth.3E}}&#039;&#039;&#039;&amp;lt;myth&amp;gt;&#039;&#039;&#039; - Removed sometime between v16 to v18&lt;br /&gt;
* {{anchor|.3Ctuxbox.3E}}&#039;&#039;&#039;&amp;lt;tuxbox&amp;gt;&#039;&#039;&#039; - Removed&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;backgroundupdate&amp;gt;&#039;&#039;&#039; - Removed&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;hideemptyseries&amp;gt;&#039;&#039;&#039; - Replaced by a GUI option.&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;mymovies&amp;gt;&#039;&#039;&#039; and child tag &#039;&#039;&#039;&amp;lt;categoriestogenres&amp;gt;&#039;&#039;&#039; - Removed&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;albumssortbyartistthenyear&#039;&#039;&#039;&amp;gt; - Removed&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;albumformatright&amp;gt;&#039;&#039;&#039; - Removed&lt;br /&gt;
* {{anchor|.3Cremoterepeat.3E}}&#039;&#039;&#039;&amp;lt;remoterepeat&amp;gt;&#039;&#039;&#039; - Removed&lt;br /&gt;
* {{anchor|.3Callowd3d9ex.3E}}&#039;&#039;&#039;&amp;lt;allowd3d9ex&amp;gt;&#039;&#039;&#039; and {{anchor|.3Cforced3d9ex.3E}}&#039;&#039;&#039;&amp;lt;forced3d9ex&amp;gt;&#039;&#039;&#039; - Removed sometime between v16 to v18&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;lingertime&amp;gt;&#039;&#039;&#039; - Replaced by a GUI setting in v18&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;forcevaapienabled&amp;gt;&#039;&#039;&#039; - Removed in v18&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;dxvaallowhqscaling&amp;gt;&#039;&#039;&#039; - Removed in v18 &amp;lt;ref&amp;gt;https://github.com/xbmc/xbmc/pull/15466&amp;lt;/ref&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;promptfulltagscan&amp;gt;false&amp;lt;/promptfulltagscan&amp;gt;&#039;&#039;&#039; Removed in v18. Now automatically asked each time a scan is conducted.&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;omxdecodestartwithvalidframe&amp;gt;&#039;&#039;&#039; - This tag is only in some Raspberry Pi specific distributions, such as OpenELEC. As of March 2015, this tag has not been merged into &amp;quot;vanilla&amp;quot; Kodi builds&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;musicthumbs&amp;gt;&#039;&#039;&#039; Replaced in v19 by the GUI setting &#039;&#039;&#039;Thumbnail image files&#039;&#039;&#039; found in Media -&amp;gt; Music&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;artistextraart&amp;gt;&#039;&#039;&#039; Replaced in v19 by the GUI setting &#039;&#039;&#039;Artist art types whitelist&#039;&#039;&#039; found in Media -&amp;gt; Music&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;albumextraart&amp;gt;&#039;&#039;&#039; Replaced in v19 by the GUI setting &#039;&#039;&#039;Album art types whitelist&#039;&#039;&#039; found in Media -&amp;gt; Music&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;episodeextraart&amp;gt;&#039;&#039;&#039; Replaced in v19 by the GUI setting &#039;&#039;&#039;Episode art types whitelist&#039;&#039;&#039; found in Media -&amp;gt; Videos&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;tvshowextraart&amp;gt;&#039;&#039;&#039; Replaced in v19 by the GUI setting &#039;&#039;&#039;TV show art types whitelist&#039;&#039;&#039; found in Media -&amp;gt; Videos&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;tvseasonextraart&amp;gt;&#039;&#039;&#039; Replaced in v19 by the GUI setting &#039;&#039;&#039;TV show art types whitelist&#039;&#039;&#039; found in Media -&amp;gt; Videos&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;movieextraart&amp;gt;&#039;&#039;&#039; Replaced in v19 by the GUI setting &#039;&#039;&#039;Movie art types whitelist&#039;&#039;&#039; found in Media -&amp;gt; Videos&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;moviesetextraart&amp;gt;&#039;&#039;&#039; Replaced in v19 by the GUI setting &#039;&#039;&#039;Movie art types whitelist&#039;&#039;&#039; found in Media -&amp;gt; Videos&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;musicvideoextraart&amp;gt;&#039;&#039;&#039; Replaced in v19 by the GUI setting &#039;&#039;&#039;Music video art types whitelist&#039;&#039;&#039; found in Media -&amp;gt; Videos&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;fanart&amp;gt;&#039;&#039;&#039; Removed in v19&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;assfixedworks&amp;gt;&#039;&#039;&#039; Removed in v20&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;try10bitoutput&amp;gt;&#039;&#039;&#039; Removed in v20 and replaced with [[Settings/System/Display#Use_10_bit_for_SDR|Use 10 bit for SDR]] setting &amp;lt;ref&amp;gt;https://github.com/xbmc/xbmc/pull/20014&amp;lt;/ref&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;enablehighqualityhwscalers&amp;gt;&#039;&#039;&#039; Removed in v20 &amp;lt;ref&amp;gt;https://github.com/xbmc/xbmc/pull/21537&amp;lt;/ref&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;cache&amp;gt; / &amp;lt;memorysize&amp;gt; / &amp;lt;buffermode&amp;gt; / &amp;lt;readfactor&amp;gt; / &amp;lt;chunksize&amp;gt;&#039;&#039;&#039; - Removed in v21 and added to GUI settings page&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= guisettings.xml Setting Conversion =&lt;br /&gt;
It is possible to convert settings found in the &#039;&#039;&#039;[[Settings]]&#039;&#039;&#039; &#039;&#039;(guisettings.xml)&#039;&#039; pages of {{kodi}} into entries for the advancedsettings.xml file.&lt;br /&gt;
&lt;br /&gt;
When a setting from the guisettings.xml is added to the advancedsettings.xml file, it will override the existing guisettings.xml values and the setting will be removed from the settings pages.&lt;br /&gt;
&lt;br /&gt;
Why would I need to do this?&lt;br /&gt;
* You set up multiple devices and then need to individually change settings and preferences on each device. Using this conversion method, you save those settings in the advancedsettings.xml file and simply add the file to each device&lt;br /&gt;
* You need to hide settings to prevent those settings from being modified&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To convert a guisetting to advancedsettings.xml follow these steps:&lt;br /&gt;
# In the {{kodi}} settings pages, adjust the setting(s) to your preference.&lt;br /&gt;
# Back out of the settings pages to the main menu, which forces {{kodi}} to save the adjusted settings to the guisettings.xml file&lt;br /&gt;
# Locate the guisettings.xml file in the [[Userdata]] folder and open it&lt;br /&gt;
# Locate the setting(s) to be converted. The list can be overwhelming so make use of the Search feature of whichever editor you are using&lt;br /&gt;
# Using the following setting as an example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;setting id=&amp;quot;videolibrary.showemptytvshows&amp;quot;&amp;gt;true&amp;lt;/setting&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
: Breaking down the string:&lt;br /&gt;
::&#039;&#039;&#039;videolibrary&#039;&#039;&#039;- parent tag&lt;br /&gt;
::&#039;&#039;&#039;showemptytvshows&#039;&#039;&#039;- child tag&lt;br /&gt;
::&#039;&#039;&#039;true&#039;&#039;&#039;- value&lt;br /&gt;
: The conversion is as follows and place this in the advancedsettings.xml file&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;advancedsettings version=&amp;quot;1.0&amp;quot;&amp;gt;&lt;br /&gt;
     &amp;lt;videolibrary&amp;gt;&lt;br /&gt;
          &amp;lt;showemptytvshows&amp;gt;true&amp;lt;/showemptytvshows&amp;gt;&lt;br /&gt;
     &amp;lt;/videolibrary&amp;gt;&lt;br /&gt;
&amp;lt;/advancedsettings&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Some parent tags may already be in use in your advancedsettings.xml file. Do not duplicate them, but add the child tag beneath the existing parent tag.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Updated|18}}&lt;br /&gt;
{{DISPLAYTITLE:advancedsettings.xml}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Advanced topics]]&lt;br /&gt;
[[Category:Manual]]&lt;br /&gt;
[[Category:Settings]]&lt;br /&gt;
[[Category:Karellen]]&lt;/div&gt;</summary>
		<author><name>Black eagle</name></author>
	</entry>
	<entry>
		<id>https://kodi.wiki/index.php?title=Advancedsettings.xml&amp;diff=250145</id>
		<title>Advancedsettings.xml</title>
		<link rel="alternate" type="text/html" href="https://kodi.wiki/index.php?title=Advancedsettings.xml&amp;diff=250145"/>
		<updated>2024-02-11T07:35:51Z</updated>

		<summary type="html">&lt;p&gt;Black eagle: /* musiclibrary */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC right}}{{mininav|[[Settings]]|page=advancedsettings.xml}}&lt;br /&gt;
{{bigger|{{note|&#039;&#039;&#039;The advancedsettings.xml file does not exist by default. You have to create it first!&#039;&#039;&#039;}} }}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=&amp;quot;intro&amp;quot; /&amp;gt;The [[advancedsettings.xml]] file, which does not exist by default, can be created by a user in their &#039;&#039;&#039;[[Userdata|userdata folder]]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
This file is used for advanced settings and options that do not have GUI controls inside of {{kodi}}. Some settings are experimental or very rarely set, so they can only be used via the advancedsettings.xml file. The file is simply a plain text file and can be edited by various text editors, so long as the name is &amp;quot;advancedsettings.xml&amp;quot;. These advanced settings can be used to tweak various things such as episode naming patterns, special network ports, special behaviors, and more.&amp;lt;section end=&amp;quot;intro&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following page will describe the structure of the advancedsettings.xml file and the various individual settings.&lt;br /&gt;
&lt;br /&gt;
{{note|&lt;br /&gt;
# All XML tags must be lowercase. The start and end of the advancedsettings.xml file must have the &amp;lt;advancedsettings&amp;gt; and &amp;lt;/advancedsettings&amp;gt; tags.&lt;br /&gt;
# Kodi will only read the advancedsettings.xml file when it starts up. If you make changes while it is running then you must restart Kodi.&lt;br /&gt;
# For some Windows versions, Kodi has two &amp;lt;code&amp;gt;\userdata\&amp;lt;/code&amp;gt; folders. The correct one to put the advancedsettings.xml file in is not the one in Program Files, but in &amp;lt;code&amp;gt;%appdata%\Kodi\userdata\.&amp;lt;/code&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
== Layout ==&lt;br /&gt;
&lt;br /&gt;
The layout of &amp;lt;code&amp;gt;advancedsettings.xml&amp;lt;/code&amp;gt; is as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;advancedsettings version=&amp;quot;1.0&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;setting&amp;gt;value&amp;lt;/setting&amp;gt;&lt;br /&gt;
    ...&lt;br /&gt;
    &amp;lt;setting&amp;gt;value&amp;lt;/setting&amp;gt;&lt;br /&gt;
&amp;lt;/advancedsettings&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;quot;setting&amp;quot; gives the name of the setting, and &amp;quot;value&amp;quot; gives its value.&lt;br /&gt;
&lt;br /&gt;
A list of the available &amp;quot;setting&amp;quot; strings and their values is given below.&lt;br /&gt;
&lt;br /&gt;
= List of available settings =&lt;br /&gt;
List of available settings that are recognised in the advancedsettings.xml file &amp;lt;ref&amp;gt;https://github.com/xbmc/xbmc/blob/master/xbmc/settings/AdvancedSettings.cpp&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Recommended: Use the table of contents or the search function in your browser to locate items.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting settings ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== loglevel ===&lt;br /&gt;
{{Anchor|.3Cloglevel.3E}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=&amp;quot;loglevel&amp;quot; /&amp;gt;&lt;br /&gt;
Sets the logging level used to log errors and information. The &amp;quot;hide&amp;quot; attribute is optional. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;loglevel hide=&amp;quot;attribute&amp;quot;&amp;gt;options&amp;lt;/loglevel&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;mw-collapsible mw-collapsed wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width:100px;&amp;quot; | Attribute&lt;br /&gt;
! style=&amp;quot;width:500px;&amp;quot; | Action&lt;br /&gt;
|-&lt;br /&gt;
! &#039;&#039;&#039;true&#039;&#039;&#039; &lt;br /&gt;
| Hides the &amp;quot;enable debugging&amp;quot; setting in the Settings page. (default)&lt;br /&gt;
|-&lt;br /&gt;
! &#039;&#039;&#039;false&#039;&#039;&#039;&lt;br /&gt;
| Allows &amp;quot;enable debugging&amp;quot; setting to switch between &#039;&#039;&#039;0&#039;&#039;&#039; and &#039;&#039;&#039;2&#039;&#039;&#039;.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;mw-collapsible mw-collapsed wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width:100px;&amp;quot; | Option&lt;br /&gt;
! style=&amp;quot;width:500px;&amp;quot; | Action&lt;br /&gt;
|-&lt;br /&gt;
! &#039;&#039;&#039;-1&#039;&#039;&#039;&lt;br /&gt;
| No logging, suppresses all log output &lt;br /&gt;
|-&lt;br /&gt;
! &#039;&#039;&#039;0&#039;&#039;&#039;&lt;br /&gt;
| Normal logging, only logging errors (default)&lt;br /&gt;
|-&lt;br /&gt;
! &#039;&#039;&#039;1&#039;&#039;&#039;&lt;br /&gt;
| Debug logging with freemem, fps and cpu usage (no on screen)&lt;br /&gt;
|-&lt;br /&gt;
! &#039;&#039;&#039;2&#039;&#039;&#039; &lt;br /&gt;
| Same as 1 (with on screen display)&lt;br /&gt;
|-&lt;br /&gt;
! &#039;&#039;&#039;3&#039;&#039;&#039; &lt;br /&gt;
| Same as 1 + full smb logging&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width:100px;&amp;quot; | Example &lt;br /&gt;
! style=&amp;quot;width:500px;&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
! Example 1:&lt;br /&gt;
|&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;advancedsettings version=&amp;quot;1.0&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;loglevel&amp;gt;2&amp;lt;/loglevel&amp;gt;  &lt;br /&gt;
&amp;lt;/advancedsettings&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! Example 2:&lt;br /&gt;
|&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;advancedsettings version=&amp;quot;1.0&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;loglevel hide=&amp;quot;true&amp;quot;&amp;gt;2&amp;lt;/loglevel&amp;gt;&lt;br /&gt;
&amp;lt;/advancedsettings&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; The setting is persistent through shutdown and restarts.&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; If debugging is enabled in the GUI, loglevel will be set to &#039;&#039;&#039;2&#039;&#039;&#039;. This will over-ride the &amp;lt;code&amp;gt;advancedsettings.xml&amp;lt;/code&amp;gt; setting. You must disable the GUI Setting before adding the entry to &amp;lt;code&amp;gt;advancedsettings.xml&amp;lt;/code&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;section end=&amp;quot;loglevel&amp;quot; /&amp;gt;&lt;br /&gt;
:&#039;&#039;{{see also|Log_file|label 1=Debug Log}}&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== jsonrpc ===&lt;br /&gt;
{{Anchor|.3Cjsonrpc.3E}}&lt;br /&gt;
To make it easier for developers using the [[JSON-RPC_API]] API in their (third party) applications to debug during development the json output of Kodi can be prettified by setting &#039;&#039;&#039;compactoutput&#039;&#039;&#039; to &#039;&#039;&#039;false&#039;&#039;&#039;. Default json output mode is a compact print which does not contain any unnecessary whitespaces and therefore is difficult to read for humans.&lt;br /&gt;
Furthermore using the &#039;&#039;&#039;tcpport&#039;&#039;&#039; setting it is possible to change the default TCP port used by Kodi for JSON RPC (which is 9090) to any other valid port.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;jsonrpc&amp;gt;&lt;br /&gt;
    &amp;lt;compactoutput&amp;gt;false&amp;lt;/compactoutput&amp;gt;&lt;br /&gt;
    &amp;lt;tcpport&amp;gt;9999&amp;lt;/tcpport&amp;gt;&lt;br /&gt;
&amp;lt;/jsonrpc&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Audio/video playback settings ==&lt;br /&gt;
&lt;br /&gt;
=== skiploopfilter ===&lt;br /&gt;
{{anchor|.3Cskiploopfilter.3E}}&lt;br /&gt;
The amount of the loop filter to skip on h.264 decoding.  This can help the performance of slower machines when decoding h264 content.  Values, in decreasing CPU usage (and decreasing quality)&lt;br /&gt;
* -16 None&lt;br /&gt;
* 0 Skip only empty frames (default)&lt;br /&gt;
* 8 Skip non-reference frames&lt;br /&gt;
* 16 Skip bi-dir frames&lt;br /&gt;
* 32 Skip all non-key frames&lt;br /&gt;
* 48 Skip all frames&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;skiploopfilter&amp;gt;8&amp;lt;/skiploopfilter&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== video ===&lt;br /&gt;
{{anchor|.3Cvideo.3E}}&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;video&amp;gt; section also includes the following child-tags, which have their own sections:&lt;br /&gt;
*[[#cleandatetime]]&lt;br /&gt;
*[[#cleanstrings]]&lt;br /&gt;
*[[#excludefromscan]]&lt;br /&gt;
*[[#excludefromlisting]]&lt;br /&gt;
*[[#excludetvshowsfromscan]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{note|Some tags that have a &amp;quot;third-level&amp;quot; and are grouped together are highlighted in color.}}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
! Tag !! Description&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
&amp;lt;video&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Parent tag that all other child tags need to be placed inside of. Do not use more than one &#039;&#039;&#039;&amp;lt;code&amp;gt;&amp;lt;video&amp;gt;&amp;lt;/code&amp;gt;&#039;&#039;&#039; tag, but instead place all other child-tags within a single &#039;&#039;&#039;&amp;lt;code&amp;gt;&amp;lt;video&amp;gt;&amp;lt;/video&amp;gt;&amp;lt;/code&amp;gt;&#039;&#039;&#039; set.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;subsdelayrange&amp;gt;10&amp;lt;/subsdelayrange&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Delay range for subtitles, in seconds.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;maxtempo&amp;gt;2.1&amp;lt;/maxtempo&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Allow further increase of playback speed over the default of 1.5&amp;lt;br&amp;gt;&lt;br /&gt;
maxtempo must be in the range of 1.5 to 2.1 &amp;lt;br&amp;gt;&lt;br /&gt;
Be aware of the limitations of your platform / hardware as not all are capable of the increased maxtempo &amp;lt;ref&amp;gt;https://forum.kodi.tv/showthread.php?tid=10023&amp;amp;pid=2795069#pid2795069&amp;lt;/ref&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;audiodelayrange&amp;gt;10&amp;lt;/audiodelayrange&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Delay range for audio/video sync, in seconds.&lt;br /&gt;
|- &lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;usetimeseeking&amp;gt;true&amp;lt;/usetimeseeking&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Whether to use time based or percentage based seeking. {{small see also|Skip steps}}&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;timeseekforwardbig&amp;gt;600&amp;lt;/timeseekforwardbig&amp;gt;&lt;br /&gt;
  &amp;lt;timeseekbackwardbig&amp;gt;-600&amp;lt;/timeseekbackwardbig&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Time to seek forward in seconds when doing a long seek.  Defaults to 600 (10 minutes) and -600 (-10 minutes) respectively. &#039;&#039;{{small|See also: [[Skip steps]] }}&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;percentseekforward&amp;gt;2&amp;lt;/percentseekforward&amp;gt;&lt;br /&gt;
  &amp;lt;percentseekbackward&amp;gt;-2&amp;lt;/percentseekbackward&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Amount to seek forward as a percentage, when doing a short seek.  Defaults to 2 (2%) and -2 (2%) respectively. &#039;&#039;{{small|See also: [[Skip steps]] }}&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;percentseekforwardbig&amp;gt;10&amp;lt;/percentseekforwardbig&amp;gt;&lt;br /&gt;
  &amp;lt;percentseekbackwardbig&amp;gt;-10&amp;lt;/percentseekbackwardbig&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Amount to seek forward as a percentage, when doing a long seek.  Defaults to 10 (10%) and -10 (10%) respectively. &#039;&#039;{{small|See also: [[Skip steps]] }}&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;fullscreenonmoviestart&amp;gt;true&amp;lt;/fullscreenonmoviestart&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Whether to go to fullscreen or not when starting a movie. Defaults to true.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;defaultplayer&amp;gt;VideoPlayer&amp;lt;/defaultplayer&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Set the default video player: VideoPlayer or an external player. See &#039;&#039;&#039;[[External players]]&#039;&#039;&#039; for more info.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;excludefromscan&amp;gt;&lt;br /&gt;
    &amp;lt;regexp&amp;gt;[-\._ ](sample|trailer)[-\._ ]&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;/excludefromscan&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Regular expressions that if evaluated to true won&#039;t be added to library.  It is possible to add multiple &amp;lt;code&amp;gt;&amp;lt;regexp&amp;gt;&amp;lt;/code&amp;gt; tags to match multiple patterns&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;excludefromlisting&amp;gt;&lt;br /&gt;
    &amp;lt;regexp&amp;gt;[-\._ ](sample|trailer)[-\._ ]&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;/excludefromlisting&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Regular expressions that if evaluated to true won&#039;t be displayed in files view.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;playcountminimumpercent&amp;gt;90&amp;lt;/playcountminimumpercent&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Minimum percentage that has to be played before it is marked as watched. Set to 101 to never auto-mark items as watched. &#039;&#039;{{small|See also: [[HOW-TO:Modify automatic watch and resume points]] }}&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;ignoresecondsatstart&amp;gt;180&amp;lt;/ignoresecondsatstart&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Number of seconds to ignore at video start after which a resume point is created. &#039;&#039;{{small|See also: [[HOW-TO:Modify automatic watch and resume points]] }}&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;ignorepercentatend&amp;gt;8&amp;lt;/ignorepercentatend&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Percentage of video to ignore at the end. If you stop watching the video here no resume point is created. Set to 101 to never save a resume point. The video is already marked as watched at 90%, see above. &#039;&#039;{{small|See also: [[HOW-TO:Modify automatic watch and resume points]] }}&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;vdpauscaling&amp;gt;true&amp;lt;/vdpauscaling&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Scales with vdpau instead of opengl and turns on its HQ scaler when available, enabling this might slow down rendering and cause framedrops especially on ION systems, this setting requires a vdpau feature set C GPU.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;ppffmpegdeinterlacing&amp;gt;linblenddeint&amp;lt;/ppffmpegdeinterlacing&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Override the deinterlacing options passed to libpostproc.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;ppffmpegpostprocessing&amp;gt;ha:128:7,va,dr&amp;lt;/ppffmpegpostprocessing&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Override the post processing options passed to libpostproc when &#039;Video post-processing&#039; is activated in GUI Videos-Settings-Playback.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;autoscalemaxfps&amp;gt;30&amp;lt;/autoscalemaxfps&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| When scaling method is set to auto, bilinear is chosen when the fps is higher than this limit, the default is 30.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;adjustrefreshrate&amp;gt; &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#CADCFB;&amp;quot; | Settings for when &amp;quot;Adjust refreshrate to match video fps&amp;quot; is enabled in the video playback GUI settings.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
    &amp;lt;override&amp;gt;&lt;br /&gt;
      &amp;lt;fps&amp;gt;23.976&amp;lt;/fps&amp;gt;&lt;br /&gt;
      &amp;lt;refresh&amp;gt;60.0&amp;lt;/refresh&amp;gt;&lt;br /&gt;
    &amp;lt;/override&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#CADCFB;&amp;quot; | &#039;&#039;&#039;Example -&#039;&#039;&#039; &amp;quot;Adjust refreshrate to match video fps&amp;quot; will try to select the best refreshrate for the video fps but it doesn&#039;t always get it right, for example it might switch to an unsupported refreshrate. You can add overrides here to switch to a certain refreshrate based on video fps. It&#039;s possible to add as many overrides as you need.  Overrides are processed in order, if the first one doesn&#039;t match the fps or no refreshrates match that override, it will try the next one until no overrides are left.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;fps&#039;&#039;&#039; - if the fps is between 23.966 and 23.986&lt;br /&gt;
* &#039;&#039;&#039;refresh&#039;&#039;&#039; - switch to the first found refreshrate that is between 59.99 and 60.01&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
    &amp;lt;override&amp;gt;&lt;br /&gt;
      &amp;lt;fpsmin&amp;gt;29.96&amp;lt;/fpsmin&amp;gt;&lt;br /&gt;
      &amp;lt;fpsmax&amp;gt;30.01&amp;lt;/fpsmax&amp;gt;&lt;br /&gt;
      &amp;lt;refreshmin&amp;gt;59.0&amp;lt;/refreshmin&amp;gt;&lt;br /&gt;
      &amp;lt;refreshmax&amp;gt;61.0&amp;lt;/refreshmax&amp;gt;&lt;br /&gt;
    &amp;lt;/override&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#CADCFB;&amp;quot; | &#039;&#039;&#039;Example -&#039;&#039;&#039; &lt;br /&gt;
* &#039;&#039;&#039;fpsmin&#039;&#039;&#039; / &#039;&#039;&#039;fpsmin&#039;&#039;&#039; - You can also specify the fps range yourself.&lt;br /&gt;
* &#039;&#039;&#039;refreshmin&#039;&#039;&#039; / &#039;&#039;&#039;refreshmax&#039;&#039;&#039; - Same for the refreshrate&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
    &amp;lt;fallback&amp;gt;&lt;br /&gt;
      &amp;lt;refresh&amp;gt;50.0&amp;lt;/refresh&amp;gt;&lt;br /&gt;
    &amp;lt;/fallback&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#CADCFB;&amp;quot; | &#039;&#039;&#039;Example -&#039;&#039;&#039; If none of the overrides match, or none of the refreshrates match any of the fps matching overrides, it will choose a fallback refreshrate. Fallbacks are process in order, if the first fallback doesn&#039;t match any refreshrate, it will try the next one until no fallbacks are left.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;refresh&#039;&#039;&#039; - Switch to the first found refreshrate that is between 49.99 and 50.01.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
    &amp;lt;fallback&amp;gt;&lt;br /&gt;
      &amp;lt;refreshmin&amp;gt;49.0&amp;lt;/refreshmin&amp;gt;&lt;br /&gt;
      &amp;lt;refreshmax&amp;gt;51.0&amp;lt;/refreshmax&amp;gt;&lt;br /&gt;
    &amp;lt;/fallback&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#CADCFB;&amp;quot; | &#039;&#039;&#039;Example -&#039;&#039;&#039; You can also specify the range for the fallback yourself.&lt;br /&gt;
&lt;br /&gt;
If none of the overrides match the video fps, or no refreshrates match any of the fps matching overrides, and no fallbacks are specified or no refreshrates match any fallbacks, it will automatically choose the best refreshrate (same as having no overrides and fallbacks).&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;/adjustrefreshrate&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#CADCFB;&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;checkdxvacompatibility&amp;gt;value&amp;lt;/checkdxvacompatibility&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Advanced setting not present: let Kodi autodetect cards that support H.264 profile &amp;gt; L4.1. Set value to false to enable DXVA no matter what. Set value to true if Kodi doesn&#039;t autodetect that the graphics card doesn&#039;t support &amp;gt; L4.1.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;useocclusionquery&amp;gt;-1&amp;lt;/useocclusionquery&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Use an occlusion query when capturing videoframes, -1 means auto detect, 0 means disabled, 1 means enabled, the default is -1.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;fpsdetect&amp;gt;1&amp;lt;/fpsdetect&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| FPS detection for video playback&lt;br /&gt;
* 0 = trust codec fps&lt;br /&gt;
* 1 = recalculate from video timestamps with uniform spacing&lt;br /&gt;
* 2 = recalculate from video timestamps always&lt;br /&gt;
|- &lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;latency&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#F0E68C;&amp;quot;| Start of &#039;&#039;&#039;latency&#039;&#039;&#039; tags. Display latency (video lag). Latency is given in msecs.&lt;br /&gt;
|- &lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
    &amp;lt;delay&amp;gt;0&amp;lt;/delay&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#F0E68C;&amp;quot; | Global default display latency.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
    &amp;lt;refresh&amp;gt;&amp;lt;/refresh&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#F0E68C;&amp;quot; | Override latency for given display (not video) refresh rates. When Kodi is in windowed mode, override is ignored. Multiple overrides are allowed.&lt;br /&gt;
&lt;br /&gt;
Syntax of an override entry:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
&amp;lt;refresh&amp;gt;&lt;br /&gt;
  &amp;lt;min&amp;gt;, &amp;lt;max&amp;gt; refresh rate range, OR&lt;br /&gt;
  &amp;lt;rate&amp;gt; exact refresh rate&lt;br /&gt;
  &amp;lt;delay&amp;gt; display latency for the given refresh rate&lt;br /&gt;
&amp;lt;/refresh&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
    &amp;lt;refresh&amp;gt;&lt;br /&gt;
      &amp;lt;min&amp;gt;23&amp;lt;/min&amp;gt;&lt;br /&gt;
      &amp;lt;max&amp;gt;24&amp;lt;/max&amp;gt;&lt;br /&gt;
      &amp;lt;delay&amp;gt;125&amp;lt;/delay&amp;gt;&lt;br /&gt;
    &amp;lt;/refresh&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#F0E68C;&amp;quot; | &#039;&#039;&#039;Example:&#039;&#039;&#039; display has 125 msec latency at 23-24 Hz&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
    &amp;lt;refresh&amp;gt;&lt;br /&gt;
      &amp;lt;rate&amp;gt;50&amp;lt;/rate&amp;gt;&lt;br /&gt;
      &amp;lt;delay&amp;gt;50&amp;lt;/delay&amp;gt;&lt;br /&gt;
    &amp;lt;/refresh&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#F0E68C;&amp;quot; | &#039;&#039;&#039;Example:&#039;&#039;&#039; display has 50 msec latency at 50 (+/-0.01) Hz&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;/latency&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#F0E68C;&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;stereoscopicregex3d&amp;gt;[-. _]3d[-. _]&amp;lt;/stereoscopicregex3d&amp;gt;&lt;br /&gt;
  &amp;lt;stereoscopicregexsbs&amp;gt;[-. _]h?sbs[-. _]&amp;lt;/stereoscopicregexsbs&amp;gt;&lt;br /&gt;
  &amp;lt;stereoscopicregextab&amp;gt;[-. _]h?tab[-. _]&amp;lt;/stereoscopicregextab&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Filename triggers for 3D (stereoscopic) mode.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;assfixedworks&amp;gt;false&amp;lt;/assfixedworks&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Position behavior of ass subtitiles when setting &amp;quot;subtitle position on screen&amp;quot; set to &amp;quot;fixed&amp;quot;. True to show at the fixed position set in video calibration. False to show at the bottom of video (default). {{note|Removed in Kodi v20.}}&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;subtitleverticalmargin&amp;gt;120&amp;lt;/subtitleverticalmargin&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Allows to customise the vertical margin of text based subtitles, which will be applied to each type of subtitle position in subtitle settings. {{note|Available in Kodi v20 and above.}}&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
&amp;lt;/video&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== audio ===&lt;br /&gt;
{{anchor|.3Caudio.3E}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;audio&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Amount of headroom Kodi should use above the maximum volume level, in decibels.  Defaults to 0, valid values 0, 6, 12. --&amp;gt;&lt;br /&gt;
  &amp;lt;headroom&amp;gt;0&amp;lt;/headroom&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Default audio player: paplayer or videoplayer --&amp;gt;&lt;br /&gt;
  &amp;lt;defaultplayer&amp;gt;paplayer&amp;lt;/defaultplayer&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Regular expressions that if evaluated to true won&#039;t be added to library. --&amp;gt;&lt;br /&gt;
  &amp;lt;excludefromscan&amp;gt; &lt;br /&gt;
    &amp;lt;regexp&amp;gt;[-\._ ](podcast)[-\._ ]&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;/excludefromscan&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Regular expressions that if evaluated to true won&#039;t be displayed in Files View --&amp;gt;&lt;br /&gt;
  &amp;lt;excludefromlisting&amp;gt; &lt;br /&gt;
    &amp;lt;regexp&amp;gt;[-\._ ](podcast)[-\._ ]&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;/excludefromlisting&amp;gt;&lt;br /&gt;
  &amp;lt;!-- 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. --&amp;gt;&lt;br /&gt;
  &amp;lt;ac3downmixgain&amp;gt;12.0&amp;lt;/ac3downmixgain&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Whether to use time based or percentage based seeking. --&amp;gt;&lt;br /&gt;
  &amp;lt;usetimeseeking&amp;gt;true&amp;lt;/usetimeseeking&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Time to seek forward in seconds when doing a long seek.  Defaults to 600 (10 minutes) and -600 (-10 minutes) respectively. --&amp;gt;&lt;br /&gt;
  &amp;lt;timeseekforwardbig&amp;gt;600&amp;lt;/timeseekfowardbig&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Time to seek backward in seconds when doing a long seek back.  Defaults to 600 (10 minutes) and -600 (-10 minutes) respectively. --&amp;gt;&lt;br /&gt;
  &amp;lt;timeseekbackwardbig&amp;gt;-600&amp;lt;/timeseekbackward&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Minimum percentage that has to be played before it is considered for incrementing in the Top 100 database view, or for last.fm submittal --&amp;gt;&lt;br /&gt;
  &amp;lt;playcountminimumpercent&amp;gt;99&amp;lt;/playcountminimumpercent&amp;gt; &lt;br /&gt;
  &amp;lt;!-- Whether to use Dynamic Range Compression (DRC) on AC3 streams. 1.0 is &amp;quot;full&amp;quot; compression, as defined by the audio track&#039;s metadata, which is recommended for &amp;quot;basic&amp;quot; sound systems such as the internal speakers on a TV. 0.0 is no compression at all, which is recommended for people with nice multi-speaker sound systems. -1.0 (default) defaults to whatever ffmpeg uses, which is currently the same as 1.0. This has no effect if passthrough is enabled for AC3. --&amp;gt;&lt;br /&gt;
  &amp;lt;applydrc&amp;gt;-1.0&amp;lt;/applydrc&amp;gt; &lt;br /&gt;
  &amp;lt;!-- default values for limiter/compressor --&amp;gt;&lt;br /&gt;
  &amp;lt;limiterhold&amp;gt;0.025&amp;lt;/limiterhold&amp;gt; &lt;br /&gt;
  &amp;lt;!-- default values for limiter/compressor --&amp;gt;&lt;br /&gt;
  &amp;lt;limiterrelease&amp;gt;0.1&amp;lt;/limiterrelease&amp;gt; &lt;br /&gt;
  &amp;lt;!-- This setting is only relevant for Passthrough in the context of resyncing, e.g.; when there is no resampling possible. This value decides after which amount of discontinuity in milliseconds VideoPlayer will ErrorAdjust the Clock. On platforms like Android where the sink delay is just a non exact interpolation, a too small value might cause rare image stutter. The maximum value is 100 ms. A higher value makes no sense cause of A/V issues. This is a last-resort workaround as the root-cause cannot be mitigated 100% [Available from Kodi v20] --&amp;gt;&lt;br /&gt;
  &amp;lt;maxpassthroughoffsyncduration&amp;gt;10&amp;lt;/maxpassthroughoffsyncduration&amp;gt; &lt;br /&gt;
  &amp;lt;!-- This setting is used on Android only. While Android itself supports 32 bit Float format for at least Stereo since many years, certain Vendors don&#039;t properly implement it for Multi-Channel Audio. As those devices still open correctly, but then no signal reaches the output device, we disabled this for the time being and used 16 bit Integer only. With this setting you can enable 32 bit Output for multi-channel for kodi by setting allowmultichannelfloat to true. Default: false. This makes a lossless Input -&amp;gt; Output chain possible, as it can hold 24 bit Audio without any loss towards the internal Android Mixer, which is using Float precision anyways. --&amp;gt;&lt;br /&gt;
  &amp;lt;allowmultichannelfloat&amp;gt;false&amp;lt;/allowmultichannelfloat&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Android only. There are currently various broken devices with AMLogic BSP out there. They open a sink with a buffer of 170 ms, but then don&#039;t consume any idea for sometimes even more than 1000 ms of audio data. Then they silently drop the data under the hood and move on, resulting in kodi being totally out of sink. Reopening the devices (sometimes 2 times) fixes this. Sadly there are some semi-broken devices out there that do the same on startup, but afterwards work kind of fine with a higher delay. I cannot programmatically distinguish those two cases. For Zidoo and FireTV Cube 3rd Gen, you have to manually enable this advanced setting. --&amp;gt;&lt;br /&gt;
  &amp;lt;superviseaudiodelay&amp;gt;false&amp;lt;/superviseaudiodelay&amp;gt;&lt;br /&gt;
&amp;lt;/audio&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== forcedswaptime ===&lt;br /&gt;
{{anchor|.3Cforcedswaptime.3E}}&lt;br /&gt;
Use to force a backbuffer-&amp;gt;frontbuffer swap while vsync is enabled. Set to the time (in ms) to allow for the swap (e.g. &amp;lt;forcedswaptime&amp;gt;1&amp;lt;/forcedswaptime&amp;gt; is typical).  &lt;br /&gt;
&lt;br /&gt;
Default: Off&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== edl ===&lt;br /&gt;
{{anchor|.3Cedl.3E}}&lt;br /&gt;
{{main|Edit_decision_list}}&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;edl&amp;gt;&lt;br /&gt;
    &amp;lt;!-- if true, commercial breaks will be merged according to the remaining options. --&amp;gt;&lt;br /&gt;
  &amp;lt;mergeshortcommbreaks&amp;gt;false&amp;lt;/mergeshortcommbreaks&amp;gt;&lt;br /&gt;
    &amp;lt;!-- Commercial breaks won&#039;t be merged if the total length of the commercial break would be greater than this (seconds) --&amp;gt;&lt;br /&gt;
  &amp;lt;maxcommbreaklength&amp;gt;250&amp;lt;/maxcommbreaklength&amp;gt;&lt;br /&gt;
    &amp;lt;!-- After merging, commercial breaks shorter than this will be removed (seconds) --&amp;gt;&lt;br /&gt;
  &amp;lt;mincommbreaklength&amp;gt;90&amp;lt;/mincommbreaklength&amp;gt;&lt;br /&gt;
    &amp;lt;!-- Commercial breaks that are further apart than this won&#039;t be merged (seconds) --&amp;gt;&lt;br /&gt;
  &amp;lt;maxcommbreakgap&amp;gt;120&amp;lt;/maxcommbreakgap&amp;gt;&lt;br /&gt;
    &amp;lt;!-- How long to wait before automatically skipping when the start of a commercial break reached (seconds). Possible values: from -60 to 60--&amp;gt;&lt;br /&gt;
  &amp;lt;commbreakautowait&amp;gt;0&amp;lt;/commbreakautowait&amp;gt;&lt;br /&gt;
    &amp;lt;!-- How long to rewind after automatically skipping to the end of the commercial break (seconds). Possible values: from -60 to 60 --&amp;gt;&lt;br /&gt;
  &amp;lt;commbreakautowind&amp;gt;0&amp;lt;/commbreakautowind&amp;gt;&lt;br /&gt;
    &amp;lt;!-- Avoid showing the edl commbreak notifications. These are displayed by default --&amp;gt;&lt;br /&gt;
  &amp;lt;displaycommbreaknotifications&amp;gt;false&amp;lt;/displaycommbreaknotifications&amp;gt;&lt;br /&gt;
&amp;lt;/edl&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Notes:&#039;&#039;&#039;&lt;br /&gt;
* displaycommbreaknotifications&amp;lt;ref&amp;gt;https://github.com/xbmc/xbmc/pull/20711&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PVR &amp;amp; Live TV ==&lt;br /&gt;
{{anchor|.3Cpvr.3E}}&lt;br /&gt;
Settings available for PVR, EPG and Live TV. Edit Decision List settings are located in the previous section.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== pvr ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot; line=&#039;line&#039;&amp;gt;&lt;br /&gt;
&amp;lt;pvr&amp;gt;&lt;br /&gt;
  &amp;lt;timecorrection&amp;gt;0&amp;lt;/timecorrection&amp;gt;  &amp;lt;!-- Correct all times (epg tags, timer tags, recording tags) by this amount of minutes. --&amp;gt;&lt;br /&gt;
  &amp;lt;infotoggleinterval&amp;gt;3000&amp;lt;/infotoggleinterval&amp;gt;  &amp;lt;!-- If there is more than one pvr gui info item available (e.g. multiple recordings active at the same time), use this toggle delay in milliseconds. --&amp;gt;&lt;br /&gt;
  &amp;lt;channeliconsautoscan&amp;gt;true&amp;lt;/channeliconsautoscan&amp;gt; &amp;lt;!-- Automatically scan user defined folder for channel icons when loading internal channel groups. --&amp;gt;&lt;br /&gt;
  &amp;lt;autoscaniconsuserset&amp;gt;false&amp;lt;/autoscaniconsuserset&amp;gt; &amp;lt;!-- Mark channel icons populated by auto scan as &amp;quot;user set&amp;quot;. --&amp;gt;&lt;br /&gt;
  &amp;lt;numericchannelswitchtimeout&amp;gt;1000&amp;lt;/numericchannelswitchtimeout&amp;gt; &amp;lt;!-- Time in ms before the numeric dialog auto closes when confirmchannelswitch is disabled. --&amp;gt;&lt;br /&gt;
&amp;lt;/pvr&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== pvrrecordings ====&lt;br /&gt;
In v19 and later, allows users to modify sort type and order of pvr recordings. &amp;lt;ref&amp;gt;https://github.com/xbmc/xbmc/pull/18605&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
;Note- These settings are child tags to the &#039;&#039;&amp;lt;pvr&amp;gt;&#039;&#039; tag in the previous section.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot; line=&#039;line&#039;&amp;gt;&lt;br /&gt;
&amp;lt;pvr&amp;gt;&lt;br /&gt;
   &amp;lt;pvrrecordings&amp;gt;&lt;br /&gt;
      &amp;lt;sortmethod&amp;gt;2&amp;lt;/sortmethod&amp;gt;  &amp;lt;!-- 1=Name 2=Date 3=Size 4=File --&amp;gt;&lt;br /&gt;
      &amp;lt;sortorder&amp;gt;2&amp;lt;/sortorder&amp;gt;    &amp;lt;!-- 1=Ascending 2=Descending --&amp;gt;&lt;br /&gt;
   &amp;lt;/pvrrecordings&amp;gt;&lt;br /&gt;
&amp;lt;/pvr&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== epg ===&lt;br /&gt;
{{anchor|.3Cpvr.3E}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot; line=&#039;line&#039;&amp;gt;&lt;br /&gt;
&amp;lt;epg&amp;gt;&lt;br /&gt;
  &amp;lt;updatecheckinterval&amp;gt;300&amp;lt;/updatecheckinterval&amp;gt;  &amp;lt;!-- Check every X seconds, if EPG data need to be updated. This does not mean that every X seconds an EPG update is actually triggered, it&#039;s just the interval how often to check whether an update should be triggered. If this value is greater than GUI setting &#039;epg.epgupdate&#039; value, then EPG updates will done with the value specified for &#039;updatecheckinterval&#039;, effectively overriding the GUI setting&#039;s value. --&amp;gt;&lt;br /&gt;
  &amp;lt;updateemptytagsinterval&amp;gt;60&amp;lt;/updateemptytagsinterval&amp;gt;  &amp;lt;!-- If a TV channel has no EPG data, try to obtain data for that channel every X seconds. This overrides the GUI setting &#039;epg.epgupdate&#039; value, but only for channels without EPG data. If this value is less than &#039;updatecheckinterval&#039; value, then data update will be done with the interval specified by &#039;updatecheckinterval&#039;. Example 1: epg.epgupdate = 120 (minutes!), updatecheckinterval = 300, updateemptytagsinterval = 60 =&amp;gt; trigger an EPG update for every channel without EPG data every 5 minutes and trigger an EPG update for every channel with EPG data every 2 hours. Example 2: epg.epgupdate = 120 (minutes!), updatecheckinterval = 300, updateemptytagsinterval = 3600 =&amp;gt; trigger an EPG update for every channel without EPG data every 2 hours and trigger an EPG update for every channel with EPG data every 1 hour. --&amp;gt;&lt;br /&gt;
  &amp;lt;cleanupinterval&amp;gt;900&amp;lt;/cleanupinterval&amp;gt;  &amp;lt;!-- remove old entries from the EPG every X seconds --&amp;gt;&lt;br /&gt;
  &amp;lt;activetagcheckinterval&amp;gt;60&amp;lt;/activetagcheckinterval&amp;gt;  &amp;lt;!-- check for updated active tags every X seconds --&amp;gt;&lt;br /&gt;
  &amp;lt;retryinterruptedupdateinterval&amp;gt;60&amp;lt;/retryinterruptedupdateinterval&amp;gt;  &amp;lt;!-- retry an interrupted EPG update after X seconds --&amp;gt;&lt;br /&gt;
  &amp;lt;displayupdatepopup&amp;gt;true&amp;lt;/displayupdatepopup&amp;gt;  &amp;lt;!-- display a progress popup while updating EPG data from clients --&amp;gt;&lt;br /&gt;
  &amp;lt;displayincrementalupdatepopup&amp;gt;false&amp;lt;/displayincrementalupdatepopup&amp;gt;  &amp;lt;!-- also display a progress popup while doing incremental EPG updates --&amp;gt;&lt;br /&gt;
&amp;lt;/epg&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Video library settings ==&lt;br /&gt;
&lt;br /&gt;
=== videoextensions ===&lt;br /&gt;
{{anchor|.3Cvideoextensions.3E}}&amp;lt;section begin=&amp;quot;videoextensions&amp;quot; /&amp;gt;&lt;br /&gt;
A list of additional file-extensions to allow (&#039;&#039;&#039;add&#039;&#039;&#039;) or exclude (&#039;&#039;&#039;remove&#039;&#039;&#039;) in the My Video windows.&lt;br /&gt;
&lt;br /&gt;
Default extensions for VIDEOS:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.m4v .3g2 .3gp .nsv .tp .ts .ty .strm .pls .rm .rmvb .mpd .m3u .m3u8 .ifo .mov .qt .divx .xvid&lt;br /&gt;
.bivx .vob .nrg .img .iso .udf .pva .wmv .asf .asx .ogm .m2v .avi .bin .dat .mpg .mpeg .mp4&lt;br /&gt;
.mkv .mk3d .avc .vp3 .svq3 .nuv .viv .dv .fli .flv .001 .wpl .xspf .zip .vdr .dvr-ms .xsp .mts&lt;br /&gt;
.m2t .m2ts .evo .ogv .sdp .avs .rec .url .pxml .vc1 .h264 .rcv .rss .mpls .mpl .webm .bdmv&lt;br /&gt;
.bdm .wtv .trp .f4v&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Examples:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;videoextensions&amp;gt;&lt;br /&gt;
  &amp;lt;add&amp;gt;.ex1|.ex2&amp;lt;/add&amp;gt;&lt;br /&gt;
  &amp;lt;remove&amp;gt;.ex3|.ex4&amp;lt;/remove&amp;gt;&lt;br /&gt;
&amp;lt;/videoextensions&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;section end=&amp;quot;videoextensions&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== discstubextensions ===&lt;br /&gt;
{{main|Media stubs}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=&amp;quot;discstubextensions&amp;quot; /&amp;gt;&lt;br /&gt;
The default filename extension for Disc Stubs is:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
.disc&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Using the following tags, it is possible to &amp;lt;tt&amp;gt;&amp;lt;add&amp;gt;&amp;lt;/tt&amp;gt; additional or &amp;lt;tt&amp;gt;&amp;lt;remove&amp;gt;&amp;lt;/tt&amp;gt; existing disc stub extensions to better suit your requirements.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;discstubextensions&amp;gt;&lt;br /&gt;
  &amp;lt;add&amp;gt;.disk|.stub&amp;lt;/add&amp;gt;&lt;br /&gt;
  &amp;lt;remove&amp;gt;.disc&amp;lt;/remove&amp;gt;&lt;br /&gt;
&amp;lt;/discstubextensions&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;section end=&amp;quot;discstubextensions&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== languagecodes ===&lt;br /&gt;
{{anchor|.3Clanguagecodes.3E}}&lt;br /&gt;
User-defined translation table for language codes used in subtitles and audio.&lt;br /&gt;
It can be used to add, extend or override Kodi&#039;s language codes.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to add a new language code:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;languagecodes&amp;gt;&lt;br /&gt;
  &amp;lt;code&amp;gt;&lt;br /&gt;
    &amp;lt;short&amp;gt;alt&amp;lt;/short&amp;gt;&lt;br /&gt;
    &amp;lt;long&amp;gt;Alternate&amp;lt;/long&amp;gt;&lt;br /&gt;
  &amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/languagecodes&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to add a new language code with subtag (e.g. pt-BR):&#039;&#039;&#039;&lt;br /&gt;
{{note|This support is available from Kodi v20}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;languagecodes&amp;gt;&lt;br /&gt;
  &amp;lt;code&amp;gt;&lt;br /&gt;
    &amp;lt;short&amp;gt;pt-BR&amp;lt;/short&amp;gt;&lt;br /&gt;
    &amp;lt;long&amp;gt;Portuguese - Brazil&amp;lt;/long&amp;gt;&lt;br /&gt;
  &amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/languagecodes&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;NOTE FOR MKV FILES:&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
MKV files that contain audio/subtitle tracks with language codes with subtags are not yet supported, but from &amp;lt;code&amp;gt;Kodi v21&amp;lt;/code&amp;gt; a workaround was introduced that allows Kodi to recognize language codes with subtags.&lt;br /&gt;
To use the workaround, you must open the MKV file with an editor and in the metadata of the desired audio/subtitle track, edit the track Name (or Title field) by adding the language code wrapped in curly brackets, as in following example:&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;code&amp;gt;Original track name: Audio portuguese/brazil&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;code&amp;gt;Modified track name: Audio portuguese/brazil {pt-BR}&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to extend an existing language code:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Set the same &amp;quot;long&amp;quot; description of the existing language, for example we reuse the Portughese language for another language code:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;languagecodes&amp;gt;&lt;br /&gt;
  &amp;lt;code&amp;gt;&lt;br /&gt;
    &amp;lt;short&amp;gt;pt-BR&amp;lt;/short&amp;gt;&lt;br /&gt;
    &amp;lt;long&amp;gt;Portuguese&amp;lt;/long&amp;gt;&lt;br /&gt;
  &amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/languagecodes&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this case when in Kodi settings you set the &amp;quot;Portuguese&amp;quot; language, when in playing according to availability the track &amp;quot;pt&amp;quot; or &amp;quot;pt-BR&amp;quot; will be chosen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to override an existing language code:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
This allow you to rename an existing language. Set to an existing language code your preferred &amp;quot;long&amp;quot; name description.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;WARNING: This can cause problems with add-ons, so do not override languages if you are not aware of the side effects.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;languagecodes&amp;gt;&lt;br /&gt;
  &amp;lt;code&amp;gt;&lt;br /&gt;
    &amp;lt;short&amp;gt;en&amp;lt;/short&amp;gt;&lt;br /&gt;
    &amp;lt;long&amp;gt;English example&amp;lt;/long&amp;gt;&lt;br /&gt;
  &amp;lt;/code&amp;gt;&lt;br /&gt;
  &amp;lt;code&amp;gt;&lt;br /&gt;
    &amp;lt;short&amp;gt;en-GB&amp;lt;/short&amp;gt;&lt;br /&gt;
    &amp;lt;long&amp;gt;English example&amp;lt;/long&amp;gt;&lt;br /&gt;
  &amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/languagecodes&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== moviestacking ===&lt;br /&gt;
{{anchor|.3Cmoviestacking.3E}}&amp;lt;section begin=&amp;quot;moviestacking&amp;quot; /&amp;gt;&lt;br /&gt;
{{main|Naming_video_files/Movies}}&lt;br /&gt;
This is used by the [[Naming_video_files/Movies#Split_Video_Files|file stacking]] algorithm to combine multi-part files and contains a list of regular expressions. For stacking videos that are contained in folders, such as VIDEO_TS folders, see &#039;&#039;&#039;[[advancedsettings.xml#folderstacking|&amp;lt;folderstacking&amp;gt;]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
As of v9.11, video stacking regular expressions &#039;&#039;&#039;must&#039;&#039;&#039; contain exactly four (4) capture expressions. &lt;br /&gt;
&lt;br /&gt;
Default:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;moviestacking&amp;gt;&lt;br /&gt;
  &amp;lt;!-- &amp;lt;cd/dvd/part/pt/disk/disc&amp;gt; &amp;lt;0-N&amp;gt; --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;(.*?)([ _.-]*(?:cd|dvd|p(?:ar)?t|dis[ck])[ _.-]*[0-9]+)(.*?)(\.[^.]+)$&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;!-- &amp;lt;cd/dvd/part/pt/disk/disc&amp;gt; &amp;lt;a-d&amp;gt; --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;(.*?)([ _.-]*(?:cd|dvd|p(?:ar)?t|dis[ck])[ _.-]*[a-d])(.*?)(\.[^.]+)$&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;!-- movienamea-xvid.avi, movienameb-xvid.avi --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;(.*?)([ ._-]*[a-d])(.*?)(\.[^.]+)$&amp;lt;/regexp&amp;gt;&lt;br /&gt;
&amp;lt;/moviestacking&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the argument &amp;lt;tt&amp;gt;action=&amp;quot;append&amp;quot;&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;append=&amp;quot;yes&amp;quot;&amp;lt;/tt&amp;gt; is supplied, the default moviestacking regular expressions will remain intact and the user specified ones will be added to the end.  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;moviestacking action=&amp;quot;append&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;!-- This expression will match movename1-xvid.avi, moviename2-xvid.avi.&lt;br /&gt;
         Be warned that it will likely stack sequels in a flat directory layout,&lt;br /&gt;
         so it is only recommend in a dir-per-video layout. --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;(.*?)([ ._-]*[0-9])(.*?)(\.[^.]+)$&amp;lt;/regexp&amp;gt;&lt;br /&gt;
&amp;lt;/moviestacking&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the argument &amp;lt;tt&amp;gt;action=&amp;quot;prepend&amp;quot;&amp;lt;/tt&amp;gt; is supplied, the default moviestacking regular expressions will remain intact and the user specified ones will be added to the beginning. &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;moviestacking action=&amp;quot;prepend&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;(Title)(Volume)(Ignore)(Extension)&amp;lt;/regexp&amp;gt;&lt;br /&gt;
&amp;lt;/moviestacking&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If no argument is supplied, or the argument &amp;lt;tt&amp;gt;append=&amp;quot;no&amp;quot;&amp;lt;/tt&amp;gt; is supplied, the default moviestacking regular expressions are overwritten by the user specified ones.&lt;br /&gt;
&amp;lt;section end=&amp;quot;moviestacking&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== folderstacking ===&lt;br /&gt;
{{main|Naming_video_files/Movies}}&lt;br /&gt;
This is similar to &#039;&#039;&#039;[[advancedsettings.xml#moviestacking|&amp;lt;moviestacking&amp;gt;]]&#039;&#039;&#039;, but is used for videos that are contained in folders that use the folder names to stack, such as VIDEO_TS folders (DVD rips that are not in ISO format).&lt;br /&gt;
&lt;br /&gt;
Default:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;folderstacking&amp;gt;&lt;br /&gt;
  &amp;lt;!-- &amp;lt;cd/dvd/disk/disc&amp;gt; &amp;lt;0-N&amp;gt; --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;((cd|dvd|dis[ck])[0-9]+)$&amp;lt;/regexp&amp;gt;&lt;br /&gt;
&amp;lt;/folderstacking&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== cleandatetime ===&lt;br /&gt;
{{anchor|.3Ccleandatetime.3E}}&lt;br /&gt;
Matches a year number in a string using a Regular Expression&lt;br /&gt;
&lt;br /&gt;
Default expression:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;video&amp;gt;&lt;br /&gt;
  &amp;lt;cleandatetime&amp;gt;(.*[^ _\,\.\(\)\[\]\-])[ _\.\(\)\[\]\-]+(19[0-9][0-9]|20[0-9][0-9])([ _\,\.\(\)\[\]\-]|[^0-9]$)?&amp;lt;/cleandatetime&amp;gt;&lt;br /&gt;
&amp;lt;/video&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
:* The string found before will be used as basis string getting cleaned by the cleanstrings expressions. &lt;br /&gt;
:* By default date formats like MM:YY are ignored.&lt;br /&gt;
&lt;br /&gt;
=== cleanstrings ===&lt;br /&gt;
{{anchor|.3Ccleanstrings.3E}}&lt;br /&gt;
Clean unwanted characters from filenames or folders by using a list of Regular Expressions. Please note that everything right of the match (at the end of the file name) is removed, so if you would have a file named &#039;&#039;Super movie.mp4&#039;&#039; and would add &amp;lt;tt&amp;gt;&amp;lt;regexp&amp;gt; &amp;lt;/regexp&amp;gt;&amp;lt;/tt&amp;gt; (only a space), the only thing that would be left is &#039;&#039;Super&#039;&#039;, which is probably not what you want.&lt;br /&gt;
&lt;br /&gt;
{{Github_link|[https://github.com/xbmc/xbmc/blob/Nexus/xbmc/settings/AdvancedSettings.cpp#L201-L211 Code in Github]}}&lt;br /&gt;
&lt;br /&gt;
Default expressions:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;video&amp;gt;&lt;br /&gt;
  &amp;lt;cleanstrings&amp;gt;&lt;br /&gt;
   &amp;lt;regexp&amp;gt;([ _\\,\\.\\(\\)\\[\\]\\-](10bit|480p|480i|576p|576i|720p|720i|1080p|1080i|2160p|3d|aac|ac3|aka|atmos|avi|bd5|bdrip|bluray|brrip|cam|cd[1-9]|custom|dc|ddp|divx|divx5|dolbydigital|dolbyvision|dsr|dsrip|dts|dts-hdma|dts-hra|dts-x|dv|dvd|dvd5|dvd9|dvdivx|dvdrip|dvdscr|dvdscreener|extended|fragment|fs|h264|h265|hdr|hdr10|hevc|hddvd|hdrip|hdtv|hdtvrip|hrhd|hrhdtv|internal|limited|multisubs|nfofix|ntsc|ogg|ogm|pal|pdtv|proper|r3|r5|read.nfo|remastered|remux|repack|rerip|retail|screener|se|svcd|tc|telecine|telesync|truehd|ts|uhd|unrated|ws|x264|x265|xvid|xvidvd|xxx|web-dl|webrip|www.www|\\[.*\\])([ _\\,\\.\\(\\)\\[\\]\\-]|$)&amp;quot;);&amp;lt;/regexp&amp;gt;&lt;br /&gt;
   &amp;lt;regexp&amp;gt;(\[.*\])&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;/cleanstrings&amp;gt;&lt;br /&gt;
&amp;lt;/video&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Updated in v20&amp;lt;ref&amp;gt;https://github.com/xbmc/xbmc/pull/20549&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:* Arguments &amp;lt;tt&amp;gt;action=&amp;quot;append&amp;quot;&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;action=&amp;quot;prepend&amp;quot;&amp;lt;/tt&amp;gt; will insert user specified expressions after, or before, the defaults above. (Further details in [[Advancedsettings.xml#.3Cmoviestacking.3E|moviestacking]] section)&lt;br /&gt;
&lt;br /&gt;
=== tvshowmatching ===&lt;br /&gt;
{{anchor|.3Ctvshowmatching.3E}}&lt;br /&gt;
Matches the season and episode numbers in file paths by using a list of Regular Expressions&lt;br /&gt;
&lt;br /&gt;
{{Github_link|[https://github.com/xbmc/xbmc/blob/Matrix/xbmc/settings/AdvancedSettings.cpp#L232 Code in Github]}}&lt;br /&gt;
&lt;br /&gt;
Defaults:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tvshowmatching&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;s([0-9]+)[ ._x-]*e([0-9]+(?:(?:[a-i]|\\.[1-9])(?![0-9]))?)([^\\\\/]*)$&amp;lt;/regexp&amp;gt;  &amp;lt;!-- foo.s01.e01, foo.s01_e01, S01E02 foo, S01 - E02, S01xE02 --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;[\._ -]()[Ee][Pp]_?([0-9]+)([^\\/]*)$&amp;lt;/regexp&amp;gt;  &amp;lt;!-- foo.ep01, foo.EP_01 --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;([0-9]{4})[\.-]([0-9]{2})[\.-]([0-9]{2})&amp;lt;/regexp&amp;gt;  &amp;lt;!-- foo.yyyy.mm.dd.* (byDate=true) --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;([0-9]{2})[\.-]([0-9]{2})[\.-]([0-9]{4})&amp;lt;/regexp&amp;gt;  &amp;lt;!-- foo.mm.dd.yyyy.* (byDate=true) --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;[\\/\._ \[\(-]([0-9]+)x([0-9]+)([^\\/]*)$&amp;lt;/regexp&amp;gt;  &amp;lt;!-- foo.1x09* or just /1x09* --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;[\\/\._ -]([0-9]+)([0-9][0-9])([\._ -][^\\/]*)$&amp;lt;/regexp&amp;gt;  &amp;lt;!-- foo.103*, 103 foo --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;[\/._ -]p(?:ar)?t[_. -]()([ivx]+)([._ -][^\/]*)$&amp;lt;/regexp&amp;gt;  &amp;lt;!-- Part I, Pt.VI --&amp;gt;&lt;br /&gt;
&amp;lt;/tvshowmatching&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:* Arguments &amp;lt;tt&amp;gt;action=&amp;quot;append&amp;quot;&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;action=&amp;quot;prepend&amp;quot;&amp;lt;/tt&amp;gt; will insert user specified expressions after, or before, the defaults above. (Further details in [[Advancedsettings.xml#.3Cmoviestacking.3E|moviestacking]] section)&lt;br /&gt;
:* Paths are converted to lower case before matching.&lt;br /&gt;
:* For multi-episode matching to work, there needs to be a third set of parentheses &#039;()&#039; at the end, this part is fed back into the regexp engine.&lt;br /&gt;
:* A [https://forum.kodi.tv/showthread.php?tid=51614 forum thread] has a discussion of pre-made regex lists to match common names. These might improve Kodi&#039;s ability to match TV show names in some situations, at the risk of additional false positives.&lt;br /&gt;
&lt;br /&gt;
==== Filenames without Season ====&lt;br /&gt;
There are two methods to add episodes without a season in their file path. Both ways will force the season to &#039;1&#039; by default, so that you can use&lt;br /&gt;
the &#039;Use Absolute Ordering (Single Season)&#039; setting from the TheTvDb.com scraper.&lt;br /&gt;
&lt;br /&gt;
; Simple Method &#039;&#039;(XBMC v9.11 onwards and Kodi)&#039;&#039;&lt;br /&gt;
: Use only one pair of parentheses&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&amp;lt;regexp&amp;gt;[/\._ \-]([0-9]+)&amp;lt;/regexp&amp;gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
; Advanced Method &#039;&#039;(XBMC v10.05 onwards and Kodi)&#039;&#039;&lt;br /&gt;
: Supports multi-episode files without season&lt;br /&gt;
: Use an empty pair of parentheses for the season&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&amp;lt;regexp&amp;gt;[/\._ \-]()([0-9]+)(-[0-9]+)?&amp;lt;/regexp&amp;gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; Specifying Default Season &#039;&#039;(XBMC v12.0 onwards and Kodi)&#039;&#039;&lt;br /&gt;
It is possible to set the default season for specific regular expressions by setting the &#039;defaultseason&#039; attribute.&lt;br /&gt;
: Works with both the simple method and advanced method&lt;br /&gt;
: If not used, the season will be set to &#039;1&#039;&lt;br /&gt;
: Useful for setting specials to season &#039;0&#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&amp;lt;regexp defaultseason=&amp;quot;0&amp;quot;&amp;gt;[/\._ \-]X()([0-9]+)(-[0-9]+)?&amp;lt;/regexp&amp;gt;&lt;br /&gt;
&amp;lt;regexp defaultseason=&amp;quot;1&amp;quot;&amp;gt;[/\._ \-]E()([0-9]+)(-[0-9]+)?&amp;lt;/regexp&amp;gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== tvmultipartmatching ===&lt;br /&gt;
{{anchor|.3Ctvmultipartmatching.3E}}&lt;br /&gt;
Matches a multipart episode number based on a previously identified episode file, using a list of Regular Expressions.&lt;br /&gt;
&lt;br /&gt;
Default:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tvmultipartmatching&amp;gt;^[-_ex]+([0-9]+(?:(?:[a-i]|\\.[1-9])(?![0-9]))?)&amp;lt;/tvmultipartmatching&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
:* Text matching is compared case-insensitive.&lt;br /&gt;
:* Specifying this option &#039;&#039;&#039;replaces&#039;&#039;&#039; the default value&lt;br /&gt;
&lt;br /&gt;
=== excludefromscan ===&lt;br /&gt;
{{anchor|.3Cexcludefromscan.3E}}&lt;br /&gt;
Matches filenames or folders which should be excluded from a library scan (except tvshows) using a list of Regular Expressions. This can be for both Video or Audio sections of &amp;lt;tt&amp;gt;advancedsettings.xml&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Defaults:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;video&amp;gt;&lt;br /&gt;
  &amp;lt;excludefromscan&amp;gt;&lt;br /&gt;
    &amp;lt;regexp&amp;gt;-trailer&amp;lt;/regexp&amp;gt;&lt;br /&gt;
    &amp;lt;regexp&amp;gt;[!-._ \\/]sample[-._ \\/]&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;/excludefromscan&amp;gt;&lt;br /&gt;
&amp;lt;/video&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:* Arguments &amp;lt;tt&amp;gt;action=&amp;quot;append&amp;quot;&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;action=&amp;quot;prepend&amp;quot;&amp;lt;/tt&amp;gt; will insert user specified expressions after, or before, the defaults above. (Further details in [[Advancedsettings.xml#.3Cmoviestacking.3E|moviestacking]] section)&lt;br /&gt;
&lt;br /&gt;
=== excludefromlisting ===&lt;br /&gt;
{{anchor|.3Cexcludefromlisting.3E}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;video&amp;gt;  &lt;br /&gt;
  &amp;lt;excludefromlisting&amp;gt; &amp;lt;!-- Regular expressions that if evaluated to true won&#039;t be displayed in Files View --&amp;gt;&lt;br /&gt;
    &amp;lt;regexp&amp;gt;[-\._ ](sample|trailer)[-\._ ]&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;/excludefromlisting&amp;gt;&lt;br /&gt;
&amp;lt;/video&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== excludetvshowsfromscan ===&lt;br /&gt;
{{anchor|.3Cexcludetvshowsfromscan.3E}}&lt;br /&gt;
Matches filenames or folders which should be excluded from a tvshow library scan using a list of Regular Expressions&lt;br /&gt;
&lt;br /&gt;
Defaults:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;video&amp;gt;&lt;br /&gt;
  &amp;lt;excludetvshowsfromscan&amp;gt;&lt;br /&gt;
    &amp;lt;regexp&amp;gt;[!-._ \\/]sample[-._ \\/]&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;/excludetvshowsfromscan&amp;gt;&lt;br /&gt;
&amp;lt;/video&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:* Arguments &amp;lt;tt&amp;gt;action=&amp;quot;append&amp;quot;&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;action=&amp;quot;prepend&amp;quot;&amp;lt;/tt&amp;gt; will insert user specified expressions after, or before, the defaults above. (Further details in [[Advancedsettings.xml#.3Cmoviestacking.3E|moviestacking]] section)&lt;br /&gt;
&lt;br /&gt;
=== trailermatching ===&lt;br /&gt;
{{anchor|.3Ctrailermatching.3E}}&lt;br /&gt;
Contains Regular Expression syntax to match the locally stored trailers to movies in the library.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;trailermatching&amp;gt;&lt;br /&gt;
    &amp;lt;!-- This regexp will match moviename_Trailer.avi --&amp;gt;&lt;br /&gt;
    &amp;lt;regexp&amp;gt;(.*?)(_Trailer)(\.[^.]+)$&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;/trailermatching&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== videolibrary ===&lt;br /&gt;
{{anchor|.3Cvideolibrary.3E}}&lt;br /&gt;
Options specific to the Video Library&lt;br /&gt;
&lt;br /&gt;
{{Note|Kodi v20 users don&#039;t need set &amp;quot;importwatched&amp;quot; or &amp;quot;importresumepoint&amp;quot; to true anymore as that&#039;s the default then &amp;lt;ref&amp;gt;https://github.com/xbmc/xbmc/pull/20842&amp;lt;/ref&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot; line=&#039;line&#039;&amp;gt;&lt;br /&gt;
  &amp;lt;videolibrary&amp;gt;&lt;br /&gt;
    &amp;lt;allitemsonbottom&amp;gt;false&amp;lt;/allitemsonbottom&amp;gt;  &amp;lt;!-- sorts the &amp;quot;*All&amp;quot; items at the bottom of the list when in Ascending order --&amp;gt;&lt;br /&gt;
    &amp;lt;cleanonupdate&amp;gt;false&amp;lt;/cleanonupdate&amp;gt;  &amp;lt;!-- default set to false to prevent Kodi from removing items from the database while updating.  --&amp;gt;&lt;br /&gt;
    &amp;lt;usefasthash&amp;gt;true&amp;lt;/usefasthash&amp;gt; &amp;lt;!-- defaults to true. Set to false in order to skip hashing based on the folders modification time. --&amp;gt;&lt;br /&gt;
    &amp;lt;recentlyaddeditems&amp;gt;35&amp;lt;/recentlyaddeditems&amp;gt; &amp;lt;!-- number of recently added items. Defaults to 25 --&amp;gt;&lt;br /&gt;
    &amp;lt;itemseparator&amp;gt; / &amp;lt;/itemseparator&amp;gt;  &amp;lt;!-- separator used for multiple artists/genres in tags. Note, this is *space* *slash* *space* --&amp;gt;&lt;br /&gt;
    &amp;lt;exportautothumbs&amp;gt;false&amp;lt;/exportautothumbs&amp;gt;  &amp;lt;!-- export auto-generated thumbs. Defaults to false --&amp;gt;&lt;br /&gt;
    &amp;lt;importwatchedstate&amp;gt;false&amp;lt;/importwatchedstate&amp;gt;  &amp;lt;!-- import previously exported playdate and playcount from .nfo files. Defaults to false --&amp;gt;&lt;br /&gt;
    &amp;lt;importresumepoint&amp;gt;false&amp;lt;/importresumepoint&amp;gt;  &amp;lt;!-- import previously exported resume point from .nfo files. Defaults to false --&amp;gt;&lt;br /&gt;
    &amp;lt;dateadded&amp;gt;1&amp;lt;/dateadded&amp;gt; &amp;lt;!-- 0 results in using the current datetime when adding a video;&lt;br /&gt;
                                  1 (default) results in prefering to use the files mtime (if it&#039;s valid) and only using the file&#039;s ctime if the mtime isn&#039;t valid;&lt;br /&gt;
                                  2 results in using the newer datetime of the file&#039;s mtime and ctime --&amp;gt;&lt;br /&gt;
  &amp;lt;/videolibrary&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== videoscanner ===&lt;br /&gt;
{{anchor|.3Cvideoscanner.3E}}&lt;br /&gt;
Options specific to the Video scanner&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;videoscanner&amp;gt;&lt;br /&gt;
    &amp;lt;ignoreerrors&amp;gt;true&amp;lt;/ignoreerrors&amp;gt; &amp;lt;!-- Set to true to silently ignore errors while scanning videos. This prevents the error dialogue box, so you don&#039;t have to keep hitting &amp;quot;yes&amp;quot; to keep scanning.--&amp;gt;&lt;br /&gt;
  &amp;lt;/videoscanner&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Library artwork ==&lt;br /&gt;
&lt;br /&gt;
{{note|Using &amp;lt;imageres&amp;gt;9999&amp;lt;/imageres&amp;gt; and &amp;lt;fanartres&amp;gt;9999&amp;lt;/fanartres&amp;gt; will allow caching artwork at original size.}}&lt;br /&gt;
&lt;br /&gt;
=== imageres ===&lt;br /&gt;
{{anchor|.3Cimageres.3E}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=&amp;quot;imageres description&amp;quot; /&amp;gt;Specify the maximum resolution that [[Artwork/Cache#Texture optimization| cached artwork]] (other than fanart / 16:9 images) should be resized to in pixels. The width is automatically calculated as being 16/9*height.  The image will be resized to fit within this size. e.g. an image that is 2000x500 will be cached at size 1280x320. An image that is 500x800 will be cached at size 450x720 using the default value of 720.&amp;lt;section end=&amp;quot;imageres description&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;imageres&amp;gt;720&amp;lt;/imageres&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== fanartres ===&lt;br /&gt;
{{anchor|.3Cfanartres.3E}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=&amp;quot;fanartres description&amp;quot; /&amp;gt;Specify the maximum resolution that [[Artwork/Cache#Texture optimization| cached fanart]] should be resized to in pixels. The width is automatically calculated as being 16/9*height. Only images that are exactly 16x9 and equal to or greater than this resolution will be cached at this size - all other images will be cached using &amp;lt;imageres&amp;gt;. The default value is 1080.&amp;lt;section end=&amp;quot;fanartres description&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;fanartres&amp;gt;1080&amp;lt;/fanartres&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== imagescalingalgorithm ===&lt;br /&gt;
Specify the image scaling algorithm for image resizing when [[Artwork/Cache#Texture optimization| caching artwork]] to the local texture cache.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;imagescalingalgorithm&amp;gt;bicubic&amp;lt;/imagescalingalgorithm&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[https://github.com/xbmc/xbmc/blob/master/xbmc/pictures/PictureScalingAlgorithm.cpp#L20-L32 Available image scaling algorithms]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=text enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
fast_bilinear&lt;br /&gt;
bilinear&lt;br /&gt;
bicubic&lt;br /&gt;
experimental&lt;br /&gt;
nearest_neighbor&lt;br /&gt;
averaging_area&lt;br /&gt;
bicublin&lt;br /&gt;
gaussian&lt;br /&gt;
sinc&lt;br /&gt;
lanczos&lt;br /&gt;
bicubic_spline&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== imagequalityjpeg ===&lt;br /&gt;
This specifies the quality of the images when stored in jpeg format. By default kodi uses a quality of 4 which is a good compromise between size and quality. If you want to reduce the thumbnail sizes (decreasing quality) choose a higher value up to 21. If high quality (large thumbnail size) is needed, chose a smaller value, e.g. 0,1,2 or 3. (Added in v20 &amp;lt;ref&amp;gt;https://github.com/xbmc/xbmc/pull/21418&amp;lt;/ref&amp;gt;)&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;imagequalityjpeg&amp;gt;4&amp;lt;/imagequalityjpeg&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Video and music library settings ==&lt;br /&gt;
&lt;br /&gt;
=== playlistasfolders ===&lt;br /&gt;
{{anchor|.3Cplaylistasfolders.3E}}&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Set to false to revert to the previous behaviour. When you select a playlist, its content is added to the list of elements to be played.&lt;br /&gt;
&lt;br /&gt;
:{{note|This setting will not affect smart playlists, they will always show as folders.}}&lt;br /&gt;
&lt;br /&gt;
;Example&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;playlistasfolders&amp;gt;true&amp;lt;/playlistasfolders&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== playlistretries ===&lt;br /&gt;
{{anchor|.3Cplaylistretries.3E}}&lt;br /&gt;
The number of retries attempted if a source is offline. With this control you can alter the number of consecutive failed items before a playlist fails.&lt;br /&gt;
&lt;br /&gt;
Default:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;playlistretries&amp;gt;100&amp;lt;/playlistretries&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== playlisttimeout ===&lt;br /&gt;
{{anchor|.3Cplaylisttimeout.3E}}&lt;br /&gt;
The timeout, in seconds, before item failure.&lt;br /&gt;
&lt;br /&gt;
Default:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;playlisttimeout&amp;gt;20&amp;lt;/playlisttimeout&amp;gt; &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== sorttokens ===&lt;br /&gt;
Allows you to specify additional tokens that will be ignored at the start of lines during sorting.&lt;br /&gt;
{{note|Sort tokens are case sensitive.}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;sorttokens&amp;gt;&lt;br /&gt;
  &amp;lt;token&amp;gt;the&amp;lt;/token&amp;gt;&lt;br /&gt;
&amp;lt;/sorttokens&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In the above example &amp;quot;the &amp;quot;, &amp;quot;the.&amp;quot; and &amp;quot;the_&amp;quot; will be ignored at the start of titles or names when sorting items, in both video and music libraries. A separator can also be specified, for example&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;sorttokens&amp;gt;&lt;br /&gt;
    &amp;lt;token separators=&amp;quot;&#039;&amp;quot;&amp;gt;L&amp;lt;/token&amp;gt;&lt;br /&gt;
&amp;lt;/sorttokens&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
In that case the value L&#039;, as in French movie name &#039;&#039;L&#039;argent&#039;&#039;, will be ignored and the item listed under &amp;quot;A&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== musicdatabase/videodatabase ===&lt;br /&gt;
{{anchor|.3Cmusicdatabase.3E/.3Cvideodatabase.3E|musicdatabase/videodatabase|database tags music/video/tv/epg/adsp}}&lt;br /&gt;
{{main|MySQL}}&lt;br /&gt;
&amp;lt;section begin=&amp;quot;videodatabase&amp;quot; /&amp;gt;&lt;br /&gt;
Allows advanced customization of the default database settings for music, video, TV, EPG, and ADSP databases.&lt;br /&gt;
&lt;br /&gt;
:{{note| &#039;&#039;&#039;It is HIGHLY recommended that you not attempt to place an sqlite3 database outside of kodi&#039;s path.  sqlite3 contains no filesystem abstraction, so this will plain break on any non-local (as far as Kodi is concerned) paths.  Use this for mysql only.&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Parent tags:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;videodatabase&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;musicdatabase&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;tvdatabase&amp;gt;&#039;&#039;&#039; - Highly experimental/unstable and no practical benefit for most users. &#039;&#039;&#039;Avoid using.&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;epgdatabase&amp;gt;&#039;&#039;&#039; - Highly experimental/unstable and no practical benefit for most users. &#039;&#039;&#039;Avoid using.&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;adspdatabase&amp;gt;&#039;&#039;&#039; - Highly experimental/unstable and no practical benefit for most users. &#039;&#039;&#039;Avoid using.&#039;&#039;&#039;&lt;br /&gt;
{{MySQL warning}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Child tags: &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;type&amp;gt;&lt;br /&gt;
: &#039;&#039;Required&#039;&#039; - Can be either &amp;quot;sqlite3&amp;quot; or &amp;quot;mysql&amp;quot; (default: sqlite3)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;host&amp;gt;&lt;br /&gt;
:&#039;&#039;Required&#039;&#039; - &lt;br /&gt;
* sqlite3: defines the relative path to the database file (eg. /usr/local/kodi/databases).&lt;br /&gt;
* mysql: defines the host of the mysql socket (eg. localhost, 192.168.0.1, etc)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;port&amp;gt;&lt;br /&gt;
: &#039;&#039;Optional&#039;&#039; -&lt;br /&gt;
* sqlite3: silently ignored&lt;br /&gt;
* mysql: defines the port of the mysql socket (default: 3306)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;name&amp;gt;&lt;br /&gt;
: &#039;&#039;Optional&#039;&#039; -&lt;br /&gt;
:by default &amp;quot;MyVideos&amp;quot;+DB number will be used.&lt;br /&gt;
* sqlite3: defines the name of the database file to read from, excluding the &amp;quot;.db&amp;quot; extension.&lt;br /&gt;
* mysql: defines the name of the database to use&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;user&amp;gt;&lt;br /&gt;
: &#039;&#039;Required for MySQL&#039;&#039; -&lt;br /&gt;
* sqlite3: silently ignored&lt;br /&gt;
* mysql: defines the user with privileged access to the database&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;pass&amp;gt;&lt;br /&gt;
: &#039;&#039;Required for MySQL&#039;&#039; -&lt;br /&gt;
* sqlite3: silently ignored&lt;br /&gt;
* mysql: defines the password for the user with privileged access to the database&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;compression&amp;gt;&lt;br /&gt;
: &#039;&#039;Optional&#039;&#039; - Defaults to false. Set to &amp;quot;true&amp;quot; to enable MySQL compression protocol. Performance benefit is going to be largely dependent on the network bandwidth, latency between database and clients and on the size of the result sets. [https://github.com/xbmc/xbmc/pull/6484]&lt;br /&gt;
: {{Note|Slower clients (such as the RPi and others) won&#039;t benefit from it as the zlib de-compression overhead is higher than the actual compression savings}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;key&amp;gt;&lt;br /&gt;
: &#039;&#039;Optional&#039;&#039; - SSL setting for MySQL [https://github.com/xbmc/xbmc/pull/2566]&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;cert&amp;gt;&lt;br /&gt;
: &#039;&#039;Optional&#039;&#039; - SSL setting for MySQL [https://github.com/xbmc/xbmc/pull/2566]&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;ca&amp;gt;&lt;br /&gt;
: &#039;&#039;Optional&#039;&#039; - SSL setting for MySQL [https://github.com/xbmc/xbmc/pull/2566]&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;capath&amp;gt;&lt;br /&gt;
: &#039;&#039;Optional&#039;&#039; - SSL setting for MySQL [https://github.com/xbmc/xbmc/pull/2566]&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;ciphers&amp;gt;&lt;br /&gt;
: &#039;&#039;Optional&#039;&#039; - SSL setting for MySQL [https://github.com/xbmc/xbmc/pull/2566]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Examples:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
1) Configure a database for MySQL.&lt;br /&gt;
:{{note| &#039;&#039;The &#039;&#039;&#039;&amp;lt;videodatabase&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;musicdatabase&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;tvdatabase&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;epgdatabase&amp;gt;&#039;&#039;&#039;, and &#039;&#039;&#039;&amp;lt;adspdatabase&amp;gt;&#039;&#039;&#039; tags are interchangeable here.&#039;&#039;}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;videodatabase&amp;gt;&lt;br /&gt;
  &amp;lt;type&amp;gt;mysql&amp;lt;/type&amp;gt;&lt;br /&gt;
  &amp;lt;host&amp;gt;192.168.0.10&amp;lt;/host&amp;gt;&lt;br /&gt;
  &amp;lt;name&amp;gt;kodi_video&amp;lt;/name&amp;gt;&lt;br /&gt;
  &amp;lt;user&amp;gt;kodi&amp;lt;/user&amp;gt;&lt;br /&gt;
  &amp;lt;pass&amp;gt;kodi&amp;lt;/pass&amp;gt;&lt;br /&gt;
&amp;lt;/videodatabase&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2) Configure a database for an sqlite database.&lt;br /&gt;
:{{note| &#039;&#039;The &#039;&#039;&#039;&amp;lt;videodatabase&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;musicdatabase&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;tvdatabase&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;epgdatabase&amp;gt;&#039;&#039;&#039;, and &#039;&#039;&#039;&amp;lt;adspdatabase&amp;gt;&#039;&#039;&#039; tags are interchangeable here.&#039;&#039;}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;musicdatabase&amp;gt;&lt;br /&gt;
  &amp;lt;type&amp;gt;sqlite3&amp;lt;/type&amp;gt;&lt;br /&gt;
  &amp;lt;host&amp;gt;/usr/local/share/kodi/databases&amp;lt;/host&amp;gt;&lt;br /&gt;
&amp;lt;/musicdatabase&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section end=&amp;quot;videodatabase&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== externalplayer ===&lt;br /&gt;
{{anchor|.3Cexternalplayer.3E}}&lt;br /&gt;
{{see|External players}}&lt;br /&gt;
&lt;br /&gt;
== Music settings ==&lt;br /&gt;
&lt;br /&gt;
=== musicextensions ===&lt;br /&gt;
{{anchor|.3Cmusicextensions.3E}}&lt;br /&gt;
&amp;lt;section begin=&amp;quot;musicextensions&amp;quot; /&amp;gt;&lt;br /&gt;
Default extensions for MUSIC:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.nsv .m4a .flac .aac .strm .pls .rm .rma .mpa .wav .wma .ogg .mp3 .mp2 .m3u .gdm .imf .m15 .sfx&lt;br /&gt;
.uni .ac3 .dts .cue .aif .aiff .wpl .xspf .ape .mac .mpc .mp+ .mpp .shn .zip .wv .dsp .xsp .xwav&lt;br /&gt;
.waa .wvs .wam .gcm .idsp .mpdsp .mss .spt .rsd .sap .cmc .cmr .dmc .mpt .mpd .rmt .tmc .tm8&lt;br /&gt;
.tm2 .oga .url .pxml .tta .rss .wtv .mka .tak .opus .dff .dsf .m4b .dtshd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is possible to add or remove extensions for Music, using the following XML tags. Useful if you keep, say, FLAC and mp3 versions of music in the same folder. The &amp;lt;remove&amp;gt; tag can be used to remove mp3 from being listed in the library, leaving only the higher quality FLAC being displayed.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;musicextensions&amp;gt;&lt;br /&gt;
   &amp;lt;add&amp;gt;.ex1|.ex2&amp;lt;/add&amp;gt;&lt;br /&gt;
   &amp;lt;remove&amp;gt;.ex3|.ex4&amp;lt;/remove&amp;gt;&lt;br /&gt;
 &amp;lt;/musicextensions&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section end=&amp;quot;musicextensions&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== cddbaddress ===&lt;br /&gt;
{{anchor|.3Ccddbaddress.3E}}&lt;br /&gt;
The address of the online CDDb database.  You may set this to another freedb mirror if there is a more suitable one.  &lt;br /&gt;
&lt;br /&gt;
Default: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;gt;&lt;br /&gt;
&amp;lt;cddbaddress&amp;gt;freedb.freedb.org&amp;lt;/cddbaddress&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== songinfoduration ===&lt;br /&gt;
{{anchor|.3Csonginfoduration.3E}}&lt;br /&gt;
This controls how long the song information will remain onscreen when the song changes during visualisations.  The valid range is &amp;quot;1&amp;quot; to &amp;quot;Indefinite (0)&amp;quot;, in seconds.  This does not include the duration of any transition effects. &lt;br /&gt;
&lt;br /&gt;
Default:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;songinfoduration&amp;gt;10&amp;lt;/songinfoduration&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== musicfilenamefilters ===&lt;br /&gt;
{{anchor|.3Cmusicfilenamefilters.3E}}&lt;br /&gt;
Contains filters to match music information (artist, title etc.) from a tag-less music filename.  The first &amp;lt;filter&amp;gt; to match completely is used. Matched items include:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
%A - Artist&lt;br /&gt;
%T - Title&lt;br /&gt;
%B - Album&lt;br /&gt;
%N - Track number&lt;br /&gt;
%S - Part of set (disk number)&lt;br /&gt;
%D - Duration&lt;br /&gt;
%G - Genre&lt;br /&gt;
%Y - Year&lt;br /&gt;
%R - Rating&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;musicfilenamefilters&amp;gt;&lt;br /&gt;
  &amp;lt;filter&amp;gt;%A - %T&amp;lt;/filter&amp;gt;&lt;br /&gt;
&amp;lt;/musicfilenamefilters&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== musiclibrary ===&lt;br /&gt;
Options specific to the Music Library&lt;br /&gt;
&amp;lt;section begin=&amp;quot;MusicLibrary&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot; line=&#039;line&#039;&amp;gt;&lt;br /&gt;
&amp;lt;musiclibrary&amp;gt;&lt;br /&gt;
    &amp;lt;allitemsonbottom&amp;gt;true&amp;lt;/allitemsonbottom&amp;gt;       &amp;lt;!-- sorts the &amp;quot;*All&amp;quot; items at the bottom of the list when in Ascending order --&amp;gt;&lt;br /&gt;
    &amp;lt;cleanonupdate&amp;gt;false&amp;lt;/cleanonupdate&amp;gt;            &amp;lt;!-- default set to false to prevent Kodi from removing items from the database while updating.  --&amp;gt;&lt;br /&gt;
    &amp;lt;recentlyaddeditems&amp;gt;35&amp;lt;/recentlyaddeditems&amp;gt;     &amp;lt;!-- number of recently added items. Defaults to 25 --&amp;gt;&lt;br /&gt;
    &amp;lt;albumformat&amp;gt;%B - %Y&amp;lt;/albumformat&amp;gt;              &amp;lt;!-- album label template, default is &amp;quot;%B&amp;quot; --&amp;gt;&lt;br /&gt;
    &amp;lt;prioritiseapetags&amp;gt;true&amp;lt;/prioritiseapetags&amp;gt;     &amp;lt;!-- prioritise APEv2 tags over ID3v1/2 tags, default is false. --&amp;gt;&lt;br /&gt;
    &amp;lt;itemseparator&amp;gt; / &amp;lt;/itemseparator&amp;gt;              &amp;lt;!-- separator used for multiple artists/genres in tags. Note, this is *space* *slash* *space* See Note below--&amp;gt;&lt;br /&gt;
    &amp;lt;artistseparators&amp;gt;                              &amp;lt;!-- separator used for multiple artists. Note that spaces are used for some separators. See Note below--&amp;gt;&lt;br /&gt;
        &amp;lt;separator&amp;gt;;&amp;lt;/separator&amp;gt;&lt;br /&gt;
        &amp;lt;separator&amp;gt;:&amp;lt;/separator&amp;gt;&lt;br /&gt;
        &amp;lt;separator&amp;gt;|&amp;lt;/separator&amp;gt;&lt;br /&gt;
        &amp;lt;separator&amp;gt; feat. &amp;lt;/separator&amp;gt;&lt;br /&gt;
        &amp;lt;separator&amp;gt; ft. &amp;lt;/separator&amp;gt;&lt;br /&gt;
    &amp;lt;/artistseparators&amp;gt;&lt;br /&gt;
    &amp;lt;dateadded&amp;gt;1&amp;lt;/dateadded&amp;gt;                        &amp;lt;!--0 results in using the current datetime when adding a song;&lt;br /&gt;
                                                        1 (default) results in prefering to use the files mtime (if it&#039;s valid) and only using the file&#039;s ctime if the mtime isn&#039;t valid;&lt;br /&gt;
                                                        2 results in using the newer datetime of the file&#039;s mtime and ctime   --&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
    &amp;lt;!-- New for v19 and later releases --&amp;gt;&lt;br /&gt;
    &amp;lt;useisodates&amp;gt;false&amp;lt;/useisodates&amp;gt;                &amp;lt;!-- When &amp;quot;true&amp;quot; all dates displayed in the music library will be in ISO 8601 format (YYYY-MM-DD or part thereof).&lt;br /&gt;
                                                         Defaults to &amp;quot;false&amp;quot; (use localized dates) --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;!-- New for v21 and later --&amp;gt;&lt;br /&gt;
    &amp;lt;artistnavigatestosongs&amp;gt;true&amp;lt;/artistnavigatestosongs&amp;gt;  &amp;lt;!-- When set to &amp;quot;true&amp;quot; Kodi will skip directly to the songs of an artist. Instead of navigating artist -&amp;gt; album -&amp;gt; disc -&amp;gt; songs, it&lt;br /&gt;
                                                                will navigate artist -&amp;gt; songs.  This is similar to how Spotify etc navigates.  Defaults to &amp;quot;false&amp;quot; --&amp;gt;&lt;br /&gt;
&amp;lt;/musiclibrary&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
{{Note|Changing the &amp;lt;itemseparator&amp;gt; or &amp;lt;artistseparators&amp;gt; will only affect newly added items. A rescan won&#039;t change the existing ones. Remove the Source(s) or delete the Music DB and rebuild. This process should be made easier from v18 and up using &amp;lt;promptfulltagscan&amp;gt;}}&amp;lt;section end=&amp;quot;MusicLibrary&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Photos settings ==&lt;br /&gt;
&lt;br /&gt;
=== pictureextensions ===&lt;br /&gt;
{{anchor|.3Cpictureextensions.3E}}&lt;br /&gt;
A list of additional file-extensions to allow (&#039;&#039;&#039;add&#039;&#039;&#039;) or exclude (&#039;&#039;&#039;remove&#039;&#039;&#039;) in the My Pictures window.&lt;br /&gt;
&lt;br /&gt;
Default extensions for PICTURES:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.png .jpg .jpeg .bmp .gif .ico .tif .tiff .tga .pcx .cbz .zip .rss .webp .jp2 .apng&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Examples:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pictureextensions&amp;gt;&lt;br /&gt;
  &amp;lt;add&amp;gt;.ex1|.ex2&amp;lt;/add&amp;gt;&lt;br /&gt;
  &amp;lt;remove&amp;gt;.ex3|.ex4&amp;lt;/remove&amp;gt;&lt;br /&gt;
&amp;lt;/pictureextensions&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== pictureexcludes ===&lt;br /&gt;
{{anchor|.3Cpictureexcludes.3E}}&lt;br /&gt;
Matches filenames or folders which should be excluded from being displayed in My Pictures using a list of Regular Expressions&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pictureexcludes&amp;gt;  &amp;lt;!-- Regular expressions that if evaluated to true won&#039;t be displayed in My Pictures --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;small&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;[-\._ ](sample|trailer)[-\._ ]&amp;lt;/regexp&amp;gt;&lt;br /&gt;
&amp;lt;/pictureexcludes&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== slideshow ===&lt;br /&gt;
{{anchor|.3Cslideshow.3E}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;slideshow&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Amount to pan images as a percentage of the screen --&amp;gt;&lt;br /&gt;
  &amp;lt;panamount&amp;gt;2.5&amp;lt;/panamount&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Amount to zoom images as a percentage of the screen --&amp;gt;&lt;br /&gt;
  &amp;lt;zoomamount&amp;gt;5.0&amp;lt;/zoomamount&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Amount to compensate (zoom) images to attempt to reduce black bars. --&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Results in cropping of the longer length of the image in order to reduce the black bars on the shorter length of the image.  --&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Defaults to 20. --&amp;gt;&lt;br /&gt;
  &amp;lt;blackbarcompensation&amp;gt;20&amp;lt;/blackbarcompensation&amp;gt;  &lt;br /&gt;
&amp;lt;/slideshow&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Network settings ==&lt;br /&gt;
&lt;br /&gt;
=== ftp ===&lt;br /&gt;
{{anchor|.3Cftp.3DE}}&lt;br /&gt;
Specific settings if a ftp server is in use as a source&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ftp&amp;gt;&lt;br /&gt;
  &amp;lt;remotethumbs&amp;gt;true&amp;lt;/remotethumbs&amp;gt; &amp;lt;!-- enable extraction of flag and thumb for ftp --&amp;gt;&lt;br /&gt;
&amp;lt;/ftp&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== samba ===&lt;br /&gt;
{{anchor|.3Csamba.3E}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;samba&amp;gt;&lt;br /&gt;
  &amp;lt;doscodepage&amp;gt;&amp;lt;/doscodepage&amp;gt;  &amp;lt;!-- code page to use for filenames --&amp;gt;&lt;br /&gt;
  &amp;lt;clienttimeout&amp;gt;10&amp;lt;/clienttimeout&amp;gt;  &amp;lt;!-- timeout (in seconds) --&amp;gt;&lt;br /&gt;
  &amp;lt;statfiles&amp;gt;true&amp;lt;/statfiles&amp;gt;  &amp;lt;!-- Set to false to disable smb stat() on files to speed up listings of large directories (over slow links) --&amp;gt;&lt;br /&gt;
&amp;lt;/samba&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== hosts ===&lt;br /&gt;
{{anchor|.3Cfhosts.3E}}&lt;br /&gt;
Static dns entries which take precedence over your dns server.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;hosts&amp;gt;&lt;br /&gt;
  &amp;lt;entry name=&amp;quot;HOSTNAME&amp;quot;&amp;gt;IPADDRESS&amp;lt;/entry&amp;gt;&lt;br /&gt;
&amp;lt;/hosts&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== network ===&lt;br /&gt;
{{anchor|.3Cnetwork.3E}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml line=&#039;line&#039;&amp;gt;&lt;br /&gt;
&amp;lt;network&amp;gt;&lt;br /&gt;
  &amp;lt;curlclienttimeout&amp;gt;10&amp;lt;/curlclienttimeout&amp;gt;  &amp;lt;!-- Timeout in seconds for libcurl (http/ftp) connections --&amp;gt;&lt;br /&gt;
  &amp;lt;curllowspeedtime&amp;gt;20&amp;lt;/curllowspeedtime&amp;gt;    &amp;lt;!-- Time in seconds for libcurl to consider a connection lowspeed --&amp;gt;&lt;br /&gt;
  &amp;lt;curlretries&amp;gt;2&amp;lt;/curlretries&amp;gt;               &amp;lt;!-- Amount of retries for certain failed libcurl operations (e.g. timeout) --&amp;gt;&lt;br /&gt;
  &amp;lt;httpproxyusername&amp;gt;&amp;lt;/httpproxyusername&amp;gt;    &amp;lt;!-- username for Basic Proxy Authentication --&amp;gt;&lt;br /&gt;
  &amp;lt;httpproxypassword&amp;gt;&amp;lt;/httpproxypassword&amp;gt;    &amp;lt;!-- password for Basic Proxy Authentication --&amp;gt;&lt;br /&gt;
  &amp;lt;disableipv6&amp;gt;false&amp;lt;/disableipv6&amp;gt;           &amp;lt;!-- Certain hardware/OS combinations have trouble with ipv6. Set &amp;quot;true&amp;quot; to disable --&amp;gt;&lt;br /&gt;
  &amp;lt;disablehttp2&amp;gt;false&amp;lt;/disablehttp2&amp;gt;         &amp;lt;!-- Added in v19- Allows disabling HTTP2 for broken Curl / HTTP2 servers --&amp;gt;&lt;br /&gt;
  &amp;lt;nfstimeout&amp;gt;30&amp;lt;/nfstimeout&amp;gt;                &amp;lt;!-- Added in v19- Timeout in seconds for NFS access, 0 = wait forever (previous behaviour) default is 5s  --&amp;gt;&lt;br /&gt;
  &amp;lt;catrustfile&amp;gt;filepath&amp;lt;/catrustfile&amp;gt;        &amp;lt;!-- Added in v19- Allows specifying a custom SSL CA trust store bundle. e.g. special://masterprofile/cacerts.pem --&amp;gt;&lt;br /&gt;
  &amp;lt;curlkeepaliveinterval&amp;gt;30&amp;lt;/curlkeepaliveinterval&amp;gt;     &amp;lt;!-- Added in v19- Enable TCP keepalive probes in curl --&amp;gt;&lt;br /&gt;
  &amp;lt;nfsretries&amp;gt;0&amp;lt;/nfsretries&amp;gt;                 &amp;lt;!-- 0 to disable, default: -1 (unlimited) Added in v20--&amp;gt;&lt;br /&gt;
&amp;lt;/network&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More information:&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
* &amp;lt;curlkeepaliveinterval&amp;gt;&amp;lt;ref&amp;gt;https://github.com/xbmc/xbmc/pull/19319&amp;lt;/ref&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
* &amp;lt;nfsretries&amp;gt;&amp;lt;ref&amp;gt;https://github.com/xbmc/xbmc/pull/19513&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== cache ===&lt;br /&gt;
{{see also|HOW-TO:Modify_the_video_cache}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;cache&amp;gt;&lt;br /&gt;
  &amp;lt;memorysize&amp;gt;0&amp;lt;/memorysize&amp;gt;   &amp;lt;!-- Number of bytes used for buffering streams in memory when set to 0 the cache will be written to disk instead of RAM --&amp;gt;&lt;br /&gt;
  &amp;lt;buffermode&amp;gt;0&amp;lt;/buffermode&amp;gt;   &amp;lt;!-- Choose what to buffer:&lt;br /&gt;
                                    0) Buffer all internet filesystems (like &amp;quot;2&amp;quot; but additionally also ftp, webdav, etc.) &lt;br /&gt;
                                    1) Buffer all filesystems (including local) (default since Kodi 19)&lt;br /&gt;
                                    2) Only buffer true internet filesystems (streams) (http, https, etc.)&lt;br /&gt;
                                    3) No buffer&lt;br /&gt;
                                    4) Buffer all network filesystems (incl. smb, nfs, etc.) --&amp;gt;&lt;br /&gt;
  &amp;lt;readfactor&amp;gt;4.0&amp;lt;/readfactor&amp;gt; &amp;lt;!-- This factor determines the max readrate in terms of readfactor * avg bitrate of a video file. &lt;br /&gt;
                                    This can help on bad connections to keep the cache filled. It will also greatly speed up buffering. Default value 4.0. --&amp;gt;&lt;br /&gt;
  &amp;lt;chunksize&amp;gt;65536&amp;lt;/chunksize&amp;gt; &amp;lt;!-- Filesystem like e.g. NFS might not properly receive the server&#039;s max read chunk values and therefore end up with a very low&lt;br /&gt;
                                    default, causing issues during Cache filling and buffering. This values can be tuned between 256 Bytes and 1048576 Bytes.&lt;br /&gt;
                                    Depending on the filesystem this value is overwritten by e.g. FileCache implementation when another default is appropriate --&amp;gt;&lt;br /&gt;
&amp;lt;/cache&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== airtunesport ===&lt;br /&gt;
{{anchor|.3Cairtunesport.3E}}&amp;lt;section begin=&amp;quot;airtunesport&amp;quot; /&amp;gt;&lt;br /&gt;
This overwrites the defalt listening port of the AirTunes server (announced via zeroconf).&lt;br /&gt;
&amp;lt;section end=&amp;quot;airtunesport&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== airplayport ===&lt;br /&gt;
{{anchor|.3Cairplayport.3E}}&amp;lt;section begin=&amp;quot;airplayport&amp;quot; /&amp;gt;&lt;br /&gt;
This overwrites the default listening port of the AirPlay server (announced via zeroconf).&lt;br /&gt;
&amp;lt;section end=&amp;quot;airplayport&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== File system settings ==&lt;br /&gt;
&lt;br /&gt;
=== packagefoldersize ===&lt;br /&gt;
&amp;lt;section begin=&amp;quot;packagefoldersize&amp;quot; /&amp;gt;&lt;br /&gt;
{{anchor|.3Cpackagefoldersize.3E}}&lt;br /&gt;
{{xml setting&lt;br /&gt;
 | tag name = packagefoldersize&lt;br /&gt;
 | option type = numerical&lt;br /&gt;
 | option values = &lt;br /&gt;
 | default values = 200&lt;br /&gt;
 | platform = all&lt;br /&gt;
 | XBMC version = 12&lt;br /&gt;
 | description = The amount (in megabytes) of add-on zip packages saved from previous add-on installs. These packages are mainly used for the [[Add-ons|add-on]] rollback feature. Increasing the size should increase the amount of past versions saved. Defaults to 200 MB.&lt;br /&gt;
 | example = Example: &amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&amp;lt;packagefoldersize&amp;gt;200&amp;lt;/packagefoldersize&amp;gt; &amp;lt;!-- this example would keep up to 200MB of add-on packages. --&amp;gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;section end=&amp;quot;packagefoldersize&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== detectasudf ===&lt;br /&gt;
{{anchor|.3Cdetectasudf.3E}}&lt;br /&gt;
{{xml setting&lt;br /&gt;
 | tag name = detectasudf&lt;br /&gt;
 | option type = binary&lt;br /&gt;
 | option values = true, false&lt;br /&gt;
 | default values = false&lt;br /&gt;
 | platform = all&lt;br /&gt;
 | XBMC version = &lt;br /&gt;
 | description = Set to true if you wish to detect joint ISO9660/UDF disks as UDF.&lt;br /&gt;
 | example = Example: &amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&amp;lt;detectasudf&amp;gt;false&amp;lt;/detectasudf&amp;gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== handlemounting ===&lt;br /&gt;
{{anchor|.3Chandlemounting.3E}}&lt;br /&gt;
{{xml setting&lt;br /&gt;
 | tag name = handlemounting&lt;br /&gt;
 | option type = binary&lt;br /&gt;
 | option values = true, false&lt;br /&gt;
 | default values = false&lt;br /&gt;
 | platform = Linux&lt;br /&gt;
 | XBMC version = &lt;br /&gt;
 | description = Only used in Linux, it defines if Kodi should attempt to mount media drives (via udisks or udisks2).&amp;lt;br/&amp;gt;Default: False. If kodi is executed with the --standalone option (e.g. as done by kodi-standalone.sh) it by default will be True.&lt;br /&gt;
 | example = Example: &amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&amp;lt;handlemounting&amp;gt;false&amp;lt;/handlemounting&amp;gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== automountopticalmedia ===&lt;br /&gt;
{{xml setting&lt;br /&gt;
 | tag name = automountopticalmedia&lt;br /&gt;
 | option type = binary&lt;br /&gt;
 | option values = true, false&lt;br /&gt;
 | default values = false&lt;br /&gt;
 | platform = Linux&lt;br /&gt;
 | XBMC version = &lt;br /&gt;
 | description = Only used in linux for the udisks and udisks2 providers&amp;lt;br/&amp;gt;defines if kodi should automount optical discs&amp;lt;ref&amp;gt;https://github.com/xbmc/xbmc/pull/20840&amp;lt;/ref&amp;gt;&lt;br /&gt;
 | example = Example: &amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&amp;lt;automountopticalmedia&amp;gt;true&amp;lt;/automountopticalmedia&amp;gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== pathsubstitution ===&lt;br /&gt;
{{anchor|.3Cpathsubstitution.3E}}&lt;br /&gt;
{{main|Path substitution}}&lt;br /&gt;
&lt;br /&gt;
{{divbox|red||&#039;&#039;&#039;Note:&#039;&#039;&#039; Path substition for &amp;quot;sources&amp;quot; and profiles is broken, and will &#039;&#039;&#039;NOT&#039;&#039;&#039; be fixed.}}&lt;br /&gt;
&lt;br /&gt;
Path substitutions are for use for redirecting file paths.  These are processed in order, and are useful for substituting an absolute path on a PC with a path suitable for Kodi to handle.  &lt;br /&gt;
&lt;br /&gt;
Default: No path substitutions defined.  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pathsubstitution&amp;gt;&lt;br /&gt;
  &amp;lt;substitute&amp;gt;&lt;br /&gt;
    &amp;lt;from&amp;gt;G:\dvds\&amp;lt;/from&amp;gt;&lt;br /&gt;
    &amp;lt;to&amp;gt;smb://somecomputer/g-share/dvds/&amp;lt;/to&amp;gt; &amp;lt;!-- Note the difference between the usage of forward and backslashes --&amp;gt;&lt;br /&gt;
  &amp;lt;/substitute&amp;gt;&lt;br /&gt;
&amp;lt;/pathsubstitution&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Input control settings ==&lt;br /&gt;
&lt;br /&gt;
=== remotedelay ===&lt;br /&gt;
{{anchor|.3Cremotedelay.3E}}&lt;br /&gt;
The repeat delay for a LIRC remote control. A delay value between 1 and 20 before a remote button starts repeating on a long keypress (i.e. continuously sending button pushes while it&#039;s held down). &lt;br /&gt;
&lt;br /&gt;
Default: 3&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;remotedelay&amp;gt;10&amp;lt;/remotedelay&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== controllerdeadzone ===&lt;br /&gt;
{{anchor|.3Ccontrollerdeadzone.3E}}&lt;br /&gt;
This advanced settings has been removed. &lt;br /&gt;
Since v17, the [[Advancedsettings.xml#controllerdeadzone|&amp;amp;lt;controllerdeadzone&amp;amp;gt;]] advanced setting has been removed. Deadzones can now be configured by plugging in the controller and selecting it in Settings -&amp;gt; System settings -&amp;gt; Input -&amp;gt; Peripherals.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== enablemultimediakeys ===&lt;br /&gt;
{{anchor|.3Cenablemultimediakeys.3E}}&lt;br /&gt;
This setting only has any effect on Windows versions of Kodi, and only applies to builds from 28th May 2011 onwards.&lt;br /&gt;
In Windows the multimedia keys generate a WM_APPCOMMAND message in addition the keypress. Kodi processes both keypresses and the WM_APPCOMMAND messages, and the end result would be that the command is executed twice. To avoid this, by default multimedia keypresses are disabled. Although it should rarely be necessary, the enablemultimediakeys setting allows you to enable the multimedia keys.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;enablemultimediakeys&amp;gt;true&amp;lt;/enablemultimediakeys&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== seeksteps ===&lt;br /&gt;
{{Main|Skip steps}}&lt;br /&gt;
&lt;br /&gt;
This setting changes which increments are available in the settings GUI for additive seeking. Note that &amp;lt;code&amp;gt;&amp;lt;seeksteps&amp;gt;&amp;lt;/code&amp;gt; is not used to actually choose which seek steps are enabled.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Default:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;seeksteps&amp;gt;7, 15, 30, 60, 180, 300, 600, 900, 1800&amp;lt;/seeksteps&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{editor note|the defaults need to be updated for seeksteps.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== touchscreen ===&lt;br /&gt;
{{anchor|.3Ctouchscreen.3E}}&lt;br /&gt;
This setting allows you to move/align the origin of the touch screen with the origin of the display used. If touch input does not result in a correct movement of the mouse pointer, the behaviour can be corrected with an offset and a stretch/compress factor.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;touchscreen&amp;gt;&lt;br /&gt;
		&amp;lt;x_offset&amp;gt;0&amp;lt;/x_offset&amp;gt; &amp;lt;!-- set pixel x offset to align it to the used display--&amp;gt;&lt;br /&gt;
		&amp;lt;y_offset&amp;gt;0&amp;lt;/y_offset&amp;gt; &amp;lt;!-- set pixel y offset to align it to the used display--&amp;gt;&lt;br /&gt;
		&amp;lt;x_stretch_factor&amp;gt;1.0&amp;lt;/x_stretch_factor&amp;gt; &amp;lt;!-- stretch/compress the touch x axis--&amp;gt;&lt;br /&gt;
		&amp;lt;y_stretch_factor&amp;gt;1.0&amp;lt;/y_stretch_factor&amp;gt; &amp;lt;!-- stretch/compress the touch y axis--&amp;gt;&lt;br /&gt;
    &amp;lt;/touchscreen&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== scanirserver ===&lt;br /&gt;
Introduced in v18 and used in MS Windows setups only.&amp;lt;ref&amp;gt;https://github.com/xbmc/xbmc/pull/13896&amp;lt;/ref&amp;gt;&lt;br /&gt;
Used to disable the regular connection attempts to the IR Server Suite when there is no remote to connect to.&lt;br /&gt;
&lt;br /&gt;
The default setting is to allow connection attempts. To disable connection attempts change value to &#039;&#039;&#039;false&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
     &amp;lt;scanirserver&amp;gt;true&amp;lt;/scanirserver&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Other interface settings ==&lt;br /&gt;
&lt;br /&gt;
=== window ===&lt;br /&gt;
{{anchor|.3Cwindow.3E}}&lt;br /&gt;
{{note|This is a &amp;quot;hidden&amp;quot; guisettings.xml setting (defined by the mouse moving the window size), but it is mentioned here because it is a particularly useful override when used in advancedsettings.xml}}&lt;br /&gt;
This allows you to manually set the default size of Kodi&#039;s windowed mode.  If you resize the window, it will return to the set size when restarting.&lt;br /&gt;
&lt;br /&gt;
WIDTH and HEIGHT are the values for each dimension, in pixels.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;window&amp;gt;&lt;br /&gt;
    &amp;lt;width&amp;gt;WIDTH&amp;lt;/width&amp;gt;&lt;br /&gt;
    &amp;lt;height&amp;gt;HEIGHT&amp;lt;/height&amp;gt;&lt;br /&gt;
&amp;lt;/window&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== restrictcapsmask ===&lt;br /&gt;
{{anchor|.3Crestrictcapsmask.3E}}&lt;br /&gt;
Windows only. A bitmask to prevent Kodi from using detected texture capabilities of the GPU. This helps work around buggy hardware/drivers.&lt;br /&gt;
&lt;br /&gt;
1: prevent the use of compressed textures (DXT1, DXT3, DXT5)&lt;br /&gt;
2: prevent the use of non-power-of-two dimensions for textures&lt;br /&gt;
4: prevent the use of compressed textures with non-power-of-two dimensions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;restrictcapsmask&amp;gt;0&amp;lt;/restrictcapsmask&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== algorithmdirtyregions ===&lt;br /&gt;
{{anchor|.3Calgorithmdirtyregions.3E}}&lt;br /&gt;
{{see also|HOW-TO:Modify dirty regions}}&lt;br /&gt;
&amp;lt;section begin=&amp;quot;algorithmdirtyregions&amp;quot; /&amp;gt;{{note|Some GPU/hardware configurations will have some minor issues (such as a visual &amp;quot;flicker&amp;quot;). For those situations try mode 2 or use the default (mode 3, which requires no advancedsetting). Almost all ARM-based devices (such as [[Android]]) willl likely have flickering issues.}}&lt;br /&gt;
 &lt;br /&gt;
Enable dirty-region processing. Dirty regions are any parts of the screen that have changed since the last frame. By not re-rendering what hasn&#039;t changed the GUI can be sped up. Because all GPUs work differently, only Mode 3 is guaranteed to work for everyone without flickering issues. This mode will reduce CPU/GPU usage, but will not increase GUI speed.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
! value !! result !! description&lt;br /&gt;
|-&lt;br /&gt;
! 0&lt;br /&gt;
| Off&lt;br /&gt;
| The entire viewport is always rendered.&lt;br /&gt;
|-&lt;br /&gt;
! 1&lt;br /&gt;
|Union&lt;br /&gt;
|All dirty regions are grouped into the smallest possible rectangle. This is typically the fastest mode for slower GPUs due to only making one pass.&lt;br /&gt;
|-&lt;br /&gt;
! 2&lt;br /&gt;
| {{nowrap|Cost reduction}}&lt;br /&gt;
| Each dirty region is presented separately, in as many passes as there are regions.&lt;br /&gt;
|-&lt;br /&gt;
! 3&lt;br /&gt;
| {{nowrap|Whole Screen}}&lt;br /&gt;
| The entire screen is rendered if there are any dirty regions. This is a safe default for drivers that clear buffer contents (manifests as blinking or vibrating images). &#039;&#039;&#039;Default&#039;&#039;&#039;&lt;br /&gt;
|}&amp;lt;section end=&amp;quot;algorithmdirtyregions&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;gui&amp;gt;    &lt;br /&gt;
  &amp;lt;algorithmdirtyregions&amp;gt;1&amp;lt;/algorithmdirtyregions&amp;gt;&lt;br /&gt;
&amp;lt;/gui&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== visualizedirtyregions ===&lt;br /&gt;
{{anchor|.3Cvisualizedirtyregions.3E}}&lt;br /&gt;
{{see also|HOW-TO:Modify dirty regions}}&lt;br /&gt;
&amp;lt;section begin=&amp;quot;visualizedirtyregions&amp;quot; /&amp;gt;Enable dirty-region visualization. Paints a rectangle over marked controls.&lt;br /&gt;
&lt;br /&gt;
* true: on&lt;br /&gt;
* false: off &#039;&#039;&#039;(Default)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{{note|This is only a development mode and isn&#039;t of use to normal users.}}&lt;br /&gt;
&amp;lt;section end=&amp;quot;visualizedirtyregions&amp;quot; /&amp;gt;&lt;br /&gt;
Example: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;gui&amp;gt;    &lt;br /&gt;
  &amp;lt;visualizedirtyregions&amp;gt;true&amp;lt;/visualizedirtyregions&amp;gt;&lt;br /&gt;
&amp;lt;/gui&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== smartredraw ===&lt;br /&gt;
&lt;br /&gt;
{{note|This is an experimental feature and you might face issues using it. So please be aware of that.}}&lt;br /&gt;
&lt;br /&gt;
This new feature was introduced in Kodi 18 and if enabled, the GUI process call (and therefore the render call) is only done if anything has changed. The result will be a faster GUI and less load if Kodi plays a video&lt;br /&gt;
&lt;br /&gt;
* true: on&lt;br /&gt;
* false: off &#039;&#039;&#039;(Default)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;gui&amp;gt;    &lt;br /&gt;
  &amp;lt;smartredraw&amp;gt;true&amp;lt;/smartredraw&amp;gt;&lt;br /&gt;
&amp;lt;/gui&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== showexitbutton ===&lt;br /&gt;
{{anchor|.3Cshowexitbutton.3E}}&lt;br /&gt;
Setting to hide the exit button, useful for people running appliance based setups where exit would only confuse/complicate the user. Modifiable via the advancedsettings.xml by setting showexitbutton to false, default is true (show)&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;showexitbutton&amp;gt;true&amp;lt;/showexitbutton&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== fullscreen ===&lt;br /&gt;
{{anchor|.3Cfullscreen.3E}}&lt;br /&gt;
Starts Kodi in full screen (check resolutions!).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;fullscreen&amp;gt;false&amp;lt;/fullscreen&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== splash ===&lt;br /&gt;
{{anchor|.3Csplash.3E}}&lt;br /&gt;
Set to false if you wish to disable the startup splash image. Defaults to true.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;splash&amp;gt;true&amp;lt;/splash&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== cputempcommand ===&lt;br /&gt;
{{anchor|.3Ccputempcommand.3E}}&lt;br /&gt;
Provide a shell command Kodi will use to get CPU temperature. It should print out only &amp;quot;[temp as integer] [scale as one of &amp;quot;CcFf&amp;quot;]&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
;&amp;lt;u&amp;gt;For Nvidia and Raspberry Pi&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;cputempcommand&amp;gt;sed -e &#039;s/\([0-9]*\)[0-9]\{3\}.*/\1 C/&#039; /sys/class/thermal/thermal_zone0/temp&amp;lt;/cputempcommand&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
or&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;cputempcommand&amp;gt;echo &amp;quot;$(sensors -u | tail -n64 | grep temp1_input | awk &#039;{print $2 }&#039; |awk &#039;{printf(&amp;quot;%d\n&amp;quot;,$1 + 0.5);}&#039;) C&amp;quot;&amp;lt;/cputempcommand&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
;&amp;lt;u&amp;gt;For ATI/AMD&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;cputempcommand&amp;gt;sensors|sed -ne &amp;quot;s/temp1: \+[-+]\([0-9]\+\).*/\1 C/p&amp;quot;&amp;lt;/cputempcommand&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== gputempcommand ===&lt;br /&gt;
{{anchor|.3Cgputempcommand.3E}}&lt;br /&gt;
Provide a shell command Kodi will use to get GPU temperature. It should print out only &amp;quot;[temp as integer] [scale as one of &amp;quot;CcFf&amp;quot;]&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
;&amp;lt;u&amp;gt;For Nvidia&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;gputempcommand&amp;gt;echo &amp;quot;$(nvidia-settings -tq gpuCoreTemp) C&amp;quot;&amp;lt;/gputempcommand&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
or&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;gputempcommand&amp;gt;echo &amp;quot;$(nvidia-smi -q -d TEMPERATURE | grep Gpu | cut -c35-36) C&amp;quot;&amp;lt;/gputempcommand&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
;&amp;lt;u&amp;gt;For ATI/AMD&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;gputempcommand&amp;gt;/usr/bin/aticonfig --od-gettemperature | grep Temperature | cut -f 2 -d &amp;quot;-&amp;quot; | cut -f 1 -d &amp;quot;.&amp;quot; | sed -e &amp;quot;s, ,,&amp;quot; | sed &#039;s/$/ C/&#039;&amp;lt;/gputempcommand&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;u&amp;gt;For Raspberry Pi&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;gputempcommand&amp;gt;/opt/vc/bin/vcgencmd measure_temp | sed -e &amp;quot;s/temp=//&amp;quot; -e &amp;quot;s/\..*&#039;/ /&amp;quot;&amp;lt;/gputempcommand&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== glrectanglehack ===&lt;br /&gt;
{{anchor|.3Cglrectanglehack.3E}}&lt;br /&gt;
Problems with ghosting or videos which are only played back in the left upper quarter? The following ATI hack may solve it.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;glrectanglehack&amp;gt;yes&amp;lt;/glrectanglehack&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== alwaysontop ===&lt;br /&gt;
{{anchor|.3Calwaysontop.3E}}&lt;br /&gt;
Added in XBMC v9.11 (Windows OS only). Keeps Kodi always on top when windowed.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;alwaysontop&amp;gt;yes&amp;lt;/alwaysontop&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There is also a fake fullscreen GUI option in Kodi&#039;s settings.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== minimizetotray ===&lt;br /&gt;
{{anchor|.3Cminimizetotray.3E}}&lt;br /&gt;
{{note|Available in Kodi v20 and above.}}&lt;br /&gt;
&lt;br /&gt;
Windows only. Minimizes Kodi to the system tray. Defaults to false.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;minimizetotray&amp;gt;true&amp;lt;/minimizetotray&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Removed tags =&lt;br /&gt;
{{anchor|Recently removed tags}}&lt;br /&gt;
* {{anchor|.3Cthumbsize.3E}}&#039;&#039;&#039;&amp;lt;thumbsize&amp;gt;&#039;&#039;&#039; - replaced by &amp;lt;[[#imageres|imageres]]&amp;gt; in v12 Frodo&lt;br /&gt;
* {{anchor|.3Cfanartheight.3E}}&#039;&#039;&#039;&amp;lt;fanartheight&amp;gt;&#039;&#039;&#039; - replaced by &amp;lt;[[#fanartres|fanartres]]&amp;gt; in v12 Frodo&lt;br /&gt;
* {{anchor|.3Cdvdthumbs.3E}}&#039;&#039;&#039;&amp;lt;dvdthumbs&amp;gt;&#039;&#039;&#039; - removed in v12 Frodo&lt;br /&gt;
* {{anchor|.3Cbusydialogdelayms.3E}}&#039;&#039;&#039;&amp;lt;busydialogdelayms&amp;gt;&#039;&#039;&#039; - removed in v12 Frodo&lt;br /&gt;
* {{anchor|.3Cbginfoloadermaxthreads.3E}}&#039;&#039;&#039;&amp;lt;bginfoloadermaxthreads&amp;gt;&#039;&#039;&#039; - removed in v13 Gotham&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;showepginfoonselect&amp;gt;&#039;&#039;&#039; - replaced by a GUI setting in v13 Gotham&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;resample&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;forceDirectSound&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;audiophile&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;audiosinkbufferdurationmsec&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;allowtranscode44100&amp;gt;&#039;&#039;&#039;, and &#039;&#039;&#039;&amp;lt;streamsilence&amp;gt;&#039;&#039;&#039; - These were various sub-tags for &amp;lt;audio&amp;gt; that were removed in v13 Gotham and either replaced by GUI settings or were no longer needed.&lt;br /&gt;
* {{anchor|.3Cenableairtunesdebuglog.3E}}&#039;&#039;&#039;&amp;lt;enableairtunesdebuglog&amp;gt;&#039;&#039;&#039; - replaced by a GUI option in v14 Helix&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;videoDisableHi10pMultithreading&amp;gt;&#039;&#039;&#039; - renamed to &amp;lt;disableswmultithreading&amp;gt; in v14 Helix&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;hideallitems&amp;gt;&#039;&#039;&#039; - For both the &amp;lt;code&amp;gt;&amp;lt;videolibrary&amp;gt;&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;&amp;lt;musiclibrary&amp;gt;&amp;lt;/code&amp;gt; sections, this is replaced by a GUI option in v15 Isengard&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;SmallStepBackSeconds&amp;gt;&#039;&#039;&#039; - In v15 the &amp;lt;code&amp;gt;SmallStepBack&amp;lt;/code&amp;gt; [[Action_IDs]] has been replaced by &amp;lt;code&amp;gt;seek(-7)&amp;lt;/code&amp;gt; in default keymaps. See &#039;&#039;&#039;[[skip steps]]&#039;&#039;&#039; for details. When the original &amp;lt;code&amp;gt;SmallStepBack&amp;lt;/code&amp;gt; action ID is used it defaults to the first backwards [[skip steps|additive seeking value]].&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;timeseekforward&amp;gt;/&amp;lt;timeseekbackward&amp;gt;&#039;&#039;&#039; - In v15 these tags are replaced by GUI options via [[skip steps|additive seeking]], which is configured in the GUI. See &#039;&#039;&#039;[[skip steps]]&#039;&#039;&#039; for details.&lt;br /&gt;
* {{anchor|.3Ckaraoke.3E}}&#039;&#039;&#039;&amp;lt;karaoke&amp;gt;&#039;&#039;&#039; - In v16 all of the karaoke features in Kodi were removed.&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;useddsfanart&amp;gt;&#039;&#039;&#039; - removed in v17 Krypton.&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;cachemembuffersize&amp;gt;&#039;&#039;&#039; and &#039;&#039;&#039;&amp;lt;readbufferfactor&amp;gt;&#039;&#039;&#039; - In v17 &#039;&#039;&#039;&amp;lt;cachemembuffersize&amp;gt;&#039;&#039;&#039; is renamed to &#039;&#039;&#039;&amp;lt;memorysize&amp;gt;&#039;&#039;&#039; and &amp;lt;code&amp;gt;&amp;lt;readbufferfactor&amp;gt;&amp;lt;/code&amp;gt; is renamed to &amp;lt;code&amp;gt;&amp;lt;readfactor&amp;gt;&amp;lt;/code&amp;gt;. In addition, all three buffer related settings in &amp;lt;network&amp;gt; are moved out of &amp;lt;network&amp;gt; and into a new &amp;lt;cache&amp;gt; parent tag.&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;minvideocachelevel&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;minaudiocachelevel&amp;gt;&#039;&#039;&#039;, and &#039;&#039;&#039;&amp;lt;cacheindvdplayer&amp;gt;&#039;&#039;&#039; have been removed in v17.&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;useffmpegvda&amp;gt;&#039;&#039;&#039; - Tag was only used for development testing. Removed in v17.&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;nofliptimeout&amp;gt;&#039;&#039;&#039; - Removed in v17&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;blackbarcolour&amp;gt;&#039;&#039;&#039; - Removed in v17 (maybe?)&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;disableswmultithreading&amp;gt;&#039;&#039;&#039; - Removed in v17 (maybe?)&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;controllerdeadzone&amp;gt;&#039;&#039;&#039; - Removed in v17&lt;br /&gt;
* {{anchor|.3Cmeasurerefreshrate.3E}}&#039;&#039;&#039;&amp;lt;measurerefreshrate&amp;gt;&#039;&#039;&#039; - Removed in v17 or v18?&lt;br /&gt;
* {{anchor|.3Cmyth.3E}}&#039;&#039;&#039;&amp;lt;myth&amp;gt;&#039;&#039;&#039; - Removed sometime between v16 to v18&lt;br /&gt;
* {{anchor|.3Ctuxbox.3E}}&#039;&#039;&#039;&amp;lt;tuxbox&amp;gt;&#039;&#039;&#039; - Removed&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;backgroundupdate&amp;gt;&#039;&#039;&#039; - Removed&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;hideemptyseries&amp;gt;&#039;&#039;&#039; - Replaced by a GUI option.&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;mymovies&amp;gt;&#039;&#039;&#039; and child tag &#039;&#039;&#039;&amp;lt;categoriestogenres&amp;gt;&#039;&#039;&#039; - Removed&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;albumssortbyartistthenyear&#039;&#039;&#039;&amp;gt; - Removed&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;albumformatright&amp;gt;&#039;&#039;&#039; - Removed&lt;br /&gt;
* {{anchor|.3Cremoterepeat.3E}}&#039;&#039;&#039;&amp;lt;remoterepeat&amp;gt;&#039;&#039;&#039; - Removed&lt;br /&gt;
* {{anchor|.3Callowd3d9ex.3E}}&#039;&#039;&#039;&amp;lt;allowd3d9ex&amp;gt;&#039;&#039;&#039; and {{anchor|.3Cforced3d9ex.3E}}&#039;&#039;&#039;&amp;lt;forced3d9ex&amp;gt;&#039;&#039;&#039; - Removed sometime between v16 to v18&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;lingertime&amp;gt;&#039;&#039;&#039; - Replaced by a GUI setting in v18&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;forcevaapienabled&amp;gt;&#039;&#039;&#039; - Removed in v18&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;dxvaallowhqscaling&amp;gt;&#039;&#039;&#039; - Removed in v18 &amp;lt;ref&amp;gt;https://github.com/xbmc/xbmc/pull/15466&amp;lt;/ref&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;promptfulltagscan&amp;gt;false&amp;lt;/promptfulltagscan&amp;gt;&#039;&#039;&#039; Removed in v18. Now automatically asked each time a scan is conducted.&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;omxdecodestartwithvalidframe&amp;gt;&#039;&#039;&#039; - This tag is only in some Raspberry Pi specific distributions, such as OpenELEC. As of March 2015, this tag has not been merged into &amp;quot;vanilla&amp;quot; Kodi builds&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;musicthumbs&amp;gt;&#039;&#039;&#039; Replaced in v19 by the GUI setting &#039;&#039;&#039;Thumbnail image files&#039;&#039;&#039; found in Media -&amp;gt; Music&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;artistextraart&amp;gt;&#039;&#039;&#039; Replaced in v19 by the GUI setting &#039;&#039;&#039;Artist art types whitelist&#039;&#039;&#039; found in Media -&amp;gt; Music&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;albumextraart&amp;gt;&#039;&#039;&#039; Replaced in v19 by the GUI setting &#039;&#039;&#039;Album art types whitelist&#039;&#039;&#039; found in Media -&amp;gt; Music&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;episodeextraart&amp;gt;&#039;&#039;&#039; Replaced in v19 by the GUI setting &#039;&#039;&#039;Episode art types whitelist&#039;&#039;&#039; found in Media -&amp;gt; Videos&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;tvshowextraart&amp;gt;&#039;&#039;&#039; Replaced in v19 by the GUI setting &#039;&#039;&#039;TV show art types whitelist&#039;&#039;&#039; found in Media -&amp;gt; Videos&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;tvseasonextraart&amp;gt;&#039;&#039;&#039; Replaced in v19 by the GUI setting &#039;&#039;&#039;TV show art types whitelist&#039;&#039;&#039; found in Media -&amp;gt; Videos&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;movieextraart&amp;gt;&#039;&#039;&#039; Replaced in v19 by the GUI setting &#039;&#039;&#039;Movie art types whitelist&#039;&#039;&#039; found in Media -&amp;gt; Videos&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;moviesetextraart&amp;gt;&#039;&#039;&#039; Replaced in v19 by the GUI setting &#039;&#039;&#039;Movie art types whitelist&#039;&#039;&#039; found in Media -&amp;gt; Videos&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;musicvideoextraart&amp;gt;&#039;&#039;&#039; Replaced in v19 by the GUI setting &#039;&#039;&#039;Music video art types whitelist&#039;&#039;&#039; found in Media -&amp;gt; Videos&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;fanart&amp;gt;&#039;&#039;&#039; Removed in v19&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;assfixedworks&amp;gt;&#039;&#039;&#039; Removed in v20&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;try10bitoutput&amp;gt;&#039;&#039;&#039; Removed in v20 and replaced with [[Settings/System/Display#Use_10_bit_for_SDR|Use 10 bit for SDR]] setting &amp;lt;ref&amp;gt;https://github.com/xbmc/xbmc/pull/20014&amp;lt;/ref&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;enablehighqualityhwscalers&amp;gt;&#039;&#039;&#039; Removed in v20 &amp;lt;ref&amp;gt;https://github.com/xbmc/xbmc/pull/21537&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= guisettings.xml Setting Conversion =&lt;br /&gt;
It is possible to convert settings found in the &#039;&#039;&#039;[[Settings]]&#039;&#039;&#039; &#039;&#039;(guisettings.xml)&#039;&#039; pages of {{kodi}} into entries for the advancedsettings.xml file.&lt;br /&gt;
&lt;br /&gt;
When a setting from the guisettings.xml is added to the advancedsettings.xml file, it will override the existing guisettings.xml values and the setting will be removed from the settings pages.&lt;br /&gt;
&lt;br /&gt;
Why would I need to do this?&lt;br /&gt;
* You set up multiple devices and then need to individually change settings and preferences on each device. Using this conversion method, you save those settings in the advancedsettings.xml file and simply add the file to each device&lt;br /&gt;
* You need to hide settings to prevent those settings from being modified&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To convert a guisetting to advancedsettings.xml follow these steps:&lt;br /&gt;
# In the {{kodi}} settings pages, adjust the setting(s) to your preference.&lt;br /&gt;
# Back out of the settings pages to the main menu, which forces {{kodi}} to save the adjusted settings to the guisettings.xml file&lt;br /&gt;
# Locate the guisettings.xml file in the [[Userdata]] folder and open it&lt;br /&gt;
# Locate the setting(s) to be converted. The list can be overwhelming so make use of the Search feature of whichever editor you are using&lt;br /&gt;
# Using the following setting as an example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;setting id=&amp;quot;videolibrary.showemptytvshows&amp;quot;&amp;gt;true&amp;lt;/setting&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
: Breaking down the string:&lt;br /&gt;
::&#039;&#039;&#039;videolibrary&#039;&#039;&#039;- parent tag&lt;br /&gt;
::&#039;&#039;&#039;showemptytvshows&#039;&#039;&#039;- child tag&lt;br /&gt;
::&#039;&#039;&#039;true&#039;&#039;&#039;- value&lt;br /&gt;
: The conversion is as follows and place this in the advancedsettings.xml file&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;advancedsettings version=&amp;quot;1.0&amp;quot;&amp;gt;&lt;br /&gt;
     &amp;lt;videolibrary&amp;gt;&lt;br /&gt;
          &amp;lt;showemptytvshows&amp;gt;true&amp;lt;/showemptytvshows&amp;gt;&lt;br /&gt;
     &amp;lt;/videolibrary&amp;gt;&lt;br /&gt;
&amp;lt;/advancedsettings&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Some parent tags may already be in use in your advancedsettings.xml file. Do not duplicate them, but add the child tag beneath the existing parent tag.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Updated|18}}&lt;br /&gt;
{{DISPLAYTITLE:advancedsettings.xml}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Advanced topics]]&lt;br /&gt;
[[Category:Manual]]&lt;br /&gt;
[[Category:Settings]]&lt;/div&gt;</summary>
		<author><name>Black eagle</name></author>
	</entry>
	<entry>
		<id>https://kodi.wiki/index.php?title=List_of_built-in_functions&amp;diff=243977</id>
		<title>List of built-in functions</title>
		<link rel="alternate" type="text/html" href="https://kodi.wiki/index.php?title=List_of_built-in_functions&amp;diff=243977"/>
		<updated>2023-01-27T13:31:10Z</updated>

		<summary type="html">&lt;p&gt;Black eagle: /* List of sort methods */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{mininav| [[Python development]] {{l2| [[Add-on development]] }} {{l2| [[Skinning]] }} | [[Built-in scripting]] }}&lt;br /&gt;
&amp;lt;section begin=&amp;quot;main content&amp;quot; /&amp;gt;&lt;br /&gt;
Skins can use built-in functions with the &amp;lt;onclick&amp;gt; or &amp;lt;onfocus&amp;gt; tag. Scripts can call built-in functions with &amp;lt;code&amp;gt;xbmc.executebuiltin(function, block)&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The latest up-to-date list of built-in functions can be found in the source code files in [https://github.com/xbmc/xbmc/tree/master/xbmc/interfaces/builtins].&lt;br /&gt;
&lt;br /&gt;
In addition to the following list, for most &amp;lt;onclick&amp;gt; and &amp;lt;onfocus&amp;gt; button actions in the skin you can also use the functions from [[Keyboard.xml]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;poem&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Example:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;onclick&amp;gt;VolumeUp&amp;lt;/onclick&amp;gt;&lt;br /&gt;
&amp;lt;onclick&amp;gt;VolumeDown&amp;lt;/onclick&amp;gt;&lt;br /&gt;
&amp;lt;/poem&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;You can use parameters with all media windows, as can be seen here:&#039;&#039;&#039;&lt;br /&gt;
* [[Opening Windows and Dialogs]]&lt;br /&gt;
&lt;br /&gt;
== List of functions ==&lt;br /&gt;
&amp;lt;section begin=&amp;quot;functions&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Add-on built-in&#039;s ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable sort sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot;&lt;br /&gt;
!  style=&amp;quot;width: 29%&amp;quot;| Function&lt;br /&gt;
!  style=&amp;quot;width: 66%&amp;quot;| Description&lt;br /&gt;
!  style=&amp;quot;width: 5%&amp;quot;| Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Addon.Default.OpenSettings(extensionpoint)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Open a settings dialog for the default addon of the given type (extensionpoint)&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Addon.Default.Set(extensionpoint)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Open a select dialog to allow choosing the default addon of the given type (extensionpoint)&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Addon.OpenSettings(id)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Open a settings dialog for the addon of the given id &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;EnableAddon(id)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Enables the specified plugin/script&lt;br /&gt;
| v19 addition&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;InstallAddon(id)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Will install the addon with the given id.&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;InstallFromZip&amp;lt;/code&amp;gt;&lt;br /&gt;
| Opens the &amp;quot;Install from zip&amp;quot;-dialog if &amp;quot;Unknown sources&amp;quot; is enabled. Prompts the warning message if not.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RunAddon(id)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Runs the specified plugin/script &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RunAppleScript(script[,args]*)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Run the specified AppleScript command &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RunPlugin(plugin)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Runs the plugin. Full path must be specified. Does not work for folder plugins &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RunScript(script[,args]*)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Runs the python script. You must specify the add-on id of the script. As of 2007/02/24, all extra parameters are passed to the script as arguments and can be accessed by python using sys.argv &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;StopScript(id)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Stop the script by ID or path, if running&lt;br /&gt;
| {{nowrap|v12 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;UpdateAddonRepos&amp;lt;/code&amp;gt;&lt;br /&gt;
| Triggers a forced update of enabled add-on repositories. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;UpdateLocalAddons&amp;lt;/code&amp;gt;&lt;br /&gt;
| Triggers a scan of local add-on directories. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Android built-in&#039;s ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable sort sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot;&lt;br /&gt;
!  style=&amp;quot;width: 29%&amp;quot;| Function&lt;br /&gt;
!  style=&amp;quot;width: 66%&amp;quot;| Description&lt;br /&gt;
!  style=&amp;quot;width: 5%&amp;quot;| Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;StartAndroidActivity(package,[intent,dataType,dataURI])&amp;lt;/code&amp;gt;&lt;br /&gt;
| Launch an Android native app with the given package name. Optional parms (in order): intent, dataType, dataURI. example: &amp;lt;nowiki&amp;gt;StartAndroidActivity(com.android.chrome,android.intent.action.VIEW,,http://kodi.tv/)&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| {{nowrap|v13 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Application built-in&#039;s ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable sort sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot;&lt;br /&gt;
!  style=&amp;quot;width: 29%&amp;quot;| Function&lt;br /&gt;
!  style=&amp;quot;width: 66%&amp;quot;| Description&lt;br /&gt;
!  style=&amp;quot;width: 5%&amp;quot;| Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Extract(archive_url[, destination])&amp;lt;/code&amp;gt;&lt;br /&gt;
| Extracts a specified archive to an optionally specified &#039;absolute&#039; path. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Mute&amp;lt;/code&amp;gt;&lt;br /&gt;
| Mutes (or unmutes) the volume. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;NotifyAll(sender, data [, json])&amp;lt;/code&amp;gt;&lt;br /&gt;
| Notify all connected clients&lt;br /&gt;
| {{nowrap|v13 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SetVolume(percent[,showvolumebar])&amp;lt;/code&amp;gt;&lt;br /&gt;
| Sets the volume to the percentage specified. Optionally, show the Volume Dialog in Kodi when setting the volume. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ToggleDebug&amp;lt;/code&amp;gt;&lt;br /&gt;
| Enables/disables debug mode&lt;br /&gt;
| {{nowrap|v12 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ToggleDPMS&amp;lt;/code&amp;gt;&lt;br /&gt;
| Toggle DPMS (VESA Display Power Management Signaling) mode manually &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;WakeOnLan(mac)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Sends the wake-up packet to the broadcast address for the specified MAC address (Format: FF:FF:FF:FF:FF:FF or FF-FF-FF-FF-FF-FF). &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== CEC built-in&#039;s ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable sort sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot;&lt;br /&gt;
!  style=&amp;quot;width: 29%&amp;quot;| Function&lt;br /&gt;
!  style=&amp;quot;width: 66%&amp;quot;| Description&lt;br /&gt;
!  style=&amp;quot;width: 5%&amp;quot;| Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CECActivateSource&amp;lt;/code&amp;gt;&lt;br /&gt;
| Wake up playing device via a CEC peripheral&lt;br /&gt;
| {{nowrap|v13 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CECStandby&amp;lt;/code&amp;gt;&lt;br /&gt;
| Put playing device on standby via a CEC peripheral&lt;br /&gt;
| {{nowrap|v13 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CECToggleState&amp;lt;/code&amp;gt;&lt;br /&gt;
| Toggle state of playing device via a CEC peripheral&lt;br /&gt;
| {{nowrap|v13 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== EPG built-in&#039;s ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable sort sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot;&lt;br /&gt;
!  style=&amp;quot;width: 29%&amp;quot;| Function&lt;br /&gt;
!  style=&amp;quot;width: 66%&amp;quot;| Description&lt;br /&gt;
!  style=&amp;quot;width: 5%&amp;quot;| Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;EpgGridControl(command)&amp;lt;/code&amp;gt;&lt;br /&gt;
| supported commands: firstprogramme  (jump to the first programme) / currentprogramme  (jump to the current programme) / lastprogramme  (jump to the last programme) / selectdate  (jump to the selected date &amp;amp; time) / +XX  (jump XX hours forward) / -XX  (jump XX hours back) / firstchannel  (jump to the first channel) / playingchannel  (jump to the currently playing channel) / lastchannel  (jump to the last channel) / previousgroup  (switch the epg to the previous group) / nextgroup  (switch the epg to the next group) / selectgroup  (select a group)&lt;br /&gt;
| {{nowrap|v19 Addition}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== GUI built-in&#039;s ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable sort sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot;&lt;br /&gt;
!  style=&amp;quot;width: 29%&amp;quot;| Function&lt;br /&gt;
!  style=&amp;quot;width: 66%&amp;quot;| Description&lt;br /&gt;
!  style=&amp;quot;width: 5%&amp;quot;| Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Action(action[,window])&amp;lt;/code&amp;gt;&lt;br /&gt;
| Executes an action (same as in keymap) for the given window or the active window if the parameter window is omitted. The parameter window can either be the window&#039;s id, or in the case of a standard window, the window&#039;s name. See [[Action IDs]] for a list of available actions. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ActivateWindow(window[,dir,return])&amp;lt;/code&amp;gt;&lt;br /&gt;
| Opens the given window. The parameter window can either be the window&#039;s id, or in the case of a standard window, the window&#039;s name. See [[Window IDs]] for a list of window names, and their respective ids. If, furthermore, the window is Music, Video, Pictures, or Program files, then the optional dir parameter specifies which folder Kodi should default to once the window is opened. This must be a source as specified in sources.xml, or a subfolder of a valid source. For some windows (MusicLibrary and VideoLibrary), the return parameter may be specified, which indicates that Kodi should use this folder as the &amp;quot;root&amp;quot; of the level, and thus the &amp;quot;parent directory&amp;quot; action from within this folder will return the user to where they were prior to the window activating. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ActivateWindowAndFocus(id1, id2,item1, id3,item2)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Activate window with id1, first focus control id2 and then focus control id3. if either of the controls is a container, you can specify which item to focus (else, set it to 0).&lt;br /&gt;
| {{nowrap|v12 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;AlarmClock(name,command,[time,silent,loop])&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pops up a dialog asking for the length of time (mm:ss) for the alarm (unless the parameter time is specified), and starts a timer. When the timer runs out, it&#039;ll execute the built-in command (the parameter command) if it is specified, otherwise it&#039;ll pop up an alarm notice. Add silent to hide the alarm notification. Add loop for the alarm to execute the command each time the specified time interval expires. If defining the last optional parameters (silent and loop) both have to be defined for any to take effect. The parameter &amp;quot;time&amp;quot; accepts an integer value (in minutes) or a timestring in the format &amp;quot;hh:mm:ss&amp;quot; or &amp;quot;mm min&amp;quot;.&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CancelAlarm(name[,silent])&amp;lt;/code&amp;gt;&lt;br /&gt;
| Cancel a running alarm. Set silent to true to hide the alarm notification. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ClearProperty(key[,id])&amp;lt;/code&amp;gt;&lt;br /&gt;
| Clears a window property for the current focused window/dialog(key), or the specified window (key,id). &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Dialog.Close(dialog[,force])&amp;lt;/code&amp;gt;&lt;br /&gt;
| Close a dialog. Set force to true to bypass animations. Use (all,true) to close all opened dialogs at once. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;NextChannelGroup&amp;lt;/code&amp;gt;&lt;br /&gt;
| Navigate to the next PVR channel group (in DialogPVRChannelsOSD.xml)&lt;br /&gt;
| {{nowrap|v13 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;NextStereoMode&amp;lt;/code&amp;gt;&lt;br /&gt;
| Changes the stereo mode of the GUI to the next available mode.&lt;br /&gt;
| {{nowrap|v13 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Notification(header,message[,time,image])&amp;lt;/code&amp;gt;&lt;br /&gt;
| Will display a notification dialog with the specified header and message, in addition you can set the length of time it displays in milliseconds and a icon image. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PreviousChannelGroup&amp;lt;/code&amp;gt;&lt;br /&gt;
| Navigate to the previous PVR channel group (in DialogPVRChannelsOSD.xml)&lt;br /&gt;
| {{nowrap|v13 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PreviousStereoMode&amp;lt;/code&amp;gt;&lt;br /&gt;
| Changes the stereo mode of the GUI to the previous available mode.&lt;br /&gt;
| {{nowrap|v13 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RefreshRSS&amp;lt;/code&amp;gt;&lt;br /&gt;
| Reload RSS feeds from RSSFeeds.xml &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ReplaceWindow(window,dir)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Replaces the current window with the given window. This is the same as ActivateWindow() but it doesn&#039;t update the window history list, so when you go back from the new window it will not return to the previous window, rather will return to the previous window&#039;s previous window. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ReplaceWindowAndFocus(id1, id2,item1, id3,item2)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Replace window with id1, first focus control id2 and then focus control id3. if either of the controls is a container, you can specify which item to focus (else, set it to 0).&lt;br /&gt;
| {{nowrap|v13 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Resolution&amp;lt;/code&amp;gt;&lt;br /&gt;
| Change Kodi&#039;s Resolution. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SetGUILanguage(value)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Set GUI Language, &#039;value&#039; is the language file to use. SetGUILanguage(resource.language.de_de)&lt;br /&gt;
| {{nowrap|v13 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SetProperty(key,value[,id])&amp;lt;/code&amp;gt;&lt;br /&gt;
| Sets a window property for the current window (key,value), or the specified window (key,value,id). &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SetStereoMode&amp;lt;/code&amp;gt;&lt;br /&gt;
| Changes the stereo mode of the GUI. Params can be: toggle, next, previous, select, tomono or any of the supported stereomodes (off, split_vertical, split_horizontal, row_interleaved, hardware_based, anaglyph_cyan_red, anaglyph_green_magenta, monoscopic)&lt;br /&gt;
| {{nowrap|v13 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;settingslevelchange&amp;lt;/code&amp;gt;&lt;br /&gt;
| Toggles the visible settings (in SettingsCategory.xml) between &#039;basic&#039;, &#039;standard&#039;, &#039;advanced and &#039;expert&#039;&lt;br /&gt;
| {{nowrap|v13 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;TakeScreenshot([filenameandpath,sync])&amp;lt;/code&amp;gt;&lt;br /&gt;
| Takes a Screenshot. You can optionally specify the filename (including the path). Note: only .png files are supported. Add &amp;quot;sync&amp;quot; parameter to run synchronously (slow).&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ToggleDirtyRegionVisualization&amp;lt;/code&amp;gt;&lt;br /&gt;
| makes dirty regions visible for debugging proposes.&lt;br /&gt;
| {{nowrap|v16 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ToggleStereoMode&amp;lt;/code&amp;gt;&lt;br /&gt;
| Toggle the stereoscopic mode of the GUI (on/off).&lt;br /&gt;
| {{nowrap|v13 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== GUI container built-in&#039;s ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable sort sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot;&lt;br /&gt;
!  style=&amp;quot;width: 29%&amp;quot;| Function&lt;br /&gt;
!  style=&amp;quot;width: 66%&amp;quot;| Description&lt;br /&gt;
!  style=&amp;quot;width: 5%&amp;quot;| Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container.NextSortMethod&amp;lt;/code&amp;gt;&lt;br /&gt;
| Change to the next sort method. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container.NextViewMode&amp;lt;/code&amp;gt;&lt;br /&gt;
| Select the next view mode. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container.PreviousSortMethod&amp;lt;/code&amp;gt;&lt;br /&gt;
| Change to the previous sort method. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container.PreviousViewMode&amp;lt;/code&amp;gt;&lt;br /&gt;
| Select the previous view mode. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container.Refresh&amp;lt;/code&amp;gt;&lt;br /&gt;
| Refresh current listing. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container.SetSortMethod(id)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Change to the specified sort method. (For list of ID&#039;s see [[https://kodi.wiki/view/List_of_built-in_functions#List_of_sort_methods list of sort methods]]) &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container.SetViewMode(id)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Set the current view mode (list, icons etc.) to the given container id. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container.SetSortDirection&amp;lt;/code&amp;gt;&lt;br /&gt;
| Toggle the sort direction. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container.Update&amp;lt;/code&amp;gt;&lt;br /&gt;
| Update current listing. Send Container.Update(path,replace) to reset the path history. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== GUI control built-in&#039;s ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable sort sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot;&lt;br /&gt;
!  style=&amp;quot;width: 29%&amp;quot;| Function&lt;br /&gt;
!  style=&amp;quot;width: 66%&amp;quot;| Description&lt;br /&gt;
!  style=&amp;quot;width: 5%&amp;quot;| Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Control.Message(id,message,[windowid])&amp;lt;/code&amp;gt;&lt;br /&gt;
| Sends a given message to a control in a given window (or active window if omitted). Messages can be movedown, moveup, pagedown, pageup, click. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Control.Move(id,offset)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Will make a Container with the &amp;quot;id&amp;quot; specified in the command move focus by &amp;quot;offset&amp;quot;. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Control.SetFocus(id,position[,absolute])&amp;lt;/code&amp;gt;&lt;br /&gt;
| Will make a list with the &amp;quot;id&amp;quot; specified in the command gain focus at &amp;quot;position&amp;quot; number in its list. Set absolute to focus the first listitem of a container instead of the first visible listitem. Alias SetFocus(id,position) &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PageDown&amp;lt;/code&amp;gt;&lt;br /&gt;
| Send a page down event to the pagecontrol with given id. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PageUp&amp;lt;/code&amp;gt;&lt;br /&gt;
| Send a page up event to the pagecontrol with given id. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SendClick(windowid,id)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Sends a click to a control in a given window (or active window if omitted). &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SetFocus(id,position[,absolute])&amp;lt;/code&amp;gt;&lt;br /&gt;
| Will make a list with the &amp;quot;id&amp;quot; specified in the command gain focus at &amp;quot;position&amp;quot; number in its list. Set absolute to focus the first listitem of a container instead of the first visible listitem. Alias Control.SetFocus(id,position) &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Library built-in&#039;s ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable sort sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot;&lt;br /&gt;
!  style=&amp;quot;width: 29%&amp;quot;| Function&lt;br /&gt;
!  style=&amp;quot;width: 66%&amp;quot;| Description&lt;br /&gt;
!  style=&amp;quot;width: 5%&amp;quot;| Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CleanLibrary(database)&amp;lt;/code&amp;gt;&lt;br /&gt;
| This funtion will perform a number of &#039;cleanup&#039; tasks on your video database and can be run if you have moved, deleted or renamed files. Takes either &amp;quot;video&amp;quot; or &amp;quot;music&amp;quot; as a parameter to begin cleaning the corresponding database. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;exportlibrary(music,false,filepath)&amp;lt;/code&amp;gt;&lt;br /&gt;
| The music library will be exported to a single file stored at filepath location. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;exportlibrary(video,true,thumbs,overwrite,actorthumbs)&amp;lt;/code&amp;gt;&lt;br /&gt;
| The video library is exported to multiple files with the given options. Here thumbs, overwrite and actorthumbs are boolean values (true or false). &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;UpdateLibrary(database,[path])&amp;lt;/code&amp;gt;&lt;br /&gt;
| Takes either &amp;quot;video&amp;quot; or &amp;quot;music&amp;quot; as a parameter to begin updating the corresponding database. For &amp;quot;video&amp;quot; you can additionally specify a specific path to be scanned. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;VideoLibrary.Search&amp;lt;/code&amp;gt;&lt;br /&gt;
| Brings up a search dialog which will search the library &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Optical container built-in&#039;s ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable sort sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot;&lt;br /&gt;
!  style=&amp;quot;width: 29%&amp;quot;| Function&lt;br /&gt;
!  style=&amp;quot;width: 66%&amp;quot;| Description&lt;br /&gt;
!  style=&amp;quot;width: 5%&amp;quot;| Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;EjectTray()&amp;lt;/code&amp;gt;&lt;br /&gt;
| Either opens or closes the DVD tray, depending on its current state &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RipCD&amp;lt;/code&amp;gt;&lt;br /&gt;
| Will rip the inserted CD from the DVD-ROM drive. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Picture built-in&#039;s ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable sort sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot;&lt;br /&gt;
!  style=&amp;quot;width: 29%&amp;quot;| Function&lt;br /&gt;
!  style=&amp;quot;width: 66%&amp;quot;| Description&lt;br /&gt;
!  style=&amp;quot;width: 5%&amp;quot;| Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RecursiveSlideShow(dir)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Run a slideshow from the specified directory, including all subdirs &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ShowPicture(picture)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Show a picture by its file path/url.&lt;br /&gt;
| {{nowrap|v13 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SlideShow(dir[,recursive][,[not]random][,pause][,beginslide=&amp;quot;/path/to/start/slide.jpg&amp;quot;])&amp;lt;/code&amp;gt;&lt;br /&gt;
| Starts a slideshow of pictures in the folder dir. Optional parameters are &#039;recursive&#039;, &#039;random&#039; or &#039;notrandom&#039;, &#039;pause&#039; and &#039;beginslide=&amp;quot;/path/to/some/image.jpg&amp;quot;&#039; parameters. The &amp;quot;recursive&amp;quot; parameter starts a recursive slideshow, adding images from sub-folders. The &amp;quot;random&amp;quot; and &amp;quot;notrandom&amp;quot; parameters override the Randomize setting found in the pictures media window. The &amp;quot;pause&amp;quot; parameter will start the slideshow paused. &amp;quot;beginslide&amp;quot; will start the slideshow with the specified image.&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Player built-in&#039;s ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable sort sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot;&lt;br /&gt;
!  style=&amp;quot;width: 29%&amp;quot;| Function&lt;br /&gt;
!  style=&amp;quot;width: 66%&amp;quot;| Description&lt;br /&gt;
!  style=&amp;quot;width: 5%&amp;quot;| Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PlayDisc(param)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Will play the inserted CD or DVD media from the DVD-ROM drive. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PlayerControl(command)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Allows control of music and videos. The command may be one of Play, Stop, Forward, Rewind, Next, Previous, BigSkipForward, BigSkipBackward, SmallSkipForward, SmallSkipBackward, FrameAdvance(#), TempoUp, TempoDown, Tempo(value), Random, RandomOn, RandomOff, Repeat, RepeatOne, RepeatAll, RepeatOff, Partymode(music) or Partymode(video) or Partymode(path to .xsp file) or Reset. &lt;br /&gt;
Play will either pause, resume, or stop ffwding or rewinding. Random toggles random playback and Repeat cycles through the repeat modes (these both take an optional second parameter, Notify, that notifies the user of the new state). Partymode(music/video) toggles the appropriate partymode, defaults to music if no parameter is given, besides the default music or video partymode you can also pass a path to a custom smartplaylist (.xsp) as parameter. Reset only applies to games and will reset the currently playing game.&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PlayerResolutionSelect&amp;lt;/code&amp;gt;&lt;br /&gt;
| Select a different resolution&lt;br /&gt;
| v18&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Playlist.Clear&amp;lt;/code&amp;gt;&lt;br /&gt;
| Clear the current playlist &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Playlist.PlayOffset&amp;lt;/code&amp;gt;&lt;br /&gt;
| Start playing from a particular offset in the playlist &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PlayMedia(mediaPath[,isdir][,1][,playoffset=xx][,resume][,noresume][,playlist_type_hint=x])&amp;lt;/code&amp;gt;&lt;br /&gt;
| Plays the media. This can be a playlist, music, or video file, directory, plugin or a url. The optional parameter &amp;quot;,isdir&amp;quot; can be used for playing a directory. &amp;quot;,1&amp;quot; will start the media without switching to fullscreen. If media is a playlist, you can use playoffset=xx where xx is the position to start playback from. Set &amp;quot;resume&amp;quot; to force resuming. Set &amp;quot;noresume&amp;quot; to force not resuming.&lt;br /&gt;
&lt;br /&gt;
{{note|Following parameters are available from Kodi v20.}}&lt;br /&gt;
If media is a playlist (e.g. STRM), you can set the type of playlist with &amp;quot;playlist_type_hint=x&amp;quot; where x can be 0 for music playlist or 1 for video playlist, if not set will be used music playlist.&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PlayWith()&amp;lt;/code&amp;gt;&lt;br /&gt;
| Play the selected item with the specified player core. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Seek(seconds)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Seeks to the specified relative amount of seconds within the current playing media. A negative value will seek backward and a positive value forward.&lt;br /&gt;
| {{nowrap|v15 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Profile built-in&#039;s ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable sort sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot;&lt;br /&gt;
!  style=&amp;quot;width: 29%&amp;quot;| Function&lt;br /&gt;
!  style=&amp;quot;width: 66%&amp;quot;| Description&lt;br /&gt;
!  style=&amp;quot;width: 5%&amp;quot;| Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;LoadProfile(profilename,[prompt])&amp;lt;/code&amp;gt;&lt;br /&gt;
| Load the specified profile. If prompt is not specified, and a password would be required for the requested profile, this command will silently fail. If promp&#039; is specified and a password is required, a password dialog will be shown. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Mastermode&amp;lt;/code&amp;gt;&lt;br /&gt;
| Runs Kodi in master mode &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.LogOff&amp;lt;/code&amp;gt;&lt;br /&gt;
| Log off current user. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== PVR built-in&#039;s ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable sort sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot;&lt;br /&gt;
!  style=&amp;quot;width: 29%&amp;quot;| Function&lt;br /&gt;
!  style=&amp;quot;width: 66%&amp;quot;| Description&lt;br /&gt;
!  style=&amp;quot;width: 5%&amp;quot;| Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PVR.SearchMissingChannelIcons&amp;lt;/code&amp;gt;&lt;br /&gt;
| Will start a search for missing channel icons&lt;br /&gt;
| {{nowrap|v16 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PVR.ToggleRecordPlayingChannel&amp;lt;/code&amp;gt;&lt;br /&gt;
| Will toggle recording on playing channel, if any &lt;br /&gt;
| v18&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PVR.SeekPercentage&amp;lt;/code&amp;gt;&lt;br /&gt;
| Performs a seek to the given percentage in timeshift buffer, if timeshifting is supported &lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Skin built-in&#039;s ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable sort sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot;&lt;br /&gt;
!  style=&amp;quot;width: 29%&amp;quot;| Function&lt;br /&gt;
!  style=&amp;quot;width: 66%&amp;quot;| Description&lt;br /&gt;
!  style=&amp;quot;width: 5%&amp;quot;| Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ReloadSkin()&amp;lt;/code&amp;gt;&lt;br /&gt;
| Reloads the current skin – useful for Skinners to use after they upload modified skin files (saves power cycling) &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Skin.Reset(setting)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Resets the skin setting ?setting?. If ?setting? is a bool setting (i.e. set via SetBool or ToggleSetting) then the setting is reset to false. If ?setting? is a string (Set via SetString, SetImage, or SetPath) then it is set to empty. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Skin.ResetSettings&amp;lt;/code&amp;gt;&lt;br /&gt;
| Resets all the above skin settings to their defaults (toggles all set to false, strings all set to empty.) &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Skin.SelectBool(header, label1&amp;amp;#124;setting1, label2&amp;amp;#124;setting2)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pops up select dialog to select between multiple skin setting options. Skin.SelectBool(424, 31411&amp;amp;#124;RecentWidget, 31412&amp;amp;#124;RandomWidget, 31413&amp;amp;#124;InProgressWidget)&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Skin.SetAddon(string,type)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pops up a select dialog and allows the user to select an add-on of the given type to be used elsewhere in the skin via the info tag Skin.String(string). The most common types are xbmc.addon.video, xbmc.addon.audio, xbmc.addon.image, xbmc.addon.executable and kodi.gameclient. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Skin.SetBool(setting)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Sets the skin setting ?setting? to true, for use with the conditional visibility tags containing Skin.HasSetting(setting). The settings are saved per-skin in settings.xml just like all the other Kodi settings. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Skin.SetFile(string,mask,folderpath)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pops up a folder browser and allows the user to select a file off the hard-disk to be used else where in the skin via the info tag Skin.String(string). If the mask parameter is specified, then the file browser will only search for the extension specified (.avi,.mp3,.m3u,.png,.bmp,etc.,etc.). To use multiple extensions separate them using &amp;quot;&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;&amp;quot; (minus quotes). If the folderpath parameter is set the file browser will start in that folder. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Skin.SetImage(string[,value,path])&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pops up a file browser and allows the user to select an image file to be used in an image control elsewhere in the skin via the info tag Skin.String(string). If the value parameter is specified, then the file browser dialog does not pop up, and the image path is set directly. the path option allows you to open the file browser in the specified folder. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Skin.SetNumeric(numeric[,value])&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pops up a keyboard dialog and allows the user to input a numerical. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Skin.SetPath(string[,folderpath])&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pops up a folder browser and allows the user to select a folder of images to be used in a multi image control else where in the skin via the info tag Skin.String(string). If the folderpath parameter is set the file browser will start in that folder. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Skin.SetString(string[,value])&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pops up a keyboard dialog and allows the user to input a string which can be used in a label control elsewhere in the skin via the info tag Skin.String(string). If the value parameter is specified, then the keyboard dialog does not pop up, and the string is set directly. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Skin.Theme(1)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Cycles the skin theme. Skin.Theme(-1) will go backwards. &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Skin.ToggleDebug&amp;lt;/code&amp;gt;&lt;br /&gt;
| Toggles skin debug info on/off &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Skin.ToggleSetting(setting)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Toggles the skin setting ?setting? for use with conditional visibility tags containing Skin.HasSetting(setting). &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;UnloadSkin()&amp;lt;/code&amp;gt;&lt;br /&gt;
| Unloads the current skin &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== System built-in&#039;s ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable sort sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot;&lt;br /&gt;
!  style=&amp;quot;width: 29%&amp;quot;| Function&lt;br /&gt;
!  style=&amp;quot;width: 66%&amp;quot;| Description&lt;br /&gt;
!  style=&amp;quot;width: 5%&amp;quot;| Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ActivateScreensaver&amp;lt;/code&amp;gt;&lt;br /&gt;
| Starts the screensaver&lt;br /&gt;
| {{nowrap|v13 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Hibernate&amp;lt;/code&amp;gt;&lt;br /&gt;
| Hibernate (S4) the System &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;InhibitIdleShutdown(true/false)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Prevent the system to shutdown on idle.&lt;br /&gt;
| {{nowrap|v12 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;InhibitScreensaver(true/false)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Prevent activation of the screensaver.&lt;br /&gt;
| {{nowrap|v19 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Minimize&amp;lt;/code&amp;gt;&lt;br /&gt;
| Minimizes Kodi &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Powerdown&amp;lt;/code&amp;gt;&lt;br /&gt;
| Powerdown system &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Quit&amp;lt;/code&amp;gt;&lt;br /&gt;
| Quits Kodi &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Reboot&amp;lt;/code&amp;gt;&lt;br /&gt;
| Cold reboots the system (power cycle) &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Reset&amp;lt;/code&amp;gt;&lt;br /&gt;
| Reset the system (same as reboot) &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RestartApp&amp;lt;/code&amp;gt;&lt;br /&gt;
| Restarts Kodi (only implemented under Windows and Linux) &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ShutDown&amp;lt;/code&amp;gt;&lt;br /&gt;
| Trigger default Shutdown action defined in System Settings &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Suspend&amp;lt;/code&amp;gt;&lt;br /&gt;
| Suspends (S3 / S1 depending on bios setting) the System &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.Exec(exec)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Execute shell commands. The full path to the script has to be placed inside the parentheses.&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.ExecWait(exec)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Execute shell commands and freezes Kodi until shell is closed. As well as for &amp;quot;System.Exec(exec)&amp;quot;, the full path to the script has to be placed inside the parentheses.&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Weather built-in&#039;s ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable sort sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot;&lt;br /&gt;
!  style=&amp;quot;width: 29%&amp;quot;| Function&lt;br /&gt;
!  style=&amp;quot;width: 66%&amp;quot;| Description&lt;br /&gt;
!  style=&amp;quot;width: 5%&amp;quot;| Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Weather.LocationNext&amp;lt;/code&amp;gt;&lt;br /&gt;
| Switch to next weather location &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Weather.LocationPrevious&amp;lt;/code&amp;gt;&lt;br /&gt;
| Switch to previous weather location &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Weather.LocationSet&amp;lt;/code&amp;gt;&lt;br /&gt;
| Switch to given weather location (parameter can be 1-3) &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Weather.Refresh&amp;lt;/code&amp;gt;&lt;br /&gt;
| Force weather data refresh&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;section end=&amp;quot;functions&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;section end=&amp;quot;main content&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Removed functions ==&lt;br /&gt;
* &amp;lt;code&amp;gt;LastFM.Love&amp;lt;/code&amp;gt; - Removed in v13 Gotham&lt;br /&gt;
* &amp;lt;code&amp;gt;LastFM.Ban&amp;lt;/code&amp;gt; - Removed in v13 Gotham&lt;br /&gt;
* &amp;lt;code&amp;gt;LCD.Suspend&amp;lt;/code&amp;gt; - Removed in v13 Gotham&lt;br /&gt;
* &amp;lt;code&amp;gt;LCD.Resume&amp;lt;/code&amp;gt; - Removed in v13 Gotham&lt;br /&gt;
* &amp;lt;code&amp;gt;AllowIdleShutdown&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;Help&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;LIRC.Send(command)&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;LIRC.Start&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;LIRC.Stop&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;StartPVRManager&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;StereoModeToMono&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;StopPVRManager&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== List of sort methods ==&lt;br /&gt;
These ID&#039;s can be used with the Container.SetSortMethod(id) function as listed [https://github.com/xbmc/xbmc/blob/75b31098a8800da653b373cd99a025b483029cfc/xbmc/utils/SortUtils.h#L49-L164 here]:&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
! ID&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt;&lt;br /&gt;
| Name&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;2&amp;lt;/code&amp;gt;&lt;br /&gt;
| Date&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;3&amp;lt;/code&amp;gt;&lt;br /&gt;
| Size&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;4&amp;lt;/code&amp;gt;&lt;br /&gt;
| File&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;5&amp;lt;/code&amp;gt;&lt;br /&gt;
| Path&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;6&amp;lt;/code&amp;gt;&lt;br /&gt;
| DriveType&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;7&amp;lt;/code&amp;gt;&lt;br /&gt;
| Title&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;8&amp;lt;/code&amp;gt;&lt;br /&gt;
| TrackNumber&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;9&amp;lt;/code&amp;gt;&lt;br /&gt;
| Time&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;10&amp;lt;/code&amp;gt;&lt;br /&gt;
| Artist&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;11&amp;lt;/code&amp;gt;&lt;br /&gt;
| ArtistThenYear&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;12&amp;lt;/code&amp;gt;&lt;br /&gt;
| Album&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;13&amp;lt;/code&amp;gt;&lt;br /&gt;
| AlbumType&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;14&amp;lt;/code&amp;gt;&lt;br /&gt;
| Genre&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;15&amp;lt;/code&amp;gt;&lt;br /&gt;
| Country&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;16&amp;lt;/code&amp;gt;&lt;br /&gt;
| Year&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;17&amp;lt;/code&amp;gt;&lt;br /&gt;
| Rating&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;18&amp;lt;/code&amp;gt;&lt;br /&gt;
| UserRating&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;19&amp;lt;/code&amp;gt;&lt;br /&gt;
| Votes&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;20&amp;lt;/code&amp;gt;&lt;br /&gt;
| Top250&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;21&amp;lt;/code&amp;gt;&lt;br /&gt;
| ProgramCount&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;22&amp;lt;/code&amp;gt;&lt;br /&gt;
| PlaylistOrder&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;23&amp;lt;/code&amp;gt;&lt;br /&gt;
| EpisodeNumber&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;24&amp;lt;/code&amp;gt;&lt;br /&gt;
| Season&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;25&amp;lt;/code&amp;gt;&lt;br /&gt;
| NumberOfEpisodes&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;26&amp;lt;/code&amp;gt;&lt;br /&gt;
| NumberOfWatchedEpisodes&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;27&amp;lt;/code&amp;gt;&lt;br /&gt;
| TvShowStatus&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;28&amp;lt;/code&amp;gt;&lt;br /&gt;
| TvShowTitle&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;29&amp;lt;/code&amp;gt;&lt;br /&gt;
| SortTitle&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;30&amp;lt;/code&amp;gt;&lt;br /&gt;
| ProductionCode&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;31&amp;lt;/code&amp;gt;&lt;br /&gt;
| MPAA&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;32&amp;lt;/code&amp;gt;&lt;br /&gt;
| VideoResolution&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;33&amp;lt;/code&amp;gt;&lt;br /&gt;
| VideoCodec&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;34&amp;lt;/code&amp;gt;&lt;br /&gt;
| VideoAspectRatio&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;35&amp;lt;/code&amp;gt;&lt;br /&gt;
| AudioChannels&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;36&amp;lt;/code&amp;gt;&lt;br /&gt;
| AudioCodec&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;37&amp;lt;/code&amp;gt;&lt;br /&gt;
| AudioLanguage&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;38&amp;lt;/code&amp;gt;&lt;br /&gt;
| SubtitleLanguage&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;39&amp;lt;/code&amp;gt;&lt;br /&gt;
| Studio&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;40&amp;lt;/code&amp;gt;&lt;br /&gt;
| DateAdded&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;41&amp;lt;/code&amp;gt;&lt;br /&gt;
| LastPlayed&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;42&amp;lt;/code&amp;gt;&lt;br /&gt;
| Playcount&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;43&amp;lt;/code&amp;gt;&lt;br /&gt;
| Listeners&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;44&amp;lt;/code&amp;gt;&lt;br /&gt;
| Bitrate&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;45&amp;lt;/code&amp;gt;&lt;br /&gt;
| Random&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;46&amp;lt;/code&amp;gt;&lt;br /&gt;
| Channel&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;47&amp;lt;/code&amp;gt;&lt;br /&gt;
| ChannelNumber&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;48&amp;lt;/code&amp;gt;	&lt;br /&gt;
| DateTaken&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;49&amp;lt;/code&amp;gt;	&lt;br /&gt;
| Relevance&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;50&amp;lt;/code&amp;gt;	&lt;br /&gt;
| InstallDate&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;51&amp;lt;/code&amp;gt;	&lt;br /&gt;
| LastUpdated&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;52&amp;lt;/code&amp;gt;	&lt;br /&gt;
| LastUsed&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;53&amp;lt;/code&amp;gt;&lt;br /&gt;
| ClientChannelOrder&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;54&amp;lt;/code&amp;gt;&lt;br /&gt;
| TotalDiscs&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;55&amp;lt;/code&amp;gt;&lt;br /&gt;
| OriginalDate&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;56&amp;lt;/code&amp;gt;&lt;br /&gt;
| BPM&lt;br /&gt;
|}&lt;br /&gt;
{{updated|18}}&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
* [[Action IDs]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Python]]&lt;br /&gt;
[[Category:Add-on development]]&lt;br /&gt;
[[Category:Skin development]]&lt;/div&gt;</summary>
		<author><name>Black eagle</name></author>
	</entry>
	<entry>
		<id>https://kodi.wiki/index.php?title=Databases&amp;diff=241155</id>
		<title>Databases</title>
		<link rel="alternate" type="text/html" href="https://kodi.wiki/index.php?title=Databases&amp;diff=241155"/>
		<updated>2022-01-08T21:12:02Z</updated>

		<summary type="html">&lt;p&gt;Black eagle: /* Database Versions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:DatabasesNavBox}}&lt;br /&gt;
{{mininav| [[Development]] {{l2| [[Userdata]] }} }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&amp;lt;section begin=&amp;quot;intro&amp;quot; /&amp;gt;Kodi uses [http://www.sqlite.org/ SQLite], an open source light-weight SQL database-engine, to store all the library, add-on, EPG, textures and PVR related data using a number of specific databases. By default, the database files (*.db) are stored in the &#039;&#039;&#039;&#039;&#039;[[Kodi data folder]]\[[Userdata]]&#039;&#039;&#039;&#039;&#039; folder, specifically in \Database\.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Using the Databases =&lt;br /&gt;
The databases are automatically maintained by {{Kodi}}. It is recommended that {{kodi}} users do not access the database without good working knowledge of relational databases and SQL.&lt;br /&gt;
&lt;br /&gt;
Database software is required to access the SQL databases. &#039;&#039;&#039;[https://sqlitebrowser.org/ DB Browser for SQLite]&#039;&#039;&#039; is available for Windows, macOS, Linux and FreeBSD.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Accessing the Databases with Kodi Python =&lt;br /&gt;
Many Python plugins (and some scripts) can use the information in the Kodi database to offer users additional convenience and functionality. The easiest way to access the databases via Kodi Python is using &#039;&#039;&#039;[[JSON-RPC API]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Database Versions =&lt;br /&gt;
&amp;lt;section begin=&amp;quot;database versions&amp;quot; /&amp;gt;The following tables shows what database version is used for various Kodi versions. This can be useful to see what versions of Kodi can use &#039;&#039;&#039;[[MySQL]]&#039;&#039;&#039; sharing. &lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
! Kodi version !! Date !! MyVideos !! MyMusic !! Textures !! Addons !! ViewModes !! TV !! EPG !! ADSP&lt;br /&gt;
|-&lt;br /&gt;
 | style=&amp;quot;width:120px;&amp;quot; | v10 - Dharma&lt;br /&gt;
 | style=&amp;quot;width:120px;&amp;quot; | December 2010 &lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 37&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 7&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 1&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 1&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 1&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center;&amp;quot; | N/A&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center;&amp;quot; | N/A&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center;&amp;quot; | N/A&lt;br /&gt;
|-&lt;br /&gt;
 | style=&amp;quot;width:120px;&amp;quot; | v11 - Eden&lt;br /&gt;
 | style=&amp;quot;width:120px;&amp;quot; | March 2012&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 60&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 18&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 6&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 15&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 4&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center;&amp;quot; | N/A&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center;&amp;quot; | N/A&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center;&amp;quot; | N/A&lt;br /&gt;
|-&lt;br /&gt;
 | style=&amp;quot;width:120px;&amp;quot; | v12 - Frodo&lt;br /&gt;
 | style=&amp;quot;width:120px;&amp;quot; | January 2013 &lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 75&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 32&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 13&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 15&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 4&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center;&amp;quot; | 22&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center;&amp;quot; | 7&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center;&amp;quot; | N/A&lt;br /&gt;
|-&lt;br /&gt;
 | style=&amp;quot;width:120px;&amp;quot; | v13 - Gotham&lt;br /&gt;
 | style=&amp;quot;width:120px;&amp;quot; | May 2014 &lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 78&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 46&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 13&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 16&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 6&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center;&amp;quot; | 22&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center;&amp;quot; | 7&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center;&amp;quot; | N/A&lt;br /&gt;
|-&lt;br /&gt;
 | style=&amp;quot;width:120px;&amp;quot; | v14 - Helix&lt;br /&gt;
 | style=&amp;quot;width:120px;&amp;quot; | December 2014 &lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 90&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 48&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 13&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 16&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 6&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center;&amp;quot; | 26&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center;&amp;quot; | 8&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center;&amp;quot; | N/A&lt;br /&gt;
|-&lt;br /&gt;
 | style=&amp;quot;width:120px;&amp;quot; | v15 - Isengard&lt;br /&gt;
 | style=&amp;quot;width:120px;&amp;quot; | July 2015 &lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 93&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 52&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 13&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 19&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 6&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center;&amp;quot; | 29&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center;&amp;quot; | 10&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center;&amp;quot; | N/A&lt;br /&gt;
|-&lt;br /&gt;
 | style=&amp;quot;width:120px;&amp;quot; | v16 - Jarvis&lt;br /&gt;
 | style=&amp;quot;width:120px;&amp;quot; | February 2016 &lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 99&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 56&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 13&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 20&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 6&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center;&amp;quot; | 29&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center;&amp;quot; | 11&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center;&amp;quot; | 0&lt;br /&gt;
|-&lt;br /&gt;
 | style=&amp;quot;width:120px;&amp;quot; | v17 - Krypton&lt;br /&gt;
 | style=&amp;quot;width:120px;&amp;quot; | February 2017&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 107&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 60&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 13&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 27&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 6&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center;&amp;quot; | 29&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center;&amp;quot; | 11&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center;&amp;quot; | 0&lt;br /&gt;
|-&lt;br /&gt;
 | style=&amp;quot;width:120px;&amp;quot; | v18 - Leia&lt;br /&gt;
 | style=&amp;quot;width:120px;&amp;quot; | January 2019&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 116&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 72&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 13&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 27&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center;&amp;quot; | 6&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center;&amp;quot; | 32&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center;&amp;quot; | 12&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center;&amp;quot; | 0&lt;br /&gt;
|-&lt;br /&gt;
 | style=&amp;quot;width:120px; background:#a0e75a;&amp;quot; | v19 - Matrix&lt;br /&gt;
 | style=&amp;quot;width:120px; background:#a0e75a;&amp;quot; | December 2020&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center; background:#a0e75a;&amp;quot; | 119&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center; background:#a0e75a;&amp;quot; | 82&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center; background:#a0e75a;&amp;quot; | 13&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center; background:#a0e75a;&amp;quot; | 33&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center; background:#a0e75a;&amp;quot; | 6&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center; background:#a0e75a;&amp;quot; | 37&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center; background:#a0e75a;&amp;quot; | 13&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center; background:#a0e75a;&amp;quot; | N/A&lt;br /&gt;
|-&lt;br /&gt;
 | style=&amp;quot;width:120px; background: skyBlue;&amp;quot; | v20 - Nexus&lt;br /&gt;
 | style=&amp;quot;width:120px; background: skyBlue;&amp;quot; | 08 January 2022&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center; background: skyBlue;&amp;quot; | 120&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center; background: skyBlue;&amp;quot; | 82&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center; background: skyBlue;&amp;quot; | 13&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center; background: skyBlue;&amp;quot; | 33&lt;br /&gt;
 | style=&amp;quot;width:80px; text-align:center; background: skyBlue;&amp;quot; | 6&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center; background: skyBlue;&amp;quot; | 37&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center; background: skyBlue;&amp;quot; | 13&lt;br /&gt;
 | style=&amp;quot;width:60px; text-align:center; background: skyBlue;&amp;quot; | N/A&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;2&amp;quot;| Legend&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background:#a0e75a;&amp;quot;| Green&lt;br /&gt;
| Current release&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background:skyBlue;&amp;quot;| Blue&lt;br /&gt;
| Future release&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;section end=&amp;quot;database versions&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= See also =&lt;br /&gt;
* [[Releases]]&lt;br /&gt;
* https://github.com/xbmc/xbmc/commits/master/xbmc/video/VideoDatabase.cpp - Tracking the Video Database schema version&lt;br /&gt;
* https://github.com/xbmc/xbmc/commits/master/xbmc/music/MusicDatabase.cpp - Tracking the Music Database schema version&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Top}}&lt;br /&gt;
{{updated|19}}&lt;br /&gt;
&lt;br /&gt;
[[Category:PVR]]&lt;br /&gt;
[[Category:Add-ons]]&lt;br /&gt;
[[Category:Karellen]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Video library]]&lt;br /&gt;
[[Category:Music library]]&lt;br /&gt;
[[Category:Skin_development]]&lt;/div&gt;</summary>
		<author><name>Black eagle</name></author>
	</entry>
	<entry>
		<id>https://kodi.wiki/index.php?title=InfoLabels&amp;diff=221612</id>
		<title>InfoLabels</title>
		<link rel="alternate" type="text/html" href="https://kodi.wiki/index.php?title=InfoLabels&amp;diff=221612"/>
		<updated>2020-09-20T12:28:44Z</updated>

		<summary type="html">&lt;p&gt;Black eagle: /* Music player */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{mininav|[[Development]]|[[Add-on development]]|[[Skinning]]}}&lt;br /&gt;
&amp;lt;section begin=&amp;quot;main content&amp;quot; /&amp;gt;&lt;br /&gt;
Skins can use infolabels with $INFO[infolabel] or the &amp;lt;info&amp;gt; tag. Scripts can read infolabels with &amp;lt;code&amp;gt;xbmc.getInfoLabel(&#039;infolabel&#039;)&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
An up-to-date list can be found here [https://github.com/xbmc/xbmc/blob/master/xbmc/GUIInfoManager.cpp GUIInfoManager.cpp]&lt;br /&gt;
&lt;br /&gt;
=== Container ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  Container.Content&lt;br /&gt;
|  Shows content of the current container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.FolderPath&lt;br /&gt;
|  Shows complete path of currently displayed folder&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.FolderName&lt;br /&gt;
|  Shows top most folder in currently displayed folder&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.Viewmode&lt;br /&gt;
|  Returns the current viewmode (list, icons etc.)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.SortMethod&lt;br /&gt;
|  Returns the current sort method (returns the localized name of: title, year, rating, etc.)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.SortOrder&lt;br /&gt;
|  Returns the current sort order (Ascending/Descending)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.PluginName&lt;br /&gt;
|  Returns the current plugins base folder name&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.PluginCategory&lt;br /&gt;
|  Returns the current plugins category (set by the scripter)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.ShowPlot&lt;br /&gt;
|  Returns the TV Show plot of the current container and can be used at season and episode level&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.ShowTitle&lt;br /&gt;
|  Returns the TV Show title of the current container and can be used at season and episode level&lt;br /&gt;
|  v17 addition&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).NumPages&lt;br /&gt;
|  Number of pages in the container with given id.  If no id is specified it grabs the current container.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).NumItems&lt;br /&gt;
|  Number of items in the container or grouplist with given id.  If no id is specified it grabs the current container.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).NumAllItems&lt;br /&gt;
|  Number of all items in the container or grouplist with given id including parent folder item.&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).NumNonFolderItems&lt;br /&gt;
|  Number of items in the container or grouplist with given id excluding all folder items.&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).CurrentPage&lt;br /&gt;
|  Current page in the container with given id.  If no id is specified it grabs the current container.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).CurrentItem&lt;br /&gt;
|  Current absolute item in the container or grouplist with given id.  If no id is specified it grabs the current container.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).Position&lt;br /&gt;
|  Returns the current focused position of the container / grouplist (id) as a numeric label.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).Column&lt;br /&gt;
|  Returns the column number of the focused position in a panel container.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).Row&lt;br /&gt;
|  Returns the row number of the focused position in a panel container.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.Totaltime&lt;br /&gt;
|  Returns the total time of all items in the current container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.TotalWatched&lt;br /&gt;
|  Returns the number of watched items in the current container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.TotalUnWatched&lt;br /&gt;
|  Returns the number of unwatched items in the current container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).ListItem(offset).Label&lt;br /&gt;
|  Shows ListItem.Label for a specific List or Panel Container with a offset &#039;&#039;( eg: Container(50).Listitem(2).Label )&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).ListItem(offset).Label2&lt;br /&gt;
|  Shows ListItem.Label2 for a specific List or Panel Container with a offset &#039;&#039;( eg: Container(50).Listitem(-2).Label2 )&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).ListItem(offset).Icon&lt;br /&gt;
|  Shows ListItem.Icon for a specific List or Panel Container with a offset &#039;&#039;( eg: Container(52).Listitem(1).Icon)&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).ListItem(offset).ActualIcon&lt;br /&gt;
|  Shows ListItem.ActualIcon for a specific List or Panel Container with a offset &#039;&#039;( eg: Container(50).Listitem(0).ActualIcon )&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).ListItem(offset).Thumb&lt;br /&gt;
|  Shows ListItem.Thumb for a specific List or Panel Container with a offset &#039;&#039;( eg: Container(50).Listitem(0).Thumb )&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).ListItemNoWrap(offset).Property&lt;br /&gt;
|  Basically returns the same as ListItem(offset) but it won&#039;t wrap. That means if the last item of a list is focused, ListItemNoWrap(1) will be empty while ListItem(1) will return the first item of the list. &#039;&#039;Property&#039;&#039; has to be replaced with Label, Label2, Icon etc. &#039;&#039;( eg: Container(50).ListitemNoWrap(1).Plot )&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).ListItemPosition(id).[infolabel]&lt;br /&gt;
|  Shows the infolabel for an item at position &#039;id&#039; in a Container. the id is an offset to the first *visible* item of the container. &#039;&#039;( eg: Container(50).ListItemPosition(4).Genre )&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).ListItemAbsolute(id).[infolabel]&lt;br /&gt;
|  Shows the infolabel for an item in a Container. the item id is the absolute position in the container. &#039;&#039;( eg: Container(50).ListItemAbsolute(4).Genre )&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.Property(addoncategory)&lt;br /&gt;
|  Returns the current add-on category&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.Property(reponame)&lt;br /&gt;
|  Returns the current add-on repository name&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.ViewCount&lt;br /&gt;
| The number of available skin view modes for the current container listing.&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Control ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  Control.GetLabel(id)[.index()]&lt;br /&gt;
|  Returns the label value or texture name of the control with the given id. Optionally you can specify index(1) to retrieve label2 from an Edit control.&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Fanart ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  Fanart.Color1&lt;br /&gt;
|  Returns the first of three colors included in the currently selected &#039;&#039;&#039;[[Fanart]]&#039;&#039;&#039; theme for the parent TV Show.  Colors are arranged Lightest to Darkest.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Fanart.Color2&lt;br /&gt;
|  Returns the second of three colors included in the currently selected &#039;&#039;&#039;[[Fanart]]&#039;&#039;&#039; theme for the parent TV Show.  Colors are arranged Lightest to Darkest.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Fanart.Color3&lt;br /&gt;
|  Returns the third of three colors included in the currently selected &#039;&#039;&#039;[[Fanart]]&#039;&#039;&#039; theme for the parent TV Show.  Colors are arranged Lightest to Darkest.&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Game ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  Game.Title&lt;br /&gt;
|  Name of the game&lt;br /&gt;
| v18&lt;br /&gt;
|-&lt;br /&gt;
|  Game.Platform&lt;br /&gt;
|  Platform the game runs on (eg. Atari 2600)&lt;br /&gt;
| v18&lt;br /&gt;
|-&lt;br /&gt;
|  Game.Genres&lt;br /&gt;
|  Gerne of the game (eg. Action)&lt;br /&gt;
| v18&lt;br /&gt;
|-&lt;br /&gt;
|  Game.Publisher&lt;br /&gt;
|  Publishing company of the game (eg. Nintendo)&lt;br /&gt;
| v18&lt;br /&gt;
|-&lt;br /&gt;
|  Game.Developer&lt;br /&gt;
|  Developer of the game&lt;br /&gt;
| v18&lt;br /&gt;
|-&lt;br /&gt;
|  Game.Overview&lt;br /&gt;
|  Game description&lt;br /&gt;
| v18&lt;br /&gt;
|-&lt;br /&gt;
|  Game.Year&lt;br /&gt;
|  Year the game was released&lt;br /&gt;
| v18&lt;br /&gt;
|-&lt;br /&gt;
|  Game.GameClient&lt;br /&gt;
|  Name of the used emulator&lt;br /&gt;
| v18&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== ListItem ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Label&lt;br /&gt;
|  Shows the left label of the currently selected item in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Label2&lt;br /&gt;
|  Shows the right label of the currently selected item in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Title&lt;br /&gt;
|  Shows the title of the currently selected song or movie in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.OriginalTitle&lt;br /&gt;
|  Shows the original title of the currently selected movie in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.SortLetter&lt;br /&gt;
|  Shows the first letter of the current file in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.TrackNumber&lt;br /&gt;
|  Shows the track number of the currently selected song in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Artist&lt;br /&gt;
|  Shows the artist of the currently selected song in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AlbumArtist&lt;br /&gt;
|  Shows the artist of the currently selected album in a list&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Artist_Born)&lt;br /&gt;
|  Date of Birth of the currently selected Artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Artist_Died)&lt;br /&gt;
|  Date of Death of the currently selected Artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Artist_Formed)&lt;br /&gt;
|  Formation date of the currently selected Band&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Artist_Disbanded)&lt;br /&gt;
|  Disbanding date of the currently selected Band&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Artist_YearsActive)&lt;br /&gt;
|  Years the currently selected artist has been active&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Artist_Instrument)&lt;br /&gt;
|  Instruments played by the currently selected artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Artist_Description)&lt;br /&gt;
|  Shows a biography of the currently selected artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Artist_Mood)&lt;br /&gt;
|  Shows the moods of the currently selected artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Artist_Style)&lt;br /&gt;
|  Shows the styles of the currently selected artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Artist_Genre)&lt;br /&gt;
|  Shows the genre of the currently selected artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Listitem.Property(Artist_Sortname)&lt;br /&gt;
|  Sortname of the currently selected Artist&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  Listitem.Property(Artist_Type)&lt;br /&gt;
|  Type of the currently selected Artist - person, group, orchestra, choir etc.&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  Listitem.Property(Artist_Gender)&lt;br /&gt;
|  Gender of the currently selected Artist - male, female, other&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  Listitem.Property(Artist_Disambiguation)&lt;br /&gt;
|  Brief description of the currently selected Artist that differentiates them from others with the same name&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Album&lt;br /&gt;
|  Shows the album of the currently selected song in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Album_Mood)&lt;br /&gt;
|  Shows the moods of the currently selected Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Album_Style)&lt;br /&gt;
|  Shows the styles of the currently selected Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Album_Theme)&lt;br /&gt;
|  Shows the themes of the currently selected Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Album_Type)&lt;br /&gt;
|  Shows the Album Type (e.g. compilation, enhanced, explicit lyrics) of the currently selected Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Album_Label)&lt;br /&gt;
|  Shows the record label of the currently selected Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Album_Description)&lt;br /&gt;
|  Shows a review of the currently selected Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Album_Rating)&lt;br /&gt;
|  Shows the scraped rating of the currently selected Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Album_UserRating)&lt;br /&gt;
|  Shows the user rating of the currently selected Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.DiscNumber&lt;br /&gt;
|  Shows the disc number of the currently selected song in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Year&lt;br /&gt;
|  Shows the year of the currently selected song, album or movie in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Premiered&lt;br /&gt;
|  Shows the release/aired date of the currently selected episode, show, movie or EPG item in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Genre&lt;br /&gt;
|  Shows the genre of the currently selected song, album or movie in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Director&lt;br /&gt;
|  Shows the director of the currently selected movie in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Country&lt;br /&gt;
|  Shows the production country of the currently selected movie in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Episode&lt;br /&gt;
|  Shows the episode number value for the currently selected episode. It also shows the number of total, watched or unwatched episodes for the currently selected tvshow or season, based on the the current watched filter.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Season&lt;br /&gt;
|  Shows the season value for the currently selected tvshow&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.TVShowTitle&lt;br /&gt;
|  Shows the name value for the currently selected tvshow in the season and episode depth of the video library&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(TotalSeasons)&lt;br /&gt;
|  Shows the total number of seasons for the currently selected tvshow&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(TotalEpisodes)&lt;br /&gt;
|  Shows the total number of episodes for the currently selected tvshow or season&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(WatchedEpisodes)&lt;br /&gt;
|  Shows the number of watched episodes for the currently selected tvshow or season&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(UnWatchedEpisodes)&lt;br /&gt;
|  Shows the number of unwatched episodes for the currently selected tvshow or season&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(NumEpisodes)&lt;br /&gt;
|  Shows the number of total, watched or unwatched episodes for the currently selected tvshow or season, based on the the current watched filter.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureAperture&lt;br /&gt;
|  Shows the F-stop used to take the selected picture. This is the value of the EXIF FNumber tag (hex code 0x829D).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureAuthor&lt;br /&gt;
|  Shows the name of the person involved in writing about the selected picture. This is the value of the IPTC Writer tag (hex code 0x7A).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureByline&lt;br /&gt;
|  Shows the name of the person who created the selected picture.  This is the value of the IPTC Byline tag (hex code 0x50).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureBylineTitle&lt;br /&gt;
|  Shows the title of the person who created the selected picture. This is the value of the IPTC BylineTitle tag (hex code 0x55).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureCamMake&lt;br /&gt;
|  Shows the manufacturer of the camera used to take the selected picture. This is the value of the EXIF Make tag (hex code 0x010F).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureCamModel&lt;br /&gt;
|  Shows the manufacturer&#039;s model name or number of the camera used to take the selected picture. This is the value of the EXIF Model tag (hex code 0x0110).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureCaption&lt;br /&gt;
|  Shows a description of the selected picture. This is the value of the IPTC Caption tag (hex code 0x78).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureCategory&lt;br /&gt;
|  Shows the subject of the selected picture as a category code. This is the value of the IPTC Category tag (hex code 0x0F).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureCCDWidth&lt;br /&gt;
|  Shows the width of the CCD in the camera used to take the selected picture. This is calculated from three EXIF tags (0xA002 * 0xA210 / 0xA20e).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureCity&lt;br /&gt;
|  Shows the city where the selected picture was taken. This is the value of the IPTC City tag (hex code 0x5A).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureColour&lt;br /&gt;
|  Shows whether the selected picture is &amp;quot;Colour&amp;quot; or &amp;quot;Black and White&amp;quot;.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureComment&lt;br /&gt;
|  Shows a description of the selected picture. This is the value of the EXIF User Comment tag (hex code 0x9286). This is the same value as Slideshow.SlideComment.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureCopyrightNotice&lt;br /&gt;
|  Shows the copyright notice of the selected picture. This is the value of the IPTC Copyright tag (hex code 0x74).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureCountry&lt;br /&gt;
|  Shows the full name of the country where the selected picture was taken. This is the value of the IPTC CountryName tag (hex code 0x65).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureCountryCode&lt;br /&gt;
|  Shows the country code of the country where the selected picture was taken. This is the value of the IPTC CountryCode tag (hex code 0x64).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureCredit&lt;br /&gt;
|  Shows who provided the selected picture. This is the value of the IPTC Credit tag (hex code 0x6E).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureDate&lt;br /&gt;
|  Shows the localized date of the selected picture. The short form of the date is used. The value of the EXIF DateTimeOriginal tag (hex code 0x9003) is preferred. If the DateTimeOriginal tag is not found, the value of DateTimeDigitized (hex code 0x9004) or of DateTime (hex code 0x0132) might be used.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureDatetime&lt;br /&gt;
|  Shows the date/timestamp of the selected picture. The localized short form of the date and time is used. The value of the EXIF DateTimeOriginal tag (hex code 0x9003) is preferred. If the DateTimeOriginal tag is not found, the value of DateTimeDigitized (hex code 0x9004) or of DateTime (hex code 0x0132) might be used.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureDesc&lt;br /&gt;
|  Shows a short description of the selected picture. The SlideComment, EXIFComment, or Caption values might contain a longer description. This is the value of the EXIF ImageDescription tag (hex code 0x010E).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureDigitalZoom&lt;br /&gt;
|  Shows the digital zoom ratio when the selected picture was taken. This is the value of the EXIF DigitalZoomRatio tag (hex code 0xA404).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureExpMode&lt;br /&gt;
|  Shows the exposure mode of the selected picture. The possible values are &amp;quot;Automatic&amp;quot;, &amp;quot;Manual&amp;quot;, and &amp;quot;Auto bracketing&amp;quot;. This is the value of the EXIF ExposureMode tag (hex code 0xA402).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureExposure&lt;br /&gt;
|  Shows the class of the program used by the camera to set exposure when the selected picture was taken. Values include &amp;quot;Manual&amp;quot;, &amp;quot;Program (Auto)&amp;quot;, &amp;quot;Aperture priority (Semi-Auto)&amp;quot;, &amp;quot;Shutter priority (semi-auto)&amp;quot;, etc. This is the value of the EXIF ExposureProgram tag (hex code 0x8822).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureExposureBias&lt;br /&gt;
|  Shows the exposure bias of the selected picture. Typically this is a number between -99.99 and 99.99. This is the value of the EXIF ExposureBiasValue tag (hex code 0x9204).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureExpTime&lt;br /&gt;
|  Shows the exposure time of the selected picture, in seconds. This is the value of the EXIF ExposureTime tag (hex code 0x829A). If the ExposureTime tag is not found, the ShutterSpeedValue tag (hex code 0x9201) might be used.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureFlashUsed&lt;br /&gt;
|  Shows the status of flash when the selected picture was taken. The value will be either &amp;quot;Yes&amp;quot; or &amp;quot;No&amp;quot;, and might include additional information. This is the value of the EXIF Flash tag (hex code 0x9209).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureFocalLen&lt;br /&gt;
|  Shows the lens focal length of the selected picture&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureFocusDist&lt;br /&gt;
|  Shows the focal length of the lens, in mm. This is the value of the EXIF FocalLength tag (hex code 0x920A).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureGPSLat&lt;br /&gt;
|  Shows the latitude where the selected picture was taken (degrees, minutes, seconds North or South). This is the value of the EXIF GPSInfo.GPSLatitude and GPSInfo.GPSLatitudeRef tags.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureGPSLon&lt;br /&gt;
|  Shows the longitude where the selected picture was taken (degrees, minutes, seconds East or West). This is the value of the EXIF GPSInfo.GPSLongitude and GPSInfo.GPSLongitudeRef tags.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureGPSAlt&lt;br /&gt;
|  Shows the altitude in meters where the selected picture was taken. This is the value of the EXIF GPSInfo.GPSAltitude tag.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureHeadline&lt;br /&gt;
|  Shows a synopsis of the contents of the selected picture. This is the value of the IPTC Headline tag (hex code 0x69).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureImageType&lt;br /&gt;
|  Shows the color components of the selected picture. This is the value of the IPTC ImageType tag (hex code 0x82).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureIPTCDate&lt;br /&gt;
|  Shows the date when the intellectual content of the selected picture was created, rather than when the picture was created. This is the value of the IPTC DateCreated tag (hex code 0x37).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureIPTCTime&lt;br /&gt;
|  Shows the time when the intellectual content of the selected picture was created, rather than when the picture was created. This is the value of the IPTC TimeCreated tag (hex code 0x3C).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureISO&lt;br /&gt;
|  Shows the ISO speed of the camera when the selected picture was taken. This is the value of the EXIF ISOSpeedRatings tag (hex code 0x8827).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureKeywords&lt;br /&gt;
|  Shows keywords assigned to the selected picture. This is the value of the IPTC Keywords tag (hex code 0x19).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureLightSource&lt;br /&gt;
|  Shows the kind of light source when the picture was taken. Possible values include &amp;quot;Daylight&amp;quot;, &amp;quot;Fluorescent&amp;quot;, &amp;quot;Incandescent&amp;quot;, etc. This is the value of the EXIF LightSource tag (hex code 0x9208).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureLongDate&lt;br /&gt;
|  Shows only the localized date of the selected picture. The long form of the date is used. The value of the EXIF DateTimeOriginal tag (hex code 0x9003) is preferred. If the DateTimeOriginal tag is not found, the value of DateTimeDigitized (hex code 0x9004) or of DateTime (hex code 0x0132) might be used.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureLongDatetime&lt;br /&gt;
|  Shows the date/timestamp of the selected picture. The localized long form of the date and time is used. The value of the EXIF DateTimeOriginal tag (hex code 0x9003) is preferred. if the DateTimeOriginal tag is not found, the value of DateTimeDigitized (hex code 0x9004) or of DateTime (hex code 0x0132) might be used.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureMeteringMode&lt;br /&gt;
|  Shows the metering mode used when the selected picture was taken. The possible values are &amp;quot;Center weight&amp;quot;, &amp;quot;Spot&amp;quot;, or &amp;quot;Matrix&amp;quot;. This is the value of the EXIF MeteringMode tag (hex code 0x9207).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureObjectName&lt;br /&gt;
|  Shows a shorthand reference for the selected picture. This is the value of the IPTC ObjectName tag (hex code 0x05).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureOrientation&lt;br /&gt;
|  Shows the orientation of the selected picture. Possible values are &amp;quot;Top Left&amp;quot;, &amp;quot;Top Right&amp;quot;, &amp;quot;Left Top&amp;quot;, &amp;quot;Right Bottom&amp;quot;, etc. This is the value of the EXIF Orientation tag (hex code 0x0112).&lt;br /&gt;
|&lt;br /&gt;
|-     &lt;br /&gt;
|  ListItem.PicturePath&lt;br /&gt;
|  Shows the filename and path of the selected picture&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureProcess&lt;br /&gt;
|  Shows the process used to compress the selected picture&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureReferenceService&lt;br /&gt;
|  Shows the Service Identifier of a prior envelope to which the selected picture refers. This is the value of the IPTC ReferenceService tag (hex code 0x2D).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureResolution&lt;br /&gt;
|  Shows the dimensions of the selected picture&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureSource&lt;br /&gt;
|  Shows the original owner of the selected picture. This is the value of the IPTC Source tag (hex code 0x73).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureSpecialInstructions&lt;br /&gt;
|  Shows other editorial instructions concerning the use of the selected picture. This is the value of the IPTC SpecialInstructions tag (hex code 0x28).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureState&lt;br /&gt;
|  Shows the State/Province where the selected picture was taken. This is the value of the IPTC ProvinceState tag (hex code 0x5F).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureSublocation&lt;br /&gt;
|  Shows the location within a city where the selected picture was taken - might indicate the nearest landmark. This is the value of the IPTC SubLocation tag (hex code 0x5C).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureSupplementalCategories&lt;br /&gt;
|  Shows supplemental category codes to further refine the subject of the selected picture. This is the value of the IPTC SuppCategory tag (hex code 0x14).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureTransmissionReference&lt;br /&gt;
|  Shows a code representing the location of original transmission of the selected picture. This is the value of the IPTC TransmissionReference tag (hex code 0x67).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureUrgency&lt;br /&gt;
|  Shows the urgency of the selected picture. Values are 1-9. The &amp;quot;1&amp;quot; is most urgent. Some image management programs use urgency to indicate picture rating, where urgency &amp;quot;1&amp;quot; is 5 stars and urgency &amp;quot;5&amp;quot; is 1 star. Urgencies 6-9 are not used for rating. This is the value of the IPTC Urgency tag (hex code 0x0A).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureWhiteBalance&lt;br /&gt;
|  Shows the white balance mode set when the selected picture was taken. The possible values are &amp;quot;Manual&amp;quot; and &amp;quot;Auto&amp;quot;. This is the value of the EXIF WhiteBalance tag (hex code 0xA403).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.FileName&lt;br /&gt;
|  Shows the filename of the currently selected song or movie in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.FileNameNoExtension&lt;br /&gt;
|  Returns the filename without its extension.&lt;br /&gt;
|  v19&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Path&lt;br /&gt;
|  Shows the complete path of the currently selected song or movie in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.FolderName&lt;br /&gt;
|  Shows top most folder of the path of the currently selected song or movie in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.FolderPath&lt;br /&gt;
|  Shows the complete path of the currently selected song or movie in a container (without user details).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.FileNameAndPath&lt;br /&gt;
|  Shows the full path with filename of the currently selected song or movie in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.FileExtension&lt;br /&gt;
|  Shows the file extension (without leading dot) of the currently selected item in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Date&lt;br /&gt;
|  Shows the file date of the currently selected song or movie in a container / Aired date of an episode / Day, start time and end time of current selected TV programme (PVR)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.DateAdded&lt;br /&gt;
|  Shows the date the currently selected item was added to the library / Date and time of an event in the EventLog window.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Size&lt;br /&gt;
|  Shows the file size of the currently selected song or movie in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Rating[(name)]&lt;br /&gt;
|  Shows the scraped rating of the currently selected item in a container. Optionally you can specify the name of the scraper to retrieve a specific rating, for use in dialogvideoinfo.xml.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Set&lt;br /&gt;
|  Shows the name of the set the movie is part of&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.SetId&lt;br /&gt;
|  Shows the id of the set the movie is part of&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.UserRating&lt;br /&gt;
|  Shows the user rating of the currently selected item in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Votes[(name)]&lt;br /&gt;
|  Shows the IMDB votes of the currently selected movie in a container. Optionally you can specify the name of the scraper to retrieve specific votes, for use in dialogvideoinfo.xml.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.RatingAndVotes[(name)]&lt;br /&gt;
|  Shows the IMDB rating and votes of the currently selected movie in a container. Optionally you can specify the name of the scraper to retrieve a specific rating and votes, for use in dialogvideoinfo.xml.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Mpaa&lt;br /&gt;
|  Show the MPAA rating of the currently selected movie in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.ProgramCount&lt;br /&gt;
|  Shows the number of times an xbe has been run from &amp;quot;my programs&amp;quot;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Duration[(format)]&lt;br /&gt;
|  Shows the song or movie duration of the currently selected movie in a container. Optionally specify a time format, hours (hh), minutes (mm) or seconds (ss). When 12 hour clock is used (xx) will return AM/PM. Also supported: (hh:mm), (mm:ss), (hh:mm:ss), (hh:mm:ss). &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.DBTYPE&lt;br /&gt;
|  Shows the database type of the ListItem.DBID for videos (video, movie, set, tvshow, season, episode, musicvideo) or for audio (music, song, album, artist). Beware with season, the &amp;quot;*all seasons&amp;quot; entry does give a DBTYPE &amp;quot;season&amp;quot; and a DBID, but you can&#039;t get the details of that entry since it&#039;s a virtual entry in the Video Library.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.DBID&lt;br /&gt;
|  Shows the database id of the currently selected listitem in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Cast&lt;br /&gt;
|  Shows a concatenated string of cast members of the currently selected movie, for use in dialogvideoinfo.xml&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.CastAndRole&lt;br /&gt;
|  Shows a concatenated string of cast members and roles of the currently selected movie, for use in dialogvideoinfo.xml&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Studio&lt;br /&gt;
|  Studio of current selected Music Video in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Top250&lt;br /&gt;
|  Shows the IMDb top250 position of the currently selected listitem in a container.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Trailer&lt;br /&gt;
|  Shows the full trailer path with filename of the currently selected movie in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Writer&lt;br /&gt;
|  Name of Writer of current Video in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Tagline&lt;br /&gt;
|  Small Summary of current Video in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PlotOutline&lt;br /&gt;
|  Small Summary of current Video in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Plot&lt;br /&gt;
|  Complete Text Summary of Video in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.IMDBNumber&lt;br /&gt;
|  The IMDB iD of the selected Video in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.EpisodeName&lt;br /&gt;
|  (PVR only) The name of the episode if the selected EPG item is a TV Show&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PercentPlayed&lt;br /&gt;
|  Returns percentage value [0-100] of how far the selected video has been played&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.LastPlayed&lt;br /&gt;
|  Last play date of Video in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PlayCount&lt;br /&gt;
|  Playcount of Video in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.StartTime&lt;br /&gt;
|  Start time of current selected TV programme in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.EndTime&lt;br /&gt;
|  End time of current selected TV programme in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.StartDate&lt;br /&gt;
|  Start date of current selected TV programme in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.ChannelName&lt;br /&gt;
|  Name of current selected TV channel in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.VideoCodec&lt;br /&gt;
|  Shows the video codec of the currently selected video (common values: 3iv2, avc1, div2, div3, divx, divx 4, dx50, flv, h264, microsoft, mp42, mp43, mp4v, mpeg1video, mpeg2video, mpg4, rv40, svq1, svq3, theora, vp6f, wmv2, wmv3, wvc1, xvid)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.VideoResolution&lt;br /&gt;
|  Shows the resolution of the currently selected video (possible values: 480, 576, 540, 720, 1080, 4K, 8K [Note: v18 addition]). Note that 540 usually means a widescreen format (around 960x540) while 576 means PAL resolutions (normally 720x576), therefore 540 is actually better resolution than 576.&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.VideoAspect&lt;br /&gt;
|  Shows the aspect ratio of the currently selected video (possible values: 1.33, 1.37, 1.66, 1.78, 1.85, 2.20, 2.35, 2.40, 2.55, 2.76)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AudioCodec&lt;br /&gt;
|  Shows the audio codec of the currently selected video (common values: aac, ac3, cook, dca, dtshd_hra, dtshd_ma, eac3, mp1, mp2, mp3, pcm_s16be, pcm_s16le, pcm_u8, truehd, vorbis, wmapro, wmav2)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AudioChannels&lt;br /&gt;
|  Shows the number of audio channels of the currently selected video (possible values: 1, 2, 4, 5, 6, 7, 8, 10)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AudioLanguage&lt;br /&gt;
|  Shows the audio language of the currently selected video (returns an ISO 639-2 three character code, e.g. eng, epo, deu)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.SubtitleLanguage&lt;br /&gt;
|  Shows the subtitle language of the currently selected video (returns an ISO 639-2 three character code, e.g. eng, epo, deu)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(AudioCodec.[n])&lt;br /&gt;
|  Shows the audio codec of the currently selected video, &#039;n&#039; defines the number of the audiostream (values: see ListItem.AudioCodec)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(AudioChannels.[n])&lt;br /&gt;
|  Shows the number of audio channels of the currently selected video, &#039;n&#039; defines the number of the audiostream (values: see ListItem.AudioChannels)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(AudioLanguage.[n])&lt;br /&gt;
|  Shows the audio language of the currently selected video, &#039;n&#039; defines the number of the audiostream (values: see ListItem.AudioLanguage)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(SubtitleLanguage.[n])&lt;br /&gt;
|  Shows the subtitle language of the currently selected video, &#039;n&#039; defines the number of the subtitle (values: see ListItem.SubtitleLanguage)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AddonName&lt;br /&gt;
|  Shows the name of the currently selected addon&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AddonVersion&lt;br /&gt;
|  Shows the version of the currently selected addon&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AddonSummary&lt;br /&gt;
|  Shows a short description of the currently selected addon&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AddonDescription&lt;br /&gt;
|  Shows the full description of the currently selected addon&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AddonType&lt;br /&gt;
|  Shows the type (screensaver, script, skin, etc...) of the currently selected addon&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AddonCreator&lt;br /&gt;
|  Shows the name of the author the currently selected addon&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AddonDisclaimer&lt;br /&gt;
|  Shows the disclaimer of the currently selected addon&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AddonBroken&lt;br /&gt;
|  Shows a message when the addon is marked as broken in the repo&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Addon.Changelog)&lt;br /&gt;
|  Shows the changelog of the currently selected addon&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Addon.ID)&lt;br /&gt;
|  Shows the identifier of the currently selected addon&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Addon.Status)&lt;br /&gt;
|  Shows the status of the currently selected addon&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Addon.Path)&lt;br /&gt;
|  Shows the path of the currently selected addon&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.StartTime&lt;br /&gt;
|  Start time of the selected item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.EndTime&lt;br /&gt;
|  End time of the selected item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.StartDate&lt;br /&gt;
|  Start date of the selected item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.EndDate&lt;br /&gt;
|  End date of the selected item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.NextTitle&lt;br /&gt;
|  Title of the next item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.NextGenre&lt;br /&gt;
|  Genre of the next item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.NextPlot&lt;br /&gt;
|  Plot of the next item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.NextPlotOutline&lt;br /&gt;
|  Plot outline of the next item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.NextStartTime&lt;br /&gt;
|  Start time of the next item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.NextEndTime&lt;br /&gt;
|  End of the next item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.NextStartDate&lt;br /&gt;
|  Start date of the next item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.NextEndDate&lt;br /&gt;
|  End date of the next item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Listitem.NextDuration&lt;br /&gt;
|  Duration of the next item (PVR).&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.ChannelName&lt;br /&gt;
|  Channelname of the selected item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.ChannelNumber&lt;br /&gt;
|  Channel number of the selected item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.ChannelNumberLabel&lt;br /&gt;
|  Channel and subchannel number of the currently selected channel that&#039;s currently playing (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Progress&lt;br /&gt;
|  Part of the programme that&#039;s been played (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.StereoscopicMode&lt;br /&gt;
|  Returns the stereomode of the selected video (i.e. mono, split_vertical, split_horizontal, row_interleaved, anaglyph_cyan_red, anaglyph_green_magenta)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Comment&lt;br /&gt;
|  Comment assigned to the item (PVR/MUSIC).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AddonInstallDate&lt;br /&gt;
| Date the addon was installed&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AddonLastUpdated&lt;br /&gt;
| Date the addon was last updated&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AddonLastUsed&lt;br /&gt;
| Date the addon was used last&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AddonNews&lt;br /&gt;
| Returns a brief changelog, taken from the addons&#039; addon.xml file&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AddonSize&lt;br /&gt;
| Filesize of the addon&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Contributors&lt;br /&gt;
| List of all people who&#039;ve contributed to the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.ContributorAndRole&lt;br /&gt;
| List of all people and their role who&#039;ve contributed to the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.EndTimeResume&lt;br /&gt;
| Returns the time a video will end if you resume it, instead of playing it from the beginning.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Mood&lt;br /&gt;
| Mood of the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Status&lt;br /&gt;
| For use with tv shows. It can return one of the following: &#039;returning series&#039;,&#039;in production&#039;,&#039;planned&#039;,&#039;cancelled&#039; or &#039;ended&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Tag&lt;br /&gt;
| Will return the name of the &#039;tag&#039; this movie is part of.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Role.Arranger)&lt;br /&gt;
| Returns the name of the person who arranged the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Role.Composer)&lt;br /&gt;
| Returns the name of the person who composed the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Role.Conductor)&lt;br /&gt;
| Returns the name of the person who conducted the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Role.DJMixer)&lt;br /&gt;
| Returns the name of the dj who remixed the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Role.Engineer)&lt;br /&gt;
| Returns the name of the person who was the engineer of the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Role.Lyricist)&lt;br /&gt;
| Returns the name of the person who wrote the lyrics of the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Role.Mixer)&lt;br /&gt;
| Returns the name of the person who mixed the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Role.Orchestra)&lt;br /&gt;
| Returns the name of the orchestra performing the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Role.Producer)&lt;br /&gt;
| Returns the name of the person who produced the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Role.Remixer)&lt;br /&gt;
| Returns the name of the person who remixed the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Album_Duration)&lt;br /&gt;
| Returns the duration of an album in HH:MM:SS&lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Appearances&lt;br /&gt;
| Returns the number of movies featuring the selected actor / directed by the selected director&lt;br /&gt;
| v17 addition&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PrivacyPolicy&lt;br /&gt;
| Returns the official Kodi privacy-policy&lt;br /&gt;
| v17 addition&lt;br /&gt;
|-&lt;br /&gt;
|  Listitem.Property(game.videofilter)&lt;br /&gt;
|  Name of the video filter (eg. Bilinear)&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  Listitem.Property(game.stretchmode)&lt;br /&gt;
|  Name of the stretch mode (eg. Stretch 4:3)&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  Listitem.Property(game.videorotation)&lt;br /&gt;
|  Angle of the rotation&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
| ListItem.CurrentItem&lt;br /&gt;
| will return the current index of the item in a container starting at 1.&lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.DiscTitle&lt;br /&gt;
| The disc title of the currently selected album or song&lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.TotalDiscs&lt;br /&gt;
| The total amount of discs belonging to an album&lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.IsBoxset&lt;br /&gt;
| Returns true if the item is part of a boxset&lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.ReleaseDate&lt;br /&gt;
| Returns the release date of the current item&lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.OriginalDate&lt;br /&gt;
| Returns the original release date of the item&lt;br /&gt;
|v19&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.BPM&lt;br /&gt;
| Returns the Beats Per Minute for a song&lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.BitRate&lt;br /&gt;
| Returns the bitrate of the current song (Actual rate for CBR, average rate for VBR)&lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.SampleRate&lt;br /&gt;
| Returns the sample rate of a song / 1000.0 eg 44.1, 48, 96 etc&lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.MusicChannels&lt;br /&gt;
| Returns the number of audio channels for a song&lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AlbumStatus&lt;br /&gt;
| Returns the Musicbrainz release status of the album (offical, bootleg, promotion etc)&lt;br /&gt;
| v19&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Musicpartymode labels ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPartyMode.SongsPlayed&lt;br /&gt;
|  Number of songs played during Party Mode&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPartyMode.MatchingSongs&lt;br /&gt;
|  Number of songs available to Party Mode&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPartyMode.MatchingSongsPicked&lt;br /&gt;
|  Number of songs picked already for Party Mode&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPartyMode.MatchingSongsLeft&lt;br /&gt;
|  Number of songs left to be picked from for Party Mode&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPartyMode.RelaxedSongsPicked&lt;br /&gt;
|  Not currently used&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPartyMode.RandomSongsPicked&lt;br /&gt;
|  Number of unique random songs picked during Party Mode&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Network labels ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  Network.IsDHCP&lt;br /&gt;
|  Network type is DHCP or FIXED&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Network.IPAddress&lt;br /&gt;
|  The system&#039;s IP Address (&amp;lt;ipaddress&amp;gt; is returned as a string)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Network.LinkState&lt;br /&gt;
|  Network linkstate e.g. 10mbit/100mbit etc.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Network.MacAddress&lt;br /&gt;
|  The system&#039;s  mac address&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Network.SubnetMask&lt;br /&gt;
|  Network subnet mask&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Network.GatewayAddress&lt;br /&gt;
|  Network gateway address&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Network.DNS1Address&lt;br /&gt;
|  Network dns server 1 address&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Network.DNS2Address&lt;br /&gt;
|  Network dns server 2 address&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Network.DHCPAddress&lt;br /&gt;
|  DHCP server ip address&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Player labels ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  Player.FinishTime&lt;br /&gt;
|  Time playing media will end&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.FinishTime(format)&lt;br /&gt;
|  Shows hours (hh), minutes (mm) or seconds (ss). When 12 hour clock is used (xx) will return AM/PM. Also supported: (hh:mm), (mm:ss), (hh:mm:ss), (hh:mm:ss).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Chapter&lt;br /&gt;
|  Current chapter of current playing media&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.ChapterCount&lt;br /&gt;
|  Total number of chapters of current playing media&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Time&lt;br /&gt;
|  Elapsed time of current playing media&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Time(format)&lt;br /&gt;
|  Shows hours (hh), minutes (mm) or seconds (ss). When 12 hour clock is used (xx) will return AM/PM. Also supported: (hh:mm), (mm:ss), (hh:mm:ss), (hh:mm:ss).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.TimeRemaining&lt;br /&gt;
|  Remaining time of current playing media&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.TimeRemaining(format)&lt;br /&gt;
|  Shows hours (hh), minutes (mm) or seconds (ss). When 12 hour clock is used (xx) will return AM/PM. Also supported: (hh:mm), (mm:ss), (hh:mm:ss), (hh:mm:ss).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Duration&lt;br /&gt;
|  Total duration of the current playing media&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Duration(format)&lt;br /&gt;
|  Shows hours (hh), minutes (mm) or seconds (ss). When 12 hour clock is used (xx) will return AM/PM. Also supported: (hh:mm), (mm:ss), (hh:mm:ss), (hh:mm:ss).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.SeekTime&lt;br /&gt;
|  Time to which the user is seeking&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.SeekOffset&lt;br /&gt;
|  Indicates the seek offset after a seek press (eg user presses BigStepForward, player.seekoffset returns +10:00)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.SeekOffset(format)&lt;br /&gt;
|  Shows hours (hh), minutes (mm) or seconds (ss). Also supported: (hh:mm), (mm:ss), (hh:mm:ss), (hh:mm:ss).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.SeekStepSize&lt;br /&gt;
|  Displays the seek step size. (v15 addition)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Progress&lt;br /&gt;
|  Shows how much (percentage) of the file has been played&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.ProgressCache&lt;br /&gt;
|  Shows how much of the file is cached above current play percentage&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Folderpath&lt;br /&gt;
|  Shows the full path of the currently playing song or movie&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Filenameandpath&lt;br /&gt;
|  Shows the full path with filename of the currently playing song or movie&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.StartTime&lt;br /&gt;
|  Returns the starttime (from the epg) of a tv program, for all other videos it will return the time you started watching this video.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.StartTime(format)&lt;br /&gt;
|  Shows hours (hh), minutes (mm) or seconds (ss). When 12 hour clock is used (xx) will return AM/PM. Also supported: (hh:mm), (mm:ss), (hh:mm:ss), (hh:mm:ss).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Title&lt;br /&gt;
|  Returns the musicplayer title for audio and the videoplayer title for videos.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Filename&lt;br /&gt;
|  Returns the filename of the currently playing media.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Volume&lt;br /&gt;
| Returns the volume level in dB&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.PlaySpeed&lt;br /&gt;
|  Current playspeed. (range:0.8 to 1.5)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Process(AudioBitsPerSample)&lt;br /&gt;
| Bits per sample of the currently playing item&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Process(AudioChannels)&lt;br /&gt;
| Number of audiochannels of the currently playing item&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Process(AudioDecoder)&lt;br /&gt;
| Audiodecoder name of the currently playing item&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Process(AudioSamplerate)&lt;br /&gt;
| Samplerate  f the currently playing item&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Process(DeintMethod)&lt;br /&gt;
| Deinterlace method of the currently playing video&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Process(PixFormat)&lt;br /&gt;
| Pixel format of the currently playing video&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Process(VideoDAR)&lt;br /&gt;
| Display aspect ratio of the currently playing video&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Process(VideoFPS)&lt;br /&gt;
| Video framerate of the currently playing video&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Process(VideoHeight)&lt;br /&gt;
| Height of the currently playing video&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Process(VideoDecoder)&lt;br /&gt;
| Videodecoder name of the currently playing video&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Process(VideoWidth)&lt;br /&gt;
| Width of the currently playing video&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| Player.CutList&lt;br /&gt;
| this infolabel can be used with the [[Ranges control]], as EDL and chapter markers &lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
| Player.Chapters&lt;br /&gt;
| this infolabel can be used with the [[Ranges control]], as EDL and chapter markers &lt;br /&gt;
| v19&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Music player ====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Title&lt;br /&gt;
|  Title of the currently playing song,  also available are &amp;quot;MusicPlayer.offset(number).Title&amp;quot; offset is relative to the current playing item and &amp;quot;MusicPlayer.Position(number).Title&amp;quot; position is relative to the start of the playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Album&lt;br /&gt;
|  Album from which the current song is from,   also available are &amp;quot;MusicPlayer.offset(number).Album&amp;quot; offset is relative to the current playing item and &amp;quot;MusicPlayer.Position(number).Album&amp;quot; position is relative to the start of the playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Album_Mood)&lt;br /&gt;
|  Shows the moods of the currently playing Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Album_Style)&lt;br /&gt;
|  Shows the styles of the currently playing Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Album_Theme)&lt;br /&gt;
|  Shows the themes of the currently playing Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Album_Type)&lt;br /&gt;
|  Shows the Album Type (e.g. compilation, enhanced, explicit lyrics) of the currently playing Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Album_Label)&lt;br /&gt;
|  Shows the record label of the currently playing Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Album_Description)&lt;br /&gt;
|  Shows a review of the currently playing Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Artist&lt;br /&gt;
|  Artist(s) of current song,  also available are &amp;quot;MusicPlayer.offset(number).Artist&amp;quot; offset is relative to the current playing item and &amp;quot;MusicPlayer.Position(number).Artist&amp;quot; position is relative to the start of the playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_Born)&lt;br /&gt;
|  Date of Birth of the currently playing Artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_Died)&lt;br /&gt;
|  Date of Death of the currently playing Artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_Formed)&lt;br /&gt;
|  Formation date of the currently playing Artist/Band&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_Disbanded)&lt;br /&gt;
|  Disbanding date of the currently playing Artist/Band&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_YearsActive)&lt;br /&gt;
|  Years the currently Playing artist has been active&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_Instrument)&lt;br /&gt;
|  Instruments played by the currently playing artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_Description)&lt;br /&gt;
|  Shows a biography of the currently playing artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_Mood)&lt;br /&gt;
|  Shows the moods of the currently playing artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_Style)&lt;br /&gt;
|  Shows the styles of the currently playing artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_Genre)&lt;br /&gt;
|  Shows the genre of the currently playing artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_Sortname)&lt;br /&gt;
|  Sortname of the currently playing Artist&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_Type)&lt;br /&gt;
|  Type of the currently playing Artist - person, group, orchestra, choir etc.&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_Gender)&lt;br /&gt;
|  Gender of the currently playing Artist - male, female, other&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_Disambiguation)&lt;br /&gt;
|  Brief description of the currently playing Artist that differentiates them from others with the same name&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Genre&lt;br /&gt;
|  Genre(s) of current song,  also available are &amp;quot;MusicPlayer.offset(number).Genre&amp;quot; offset is relative to the current playing item and &amp;quot;MusicPlayer.Position(number).Genre&amp;quot; position is relative to the start of the playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Lyrics&lt;br /&gt;
|  Lyrics of current song stored in ID tag info&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Year&lt;br /&gt;
|  Year of release of current song,  also available are &amp;quot;MusicPlayer.offset(number).Year&amp;quot; offset is relative to the current playing item and &amp;quot;MusicPlayer.Position(number).Year&amp;quot; position is relative to the start of the playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Rating&lt;br /&gt;
|  Numeric Rating of current song,  also available are &amp;quot;MusicPlayer.offset(number).Rating&amp;quot; offset is relative to the current playing item and &amp;quot;MusicPlayer.Position(number).Rating&amp;quot; position is relative to the start of the playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.DiscNumber&lt;br /&gt;
|  Disc Number of current song stored in ID tag info,  also available are &amp;quot;MusicPlayer.offset(number).DiscNumber&amp;quot; offset is relative to the current playing item and &amp;quot;MusicPlayer.Position(number).DiscNumber&amp;quot; position is relative to the start of the playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Comment&lt;br /&gt;
|  Comment of current song stored in ID tag info,  also available are &amp;quot;MusicPlayer.offset(number).Comment&amp;quot; offset is relative to the current playing item and &amp;quot;MusicPlayer.Position(number).Comment&amp;quot; position is relative to the start of the playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Time&lt;br /&gt;
|  Current time in song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.TimeRemaining&lt;br /&gt;
|  Current remaining time in song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.TimeSpeed&lt;br /&gt;
|  Both the time and the playspeed formatted up. eg 1:23 (2x)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.TrackNumber&lt;br /&gt;
|  Track number of current song,   also available are &amp;quot;MusicPlayer.offset(number).TrackNumber&amp;quot; offset is relative to the current playing item and &amp;quot;MusicPlayer.Position(number).TrackNumber&amp;quot; position is relative to the start of the playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Duration&lt;br /&gt;
|  Duration of current song,   also available are &amp;quot;MusicPlayer.offset(number).Duration&amp;quot; offset is relative to the current playing item and &amp;quot;MusicPlayer.Position(number).Duration&amp;quot; position is relative to the start of the playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.BitRate&lt;br /&gt;
|  Bitrate of current song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Channels&lt;br /&gt;
|  Number of channels of current song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.BitsPerSample&lt;br /&gt;
|  Number of bits per sample of current song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.SampleRate&lt;br /&gt;
|  Samplerate of current song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Codec&lt;br /&gt;
|  Codec of current song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.PlaylistPosition&lt;br /&gt;
|  Position of the current song in the current music playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.PlaylistLength&lt;br /&gt;
|  Total size of the current music playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.ChannelName&lt;br /&gt;
|  Channel name of the radio programme that&#039;s currently playing (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.ChannelNumberLabel&lt;br /&gt;
|  Channel and subchannel number of the radio channel that&#039;s currently playing (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.ChannelGroup&lt;br /&gt;
|  Channel group of  of the radio programme that&#039;s currently playing (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Contributors&lt;br /&gt;
| List of all people who&#039;ve contributed to the currently playing song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.ContributorAndRole&lt;br /&gt;
| List of all people and their role who&#039;ve contributed to the currently playing song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Mood&lt;br /&gt;
| Mood of the currently playing song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Role.Arranger)&lt;br /&gt;
| Returns the name of the person who arranged the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Role.Composer)&lt;br /&gt;
| Returns the name of the person who composed the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Role.Conductor)&lt;br /&gt;
| Returns the name of the person who conducted the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Role.DJMixer)&lt;br /&gt;
| Returns the name of the dj who remixed the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Role.Engineer)&lt;br /&gt;
| Returns the name of the person who was the engineer of the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Role.Lyricist)&lt;br /&gt;
| Returns the name of the person who wrote the lyrics of the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Role.Mixer)&lt;br /&gt;
| Returns the name of the person who mixed the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Role.Orchestra)&lt;br /&gt;
| Returns the name of the orchestra performing the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Role.Producer)&lt;br /&gt;
| Returns the name of the person who produced the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Role.Remixer)&lt;br /&gt;
| Returns the name of the person who remixed the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.UserRating&lt;br /&gt;
| The rating the user gave to the currently playing song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.DBID&lt;br /&gt;
| The database id of the currently playing song&lt;br /&gt;
| v17 Addition&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.DiscTitle&lt;br /&gt;
| The title of the disc currently playing&lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.ReleaseDate&lt;br /&gt;
| Returns the release date of the song currently playing&lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.OriginalDate&lt;br /&gt;
| Returns the original release date of the song currently playing&lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.BPM&lt;br /&gt;
| Returns the Beats Per Minute of the currently playing song&lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.TotalDiscs&lt;br /&gt;
| Returns the number of discs associated with the album of the currently playing song&lt;br /&gt;
| v19&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Video player ====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Time&lt;br /&gt;
|  Current time in movie&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.TimeRemaining&lt;br /&gt;
|  Current remaining time in movie&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.TimeSpeed&lt;br /&gt;
|  Current time + playspeed. eg 1:23:14 (-4x)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Duration&lt;br /&gt;
|  Length of current movie&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Title&lt;br /&gt;
|  Title of currently playing video. If it&#039;s in the database it will return the database title, else the filename&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.TVShowTitle&lt;br /&gt;
|  Title of currently playing episode&#039;s tvshow name&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Season&lt;br /&gt;
|  Season number of the currently playing episode, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Episode&lt;br /&gt;
|  Episode number of the currently playing episode&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Genre&lt;br /&gt;
|  Genre(s) of current movie, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Director&lt;br /&gt;
|  Director of current movie, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Country&lt;br /&gt;
|  Production country of current movie, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Year&lt;br /&gt;
|  Year of release of current movie, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Rating&lt;br /&gt;
|  IMDb user rating of current movie, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.UserRating&lt;br /&gt;
|  Shows the user rating of the currently playing item&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Votes&lt;br /&gt;
|  IMDb votes of current movie, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.RatingAndVotes&lt;br /&gt;
|  IMDb user rating and votes of current movie, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.mpaa&lt;br /&gt;
|  MPAA rating of current movie, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.IMDBNumber&lt;br /&gt;
|  The IMDB iD of the current video, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.EpisodeName&lt;br /&gt;
|  (PVR only) The name of the episode if the playing video is a TV Show, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.PlaylistPosition&lt;br /&gt;
|  Position of the current song in the current video playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.PlaylistLength&lt;br /&gt;
|  Total size of the current video playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Cast&lt;br /&gt;
|  A concatenated string of cast members of the current movie, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.CastAndRole&lt;br /&gt;
|  A concatenated string of cast members and roles of the current movie, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Album&lt;br /&gt;
|  Album from which the current Music Video is from, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Artist&lt;br /&gt;
|  Artist(s) of current Music Video, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Studio&lt;br /&gt;
|  Studio of current Music Video, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Writer&lt;br /&gt;
|  Name of Writer of current playing Video, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Tagline&lt;br /&gt;
|  Small Summary of current playing Video, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.PlotOutline&lt;br /&gt;
|  Small Summary of current playing Video, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Plot&lt;br /&gt;
|  Complete Text Summary of current playing Video, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.LastPlayed&lt;br /&gt;
|  Last play date of current playing Video, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|- class=&amp;quot;userrow&lt;br /&gt;
|  VideoPlayer.PlayCount&lt;br /&gt;
|  Playcount of current playing Video, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|- class=&amp;quot;userrow&lt;br /&gt;
|  VideoPlayer.VideoCodec&lt;br /&gt;
|  Shows the video codec of the currently playing video (common values: see ListItem.VideoCodec)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.VideoResolution&lt;br /&gt;
|  Shows the video resolution of the currently playing video (possible values: see ListItem.VideoResolution)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.VideoAspect&lt;br /&gt;
|  Shows the aspect ratio of the currently playing video (possible values: see ListItem.VideoAspect)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.AudioCodec&lt;br /&gt;
|  Shows the audio codec of the currently playing video, optionally &#039;n&#039; defines the number of the audiostream (common values: see ListItem.AudioCodec)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.AudioChannels&lt;br /&gt;
|  Shows the number of audio channels of the currently playing video (possible values: see ListItem.AudioChannels)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.AudioLanguage&lt;br /&gt;
|  Shows the language of the audio of the currently playing video(possible values: see ListItem.AudioLanguage)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.SubtitlesLanguage&lt;br /&gt;
|  Shows the language of the subtitle of the currently playing video (possible values: see ListItem.SubtitlesLanguage)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.StereoscopicMode&lt;br /&gt;
|  Shows the stereoscopic mode of the currently playing video (possible values: see ListItem.StereoscopicMode)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.EndTime&lt;br /&gt;
|  End date of the currently playing programme (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.NextTitle&lt;br /&gt;
|  Title of the programme that will be played next (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.NextGenre&lt;br /&gt;
|  Genre of the programme that will be played next (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.NextPlot&lt;br /&gt;
|  Plot of the programme that will be played next (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.NextPlotOutline&lt;br /&gt;
|  Plot outline of the programme that will be played next (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.NextStartTime&lt;br /&gt;
|  Start time of the programme that will be played next (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.NextEndTime&lt;br /&gt;
|  End time of the programme that will be played next (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.NextDuration&lt;br /&gt;
|  Duration of the programme that will be played next (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.ChannelName&lt;br /&gt;
|  Name of the curently tuned channel (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.ChannelNumberLabel&lt;br /&gt;
|  Channel and subchannel number of the tv channel that&#039;s currently playing (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.ChannelGroup&lt;br /&gt;
|  Group of the curently tuned channel (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.ParentalRating&lt;br /&gt;
|  Parental rating of the currently playing programme (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.DBID&lt;br /&gt;
| The database id of the currently playing video&lt;br /&gt;
| v17 Addition&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Playlist ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  Playlist.Length(media)&lt;br /&gt;
|  Total size of the current playlist. optional parameter media is either video or music.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Playlist.Position(media)&lt;br /&gt;
|  Position of the current item in the current playlist. optional parameter media is either video or music.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Playlist.Random&lt;br /&gt;
|  Returns &#039;On&#039; or &#039;Off&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Playlist.Repeat&lt;br /&gt;
|  Returns string ID&#039;s 592 (Repeat One), 593 (Repeat All), or 594 (Repeat Off)&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== PVR ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.NowRecordingTitle&lt;br /&gt;
|  Title of the programme being recorded&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.NowRecordingDateTime&lt;br /&gt;
|  Start date and time of the current recording&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.NowRecordingChannel&lt;br /&gt;
|  Channel number that&#039;s being recorded&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.NextRecordingTitle&lt;br /&gt;
|  Title of the next programme that will be recorded&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.NextRecordingDateTime&lt;br /&gt;
|  Start date and time of the next recording&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.NextRecordingChannel&lt;br /&gt;
|  Channel name of the next recording&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.BackendName&lt;br /&gt;
|  Name of the backend being used&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.BackendVersion&lt;br /&gt;
|  Version of the backend that&#039;s being used&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.BackendHost&lt;br /&gt;
|  Backend hostname&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.BackendDiskSpace&lt;br /&gt;
|  Available diskspace on the backend&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.BackendChannels&lt;br /&gt;
|  Number of available channels the backend provides&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.BackendTimers&lt;br /&gt;
|  Number of timers set for the backend&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.BackendRecordings&lt;br /&gt;
|  Number of recording available on the backend&lt;br /&gt;
|&lt;br /&gt;
|- &lt;br /&gt;
|  PVR.BackendDiskspace&lt;br /&gt;
|  Free diskspace available for recordings on the backend&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.BackendNumber&lt;br /&gt;
|  Backend number&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TotalDiscSpace&lt;br /&gt;
|  Total diskspace available for recordings&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.NextTimer&lt;br /&gt;
|  Next timer date&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.EpgEventDuration[(format)]&lt;br /&gt;
|  Returns the duration of the currently played title on TV. See ListItem.Duration for optinional formatting options&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.EpgEventElapsedTime[(format)]&lt;br /&gt;
|  Returns the time position of the currently played title on TV. See ListItem.Duration for optinional formatting options&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.EpgEventRemainingTime[(format)]&lt;br /&gt;
|  Returns the remaining time for currently playing epg event. See ListItem.Duration for optinional formatting options&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.EpgEventFinishTime[(format)]&lt;br /&gt;
|  Returns the time the currently playing epg event will end. See ListItem.Duration for optinional formatting options&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.EpgEventSeekTime[(format)]&lt;br /&gt;
|  Returns the seek time of the currently playing epg event. See ListItem.Duration for optinional formatting options&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.EpgEventProgress&lt;br /&gt;
|  Returns the position of currently played title on TV as integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeShiftStart[(format)]&lt;br /&gt;
|  Start position of the timeshift. See ListItem.Duration for optinional formatting options&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeShiftEnd[(format)]&lt;br /&gt;
|  End position of the timeshift. See ListItem.Duration for optinional formatting options&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeShiftCur[(format)]&lt;br /&gt;
|  Current position of the timeshift. See ListItem.Duration for optinional formatting options&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeShiftOffset[(format)]&lt;br /&gt;
|  Current offset of the timeshift. See ListItem.Duration for optinional formatting options&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeShiftProgress&lt;br /&gt;
|  Returns the position of currently timeshifted title on TV as interger&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.ActStreamClient&lt;br /&gt;
| Stream client name&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.ActStreamDevice&lt;br /&gt;
| Stream device name&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.ActStreamStatus&lt;br /&gt;
| Status of the stream&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.ActStreamSignal&lt;br /&gt;
| Signal quality of the stream&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.ActStreamSnr&lt;br /&gt;
| Signal to noise ratio of the stream&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.ActStreamBer&lt;br /&gt;
| Bit error rate of the stream&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.ActStreamUnc&lt;br /&gt;
| UNC value of the stream&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.ActStreamVideoBitRate&lt;br /&gt;
| Video bitrate of the stream&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.ActStreamAudioBitRate&lt;br /&gt;
| Audio bitrate of the stream&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.ActStreamDolbyBitRate&lt;br /&gt;
| Dolby bitrate of the stream&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.ActStreamProgrSignal&lt;br /&gt;
| Signal quality of the programme&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.ActStreamProgrSnr&lt;br /&gt;
| Signal to noise ratio of the programme&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.ActStreamEncryptionName&lt;br /&gt;
| Encryption used on the stream&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.TVNowRecordingTitle&lt;br /&gt;
| Title of the tv programme being recorded&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.TVNowRecordingDateTime&lt;br /&gt;
| Start date and time of the current tv recording&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.TVNowRecordingChannel&lt;br /&gt;
| Channel name of the current tv recording&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.TVNowRecordingChannelIcon&lt;br /&gt;
| Icon of the current recording TV channel&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.TVNextRecordingTitle&lt;br /&gt;
| Title of the next tv programme that will be recorded&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.TVNextRecordingDateTime&lt;br /&gt;
| Start date and time of the next tv recording&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.TVNextRecordingChannel&lt;br /&gt;
| Channel name of the next tv recording&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.TVNextRecordingChannelIcon&lt;br /&gt;
| Icon of the next recording tv channel&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.RadioNowRecordingTitle&lt;br /&gt;
| Title of the radio programme being recorded&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.RadioNowRecordingDateTime&lt;br /&gt;
| Start date and time of the current radio recording&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.RadioNowRecordingChannel&lt;br /&gt;
| Channel name of the current radio recording&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.RadioNowRecordingChannelIcon&lt;br /&gt;
| Icon of the current recording radio channel&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.RadioNextRecordingTitle&lt;br /&gt;
| Title of the next radio programme that will be recorded&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.RadioNextRecordingDateTime&lt;br /&gt;
| Start date and time of the next radio recording&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.RadioNextRecordingChannel&lt;br /&gt;
| Channel name of the next radio recording&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.ChannelNumberInput&lt;br /&gt;
|  Label displaying the number the user entered on remote or keyboard&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeshiftProgressDuration&lt;br /&gt;
|  Returns the duration of the PVR timeshift progress in the format hh:mm:ss. hh: will be omitted if hours value is zero&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeshiftProgressDuration(format)&lt;br /&gt;
|  Returns the duration of the PVR timeshift progress in different formats, hours (hh), minutes (mm) or seconds (ss)&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeshiftProgressStartTime&lt;br /&gt;
|  Returns the start time of the PVR timeshift progress in the format hh:mm:ss. hh: will be omitted if hours value is zero&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeshiftProgressStartTime(format)&lt;br /&gt;
|  Returns the start time of the PVR timeshift progress in different formats, hours (hh), minutes (mm) or seconds (ss)&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeshiftProgressEndTime&lt;br /&gt;
|  Returns the end time of the PVR timeshift progress in the format hh:mm:ss. hh: will be omitted if hours value is zero&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeshiftProgressEndTime(format)&lt;br /&gt;
|  Returns the end time of the PVR timeshift progress in different formats, hours (hh), minutes (mm) or seconds (ss)&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeshiftProgressPlayPos&lt;br /&gt;
|  Returns the percentage of the current play position within the PVR timeshift progress&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeshiftProgressEpgStart&lt;br /&gt;
|  Returns the percentage of the start of the currently playing epg event within the PVR timeshift progress&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeshiftProgressEpgEnd&lt;br /&gt;
|  Returns the percentage of the end of the currently playing epg event within the PVR timeshift progress&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeshiftProgressBufferStart&lt;br /&gt;
|  Returns the percentage of the start of the timeshift buffer within the PVR timeshift progress&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeshiftProgressBufferEnd&lt;br /&gt;
|  Returns the percentage of the end of the timeshift buffer within the PVR timeshift progress&lt;br /&gt;
|  v18&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== RDS ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  RDS.AudioLanguage&lt;br /&gt;
|  The from RDS reported audio language of channel&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.ChannelCountry&lt;br /&gt;
|  Country where the radio channel is sended&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.GetLine(number)&lt;br /&gt;
|  Returns the last sended RDS text messages on givern number, 0 is thelast and 4 rows are supported (0-3)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.Title&lt;br /&gt;
|  Title of item; e.g. track title of an album (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.Artist&lt;br /&gt;
|  A person or band/collective generally considered responsible for the work (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.Band&lt;br /&gt;
|  Band/orchestra/accompaniment/musician (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.Composer&lt;br /&gt;
|  Name of the original composer/author (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.Conductor&lt;br /&gt;
|  The artist(s) who performed the work. In classical music this would bethe conductor (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.Album&lt;br /&gt;
|  The collection name to which this track belongs (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.TrackNumber&lt;br /&gt;
|  The track number of the item on the album on which it was originallyreleased. (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.RadioStyle&lt;br /&gt;
|  The from radio channel used style of currently played part, e.g &amp;quot;popmusic&amp;quot;, &amp;quot;news&amp;quot; or &amp;quot;weather&amp;quot;&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.Comment&lt;br /&gt;
|  Radio station comment string if available (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoNews&lt;br /&gt;
|  Message / headline (if available) (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoNewsLocal&lt;br /&gt;
|  Local information news sended from radio channel (if available) (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoStock&lt;br /&gt;
|  Quote information; either as one part or as several distinct parts:&amp;quot;name 99latest value 99change 99high 99low 99volume&amp;quot; (if available) (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoStockSize&lt;br /&gt;
|  Number of rows present in stock information (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoSport&lt;br /&gt;
|  Result of a game; either as one part or as several distinct parts:&amp;quot;match 99result&amp;quot;, e.g. &amp;quot;Bayern München : Borussia 995:5&amp;quot;  (if available) (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoSportSize&lt;br /&gt;
|  Number of rows present in sport information (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoLottery&lt;br /&gt;
|  Raffle / lottery: &amp;quot;key word 99values&amp;quot; (if available) (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoLotterySize&lt;br /&gt;
|  Number of rows present in lottery information (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoWeather&lt;br /&gt;
|  Weather informations sended from radio channel (if available) (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoWeatherSize&lt;br /&gt;
|  Number of rows present in weather information (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoCinema&lt;br /&gt;
|  Information about movies in cinema (if available) (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoCinemaSize&lt;br /&gt;
|  Number of rows present in cinema information (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoHoroscope&lt;br /&gt;
|  Horoscope; either as one part or as two distinct parts:&amp;quot;key word 99text&amp;quot;, e.g. &amp;quot;sign of the zodiac 99blablabla&amp;quot; (if available) (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoHoroscopeSize&lt;br /&gt;
|  Number of rows present in horoscope information (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoOther&lt;br /&gt;
|  Other information, not especially specified: &amp;quot;key word 99info&amp;quot; (if available) (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoOtherSize&lt;br /&gt;
|  Number of rows present with other informations (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.ProgStation&lt;br /&gt;
|  Name of the radio channel@note becomes also be set from epg if from RDS not available&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.ProgNow&lt;br /&gt;
|  Now played program name@note becomes also be set from epg if from RDS not available&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.ProgNext&lt;br /&gt;
|  Next played program name (if available)@note becomes also be set from epg if from RDS not available&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.ProgHost&lt;br /&gt;
|  Name of the host of the radio show&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.ProgEditStaff&lt;br /&gt;
|  Name of the editorial staff; e.g. name of editorial journalist (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.ProgHomepage&lt;br /&gt;
|  Link to radio station homepage (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.ProgStyle&lt;br /&gt;
|  Human readable string about radiostyle defined from RDS or RBDS&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.PhoneHotline&lt;br /&gt;
|  The telephone number of the radio station&#039;s hotline (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.PhoneStudio&lt;br /&gt;
|  The telephone number of the radio station&#039;s studio (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.SmsStudio&lt;br /&gt;
|  The sms number of the radio stations studio (to send directly a sms to the studio) (if available) (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.EmailHotline&lt;br /&gt;
|  The email adress of the radio stations hotline (if available) (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.EmailStudio&lt;br /&gt;
|  The email adress of the radio stations studio (if available) (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Skin ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  Skin.CurrentTheme&lt;br /&gt;
|  Returns the current selected skin theme.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Skin.CurrentColourTheme&lt;br /&gt;
|  Returns the current selected colour theme of the skin.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Skin.Font&lt;br /&gt;
|  Returns the current fontset from Font.xml.&lt;br /&gt;
|  v18 addition&lt;br /&gt;
|-&lt;br /&gt;
|  Skin.String(name)&lt;br /&gt;
| Returns the &amp;lt;span class=&amp;quot;nobr&amp;quot;&amp;gt;user-set&amp;lt;/span&amp;gt; skin string, set via the Skin.SetString(name) &#039;&#039;&#039;[[List of Built In Functions]]&#039;&#039;&#039;. Allows skinners to have &amp;lt;span class=&amp;quot;nobr&amp;quot;&amp;gt;user-customisable&amp;lt;/span&amp;gt; labels.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Skin.AspectRatio&lt;br /&gt;
|  Returns the closest aspect ratio match using the resolution info from the skin&#039;s addon.xml file.&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Slideshow ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-  &lt;br /&gt;
|  Slideshow.Altitude&lt;br /&gt;
|  Shows the altitude in meters where the current picture was taken. This is the value of the EXIF GPSInfo.GPSAltitude tag.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Aperture&lt;br /&gt;
|  Shows the F-stop used to take the current picture. This is the value of the EXIF FNumber tag (hex code 0x829D).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Author&lt;br /&gt;
|  Shows the name of the person involved in writing about the current picture. This is the value of the IPTC Writer tag (hex code 0x7A).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Byline&lt;br /&gt;
|  Shows the name of the person who created the current picture.  This is the value of the IPTC Byline tag (hex code 0x50).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.BylineTitle&lt;br /&gt;
|  Shows the title of the person who created the current picture. This is the value of the IPTC BylineTitle tag (hex code 0x55).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.CameraMake&lt;br /&gt;
|  Shows the manufacturer of the camera used to take the current picture. This is the value of the EXIF Make tag (hex code 0x010F).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.CameraModel&lt;br /&gt;
|  Shows the manufacturer&#039;s model name or number of the camera used to take the current picture. This is the value of the EXIF Model tag (hex code 0x0110).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Caption&lt;br /&gt;
|  Shows a description of the current picture. This is the value of the IPTC Caption tag (hex code 0x78).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Category&lt;br /&gt;
|  Shows the subject of the current picture as a category code. This is the value of the IPTC Category tag (hex code 0x0F).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.CCDWidth&lt;br /&gt;
|  Shows the width of the CCD in the camera used to take the current picture. This is calculated from three EXIF tags (0xA002 * 0xA210 / 0xA20e).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.City&lt;br /&gt;
|  Shows the city where the current picture was taken. This is the value of the IPTC City tag (hex code 0x5A).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Colour&lt;br /&gt;
|  Shows whether the current picture is &amp;quot;Colour&amp;quot; or &amp;quot;Black and White&amp;quot;.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.CopyrightNotice&lt;br /&gt;
|  Shows the copyright notice of the current picture. This is the value of the IPTC Copyright tag (hex code 0x74).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Country&lt;br /&gt;
|  Shows the full name of the country where the current picture was taken. This is the value of the IPTC CountryName tag (hex code 0x65).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.CountryCode&lt;br /&gt;
|  Shows the country code of the country where the current picture was taken. This is the value of the IPTC CountryCode tag (hex code 0x64).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Credit&lt;br /&gt;
|  Shows who provided the current picture. This is the value of the IPTC Credit tag (hex code 0x6E).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.DigitalZoom&lt;br /&gt;
|  Shows the digital zoom ratio when the current picture was taken. This is the value of the EXIF .DigitalZoomRatio tag (hex code 0xA404).  &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.EXIFComment&lt;br /&gt;
|  Shows a description of the current picture. This is the value of the EXIF User Comment tag (hex code 0x9286). This is the same value as Slideshow.SlideComment.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.EXIFDate&lt;br /&gt;
|  Shows the localized date of the current picture. The short form of the date is used. The value of the EXIF DateTimeOriginal tag (hex code 0x9003) is preferred. If the DateTimeOriginal tag is not found, the value of DateTimeDigitized (hex code 0x9004) or of DateTime (hex code 0x0132) might be used.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.EXIFDescription&lt;br /&gt;
|  Shows a short description of the current picture. The SlideComment, EXIFComment, or Caption values might contain a longer description. This is the value of the EXIF ImageDescription tag (hex code 0x010E).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.EXIFSoftware&lt;br /&gt;
|  Shows the name and version of the firmware used by the camera that took the current picture. This is the value of the EXIF Software tag (hex code 0x0131).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.EXIFTime&lt;br /&gt;
|  Shows the date/timestamp of the current picture. The localized short form of the date and time is used. The value of the EXIF DateTimeOriginal tag (hex code 0x9003) is preferred. If the DateTimeOriginal tag is not found, the value of DateTimeDigitized (hex code 0x9004) or of DateTime (hex code 0x0132) might be used.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Exposure&lt;br /&gt;
|  Shows the class of the program used by the camera to set exposure when the current picture was taken. Values include &amp;quot;Manual&amp;quot;, &amp;quot;Program (Auto)&amp;quot;, &amp;quot;Aperture priority (Semi-Auto)&amp;quot;, &amp;quot;Shutter priority (semi-auto)&amp;quot;, etc. This is the value of the EXIF ExposureProgram tag (hex code 0x8822).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.ExposureBias&lt;br /&gt;
|  Shows the exposure bias of the current picture. Typically this is a number between -99.99 and 99.99. This is the value of the EXIF ExposureBiasValue tag (hex code 0x9204).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.ExposureMode&lt;br /&gt;
|  Shows the exposure mode of the current picture. The possible values are &amp;quot;Automatic&amp;quot;, &amp;quot;Manual&amp;quot;, and &amp;quot;Auto bracketing&amp;quot;. This is the value of the EXIF ExposureMode tag (hex code 0xA402).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.ExposureTime&lt;br /&gt;
|  Shows the exposure time of the current picture, in seconds. This is the value of the EXIF ExposureTime tag (hex code 0x829A). If the ExposureTime tag is not found, the ShutterSpeedValue tag (hex code 0x9201) might be used.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Filedate&lt;br /&gt;
|  Shows the file date of the current picture&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Filename&lt;br /&gt;
|  Shows the file name of the current picture&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Filesize&lt;br /&gt;
|  Shows the file size of the current picture&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.FlashUsed&lt;br /&gt;
|  Shows the status of flash when the current picture was taken. The value will be either &amp;quot;Yes&amp;quot; or &amp;quot;No&amp;quot;, and might include additional information. This is the value of the EXIF Flash tag (hex code 0x9209).  &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.FocalLength&lt;br /&gt;
|  Shows the focal length of the lens, in mm. This is the value of the EXIF FocalLength tag (hex code 0x920A).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.FocusDistance&lt;br /&gt;
|  Shows the distance to the subject, in meters. This is the value of the EXIF SubjectDistance tag (hex code 0x9206).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Headline&lt;br /&gt;
|  Shows a synopsis of the contents of the current picture. This is the value of the IPTC Headline tag (hex code 0x69).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.ImageType&lt;br /&gt;
|  Shows the color components of the current picture. This is the value of the IPTC ImageType tag (hex code 0x82).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.IPTCDate&lt;br /&gt;
|  Shows the date when the intellectual content of the current picture was created, rather than when the picture was created. This is the value of the IPTC DateCreated tag (hex code 0x37).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.ISOEquivalence&lt;br /&gt;
|  Shows the ISO speed of the camera when the current picture was taken. This is the value of the EXIF ISOSpeedRatings tag (hex code 0x8827).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Keywords&lt;br /&gt;
|  Shows keywords assigned to the current picture. This is the value of the IPTC Keywords tag (hex code 0x19).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Latitude&lt;br /&gt;
|  Shows the latitude where the current picture was taken (degrees, minutes, seconds North or South). This is the value of the EXIF GPSInfo.GPSLatitude and GPSInfo.GPSLatitudeRef tags.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.LightSource&lt;br /&gt;
|  Shows the kind of light source when the picture was taken. Possible values include &amp;quot;Daylight&amp;quot;, &amp;quot;Fluorescent&amp;quot;, &amp;quot;Incandescent&amp;quot;, etc. This is the value of the EXIF LightSource tag (hex code 0x9208).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.LongEXIFDate&lt;br /&gt;
|  Shows only the localized date of the current picture. The long form of the date is used. The value of the EXIF DateTimeOriginal tag (hex code 0x9003) is preferred. If the DateTimeOriginal tag is not found, the value of DateTimeDigitized (hex code 0x9004) or of DateTime (hex code 0x0132) might be used.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.LongEXIFTime&lt;br /&gt;
|  Shows the date/timestamp of the current picture. The localized long form of the date and time is used. The value of the EXIF DateTimeOriginal tag (hex code 0x9003) is preferred. if the DateTimeOriginal tag is not found, the value of DateTimeDigitized (hex code 0x9004) or of DateTime (hex code 0x0132) might be used.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Longitude&lt;br /&gt;
|  Shows the longitude where the current picture was taken (degrees, minutes, seconds East or West). This is the value of the EXIF GPSInfo.GPSLongitude and GPSInfo.GPSLongitudeRef tags.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.MeteringMode&lt;br /&gt;
|  Shows the metering mode used when the current picture was taken. The possible values are &amp;quot;Center weight&amp;quot;, &amp;quot;Spot&amp;quot;, or &amp;quot;Matrix&amp;quot;. This is the value of the EXIF MeteringMode tag (hex code 0x9207).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.ObjectName&lt;br /&gt;
|  Shows a shorthand reference for the current picture. This is the value of the IPTC ObjectName tag (hex code 0x05).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Orientation&lt;br /&gt;
|  Shows the orientation of the current picture. Possible values are &amp;quot;Top Left&amp;quot;, &amp;quot;Top Right&amp;quot;, &amp;quot;Left Top&amp;quot;, &amp;quot;Right Bottom&amp;quot;, etc. This is the value of the EXIF Orientation tag (hex code 0x0112).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Path&lt;br /&gt;
|  Shows the file path of the current picture&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Process&lt;br /&gt;
|  Shows the process used to compress the current picture&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.ReferenceService&lt;br /&gt;
|  Shows the Service Identifier of a prior envelope to which the current picture refers. This is the value of the IPTC ReferenceService tag (hex code 0x2D).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Resolution&lt;br /&gt;
|  Shows the dimensions of the current picture (Width x Height)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.SlideComment&lt;br /&gt;
|  Shows a description of the current picture. This is the value of the EXIF User Comment tag (hex code 0x9286). This is the same value as Slideshow.EXIFComment.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.SlideIndex&lt;br /&gt;
|  Shows the slide index of the current picture&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Source&lt;br /&gt;
|  Shows the original owner of the current picture. This is the value of the IPTC Source tag (hex code 0x73).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.SpecialInstructions&lt;br /&gt;
|  Shows other editorial instructions concerning the use of the current picture. This is the value of the IPTC SpecialInstructions tag (hex code 0x28).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.State&lt;br /&gt;
|  Shows the State/Province where the current picture was taken. This is the value of the IPTC ProvinceState tag (hex code 0x5F).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Sublocation&lt;br /&gt;
|  Shows the location within a city where the current picture was taken - might indicate the nearest landmark. This is the value of the IPTC SubLocation tag (hex code 0x5C).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.SupplementalCategories&lt;br /&gt;
|  Shows supplemental category codes to further refine the subject of the current picture. This is the value of the IPTC SuppCategory tag (hex code 0x14).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.TimeCreated&lt;br /&gt;
|  Shows the time when the intellectual content of the current picture was created, rather than when the picture was created. This is the value of the IPTC TimeCreated tag (hex code 0x3C).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.TransmissionReference&lt;br /&gt;
|  Shows a code representing the location of original transmission of the current picture. This is the value of the IPTC TransmissionReference tag (hex code 0x67).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Urgency&lt;br /&gt;
|  Shows the urgency of the current picture. Values are 1-9. The 1 is most urgent. Some image management programs use urgency to indicate picture rating, where urgency 1 is 5 stars and urgency 5 is 1 star. Urgencies 6-9 are not used for rating. This is the value of the IPTC Urgency tag (hex code 0x0A).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.WhiteBalance&lt;br /&gt;
|  Shows the white balance mode set when the current picture was taken. The possible values are &amp;quot;Manual&amp;quot; and &amp;quot;Auto&amp;quot;. This is the value of the EXIF WhiteBalance tag (hex code 0xA403).&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== System ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  System.Time&lt;br /&gt;
|  Current time&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.Time(format)&lt;br /&gt;
|  Shows hours (hh), minutes (mm) or seconds (ss). When 12 hour clock is used (xx) will return AM/PM. Also supported: (hh:mm), (mm:ss), (hh:mm:ss), (hh:mm:ss). (xx) option added after dharma&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.Date&lt;br /&gt;
|  Current date&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.Date(format)&lt;br /&gt;
|  Show current date using format, available markings: d (day of month 1-31), dd (day of month 01-31), ddd (short day of the week Mon-Sun), DDD (long day of the week Monday-Sunday), m (month 1-12), mm (month 01-12), mmm (short month name Jan-Dec), MMM (long month name January-December), yy (2-digit year), yyyy (4-digit year). Added after dharma.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.AlarmPos&lt;br /&gt;
|  Shutdown Timer position&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.BatteryLevel&lt;br /&gt;
|  Returns the remaining battery level in range 0-100&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.FreeSpace&lt;br /&gt;
|  Total Freespace on the drive&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.UsedSpace&lt;br /&gt;
|  Total Usedspace on the drive&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.TotalSpace&lt;br /&gt;
|  Totalspace on the drive&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.UsedSpacePercent&lt;br /&gt;
|  Total Usedspace Percent on the drive&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.FreeSpacePercent&lt;br /&gt;
|  Total Freespace Percent on the drive&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.CPUTemperature&lt;br /&gt;
|  Current CPU temperature&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.CpuUsage&lt;br /&gt;
|  Displays the cpu usage for each individual cpu core.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.CoreUsage(id)&lt;br /&gt;
|  Displays the usage of the cpu core with the given &#039;id&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.GPUTemperature&lt;br /&gt;
|  Current GPU temperature&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.FanSpeed&lt;br /&gt;
|  Current fan speed&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.BuildVersion&lt;br /&gt;
|  Version of build&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.BuildDate&lt;br /&gt;
|  Date of build&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.FriendlyName&lt;br /&gt;
|  Returns the Kodi instance name. It will auto append (%hostname%) in case the device name was not changed. eg. &amp;quot;Kodi (htpc)&amp;quot;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.FPS&lt;br /&gt;
|  Current rendering speed (frames per second)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.FreeMemory&lt;br /&gt;
|  Amount of free memory in Mb&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.Memory(format)&lt;br /&gt;
|  Available formats: used, used.percent, free, free.percent, total&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.ScreenMode&lt;br /&gt;
|  Screenmode (eg windowed / fullscreen)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.ScreenWidth&lt;br /&gt;
|  Width of screen in pixels&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.ScreenHeight&lt;br /&gt;
|  Height of screen in pixels&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.StartupWindow&lt;br /&gt;
|  The Window Kodi will load on startup&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.CurrentWindow&lt;br /&gt;
|  Current Window we are in&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.CurrentControl&lt;br /&gt;
|  Current focused control&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.CurrentControlID&lt;br /&gt;
|  ID of the currently focused control.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.DVDLabel&lt;br /&gt;
|  Label of the disk in the &amp;lt;span class=&amp;quot;nobr&amp;quot;&amp;gt;DVD-ROM&amp;lt;/span&amp;gt; drive&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.HddTemperature&lt;br /&gt;
|  Hdd temperature&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.OSVersionInfo&lt;br /&gt;
|  System name + kernel version&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.KernelVersion (deprecated)&lt;br /&gt;
|  System name + kernel version&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.Uptime&lt;br /&gt;
|  System current uptime&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.TotalUptime&lt;br /&gt;
|  System total uptime&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.CpuFrequency&lt;br /&gt;
|  System cpu frequency&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.ScreenResolution&lt;br /&gt;
|  Screen resolution&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.VideoEncoderInfo&lt;br /&gt;
|  Video encoder info&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.InternetState&lt;br /&gt;
|  Will return the internet state, connected or not connected&lt;br /&gt;
and for Conditional use: Connected-&amp;gt;TRUE, not Connected-&amp;gt;FALSE, do not use to check status in a pythonscript since it is threaded.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.Language&lt;br /&gt;
|  Shows the current language&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.ProfileName&lt;br /&gt;
|  Shows the User name of the currently logged in Kodi user&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.ProfileCount&lt;br /&gt;
|  Shows the number of defined profiles&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.ProfileAutoLogin&lt;br /&gt;
|  The profile Kodi will auto login to&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.Progressbar&lt;br /&gt;
|  The percentage of the currently active progress.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.StereoscopicMode&lt;br /&gt;
|  The prefered stereoscopic mode (settings &amp;gt; video &amp;gt; playback)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.TemperatureUnits&lt;br /&gt;
|  Shows Celsius or Fahrenheit symbol&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.AddonTitle(id)&lt;br /&gt;
|  Returns the title of the addon with the given id&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.AddonVersion(id)&lt;br /&gt;
|  Returns the version of the addon with the given id&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Visualisation ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  Visualisation.Preset&lt;br /&gt;
|  Shows the current preset of the visualisation.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Visualisation.Name&lt;br /&gt;
|  Shows the name of the visualisation.&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Weather labels ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  Weather.Conditions&lt;br /&gt;
|  Current weather conditions – this is looked up in a background process.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Weather.Temperature&lt;br /&gt;
|  Current weather temperature&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Weather.Location&lt;br /&gt;
|  City/town which the above two items are for&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Weather.fanartcode&lt;br /&gt;
|  Current weather fanartcode.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Weather.plugin&lt;br /&gt;
|  Current weather plugin.&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Window ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  Window([window]).Property(key)&lt;br /&gt;
|  Window property. (key can be any value, optional window can be id or name)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Window.Property(xmlfile)&lt;br /&gt;
|  Displays the name of the xml file currently shown&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Window(AddonBrowser).Property(Updated)&lt;br /&gt;
|  Shows the date and time the addon repo was last checked for updates&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Window.Property(Addon.ID)&lt;br /&gt;
| Returns the id of the selected addon, in DialogAddonSettings.xml&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Window(Home).Property(key)&lt;br /&gt;
|  The home window has the following info labels.&lt;br /&gt;
Movies.Count, Movies.Watched, Movies.UnWatched, TVShows.Count, TVShows.Watched, TVShows.UnWatched, Episodes.Count, Episodes.Watched, Episodes.UnWatched, MusicVideos.Count, MusicVideos.Watched, MusicVideos.UnWatched, Music.SongsCount, Music.AlbumsCount, Music.ArtistsCount&lt;br /&gt;
&lt;br /&gt;
LatestMovie.[1-10].Title, LatestMovie.[1-10].Year, LatestMovie.[1-10].RunningTime, LatestMovie.[1-10].Rating, LatestMovie.[1-10].Plot, LatestMovie.[1-10].Trailer, LatestMovie.[1-10].Thumb, LatestMovie.[1-10].Fanart, LatestMovie.[1-10].Path&lt;br /&gt;
&lt;br /&gt;
LatestEpisode.[1-10].ShowTitle, LatestEpisode.[1-10].EpisodeTitle, LatestEpisode.[1-10].EpisodeNo, LatestEpisode.[1-10].EpisodeSeason, LatestEpisode.[1-10].EpisodeNumber, LatestEpisode.[1-10].Rating, LatestEpisode.[1-10].Plot, LatestEpisode.[1-10].Thumb, LatestEpisode.[1-10].ShowThumb, LatestEpisode.[1-10].SeasonThumb, LatestEpisode.[1-10].Fanart, LatestEpisode.[1-10].Path&lt;br /&gt;
&lt;br /&gt;
LatestMusicVideo.[1-10].Title, LatestMusicVideo.[1-10].Thumb, LatestMusicVideo.[1-10].Year, LatestMusicVideo.[1-10].Plot, LatestMusicVideo.[1-10].RunningTime, LatestMusicVideo.[1-10].Path, LatestMusicVideo.[1-10].Artist, LatestMusicVideo.[1-10].Fanart&lt;br /&gt;
&lt;br /&gt;
LatestSong.[1-10].Title, LatestSong.[1-10].Artist, LatestSong.[1-10].Album, LatestSong.[1-10].Year, LatestSong.[1-10].Rating, LatestSong.[1-10].Thumb, LatestSong.[1-10].Fanart, LatestSong.[1-10].Path&lt;br /&gt;
&lt;br /&gt;
LatestAlbum.[1-10].Title, LatestAlbum.[1-10].Artist, LatestAlbum.[1-10].Year, LatestAlbum.[1-10].Rating, LatestAlbum.[1-10].Thumb, LatestAlbum.[1-10].Fanart, LatestAlbum.[1-10].Path&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Window(Weather).Property(key)&lt;br /&gt;
|  The weather window has the following info labels.&lt;br /&gt;
Location, Updated, Current.Condition, Current.Temperature, Current.FeelsLike, Current.UVIndex, Current.Wind (From &amp;lt;wind dir.&amp;gt; at &amp;lt;speed&amp;gt; &amp;lt;unit&amp;gt;), Current.WindSpeed, Current.WindDirection, Current.DewPoint, Current.Humidity, Day[0-6].Title, Day[0-6].HighTemp, Day[0-6].LowTemp, Day[0-6].Outlook, WeatherProvider&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Data set in Current.Temperature, Current.FeelsLike, Day[0-6].HighTemp, Day[0-6].LowTemp should be provided in Celsius, and will be autoconverted according to System.TemperatureUnits&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Images Available in Kodi ===&lt;br /&gt;
&lt;br /&gt;
See &#039;&#039;&#039;[[Artwork/Accessing with skins and JSON-RPC]]&#039;&#039;&#039; for the general pattern of accessing artwork for media items. Below is a list of other possible images available as InfoLabels.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Art(type)&lt;br /&gt;
|  Artwork for the current listitem.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Fanart.Image&lt;br /&gt;
|  Fanart image for the parent TV Show. Note: Deprecated, use ListItem.Art(tvshow.fanart) instead.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Thumb&lt;br /&gt;
|  Shows the thumbnail (if it exists) of the currently selected item in a list or thumb control. Note: Deprecated but still available, returns the same as ListItem.Art(thumb).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Icon&lt;br /&gt;
|  Shows the thumbnail (if it exists) of the currently selected item in a list or thumb control. If no thumbnail image exists, it will show the default icon.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.ActualIcon&lt;br /&gt;
|  Shows the default icon of the currently selected item in a list or thumb control.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Overlay&lt;br /&gt;
|  Shows the Overlay Icon status (compressed file [OverlayRAR.png], watched [OverlayWatched.png], unwatched [OverlayUnwatched.png], locked [OverlayLocked.png]) of the currently selected item in a list or thumb control.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.EPGEventIcon&lt;br /&gt;
|  Returns the icon of the EPG programme (if available).&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Fanart_Image)&lt;br /&gt;
|  Fanart Image currently selected item or of the parent TV show. Note: Deprecated, use ListItem.Art(fanart) or ListItem.Art(tvshow.fanart) instead.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Cover&lt;br /&gt;
|  Cover of currently playing album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Fanart_Image)&lt;br /&gt;
|  Fanart image of the currently playing artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Art(type)&lt;br /&gt;
|  Artwork for the currently playing item.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Icon&lt;br /&gt;
|  Shows the thumbnail (if it exists) of the currently playing item. If no thumbnail image exists, it will show the icon.&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  Player.StarRating&lt;br /&gt;
|  Returns a value of 0 to 5 as a graphical display from images named rating0.png to rating5.png of the skin&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Pvr.NowRecordingChannelIcon&lt;br /&gt;
|  Channel icon of the programme currently being recorded.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Pvr.NextRecordingChannelIcon&lt;br /&gt;
|  Channel icon of the programme that will be recorded next.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Pvr.EPGEventIcon&lt;br /&gt;
|  Returns the icon of the currently playing EPG programme (if available).&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  Skin.String(name)&lt;br /&gt;
| Returns the image or image folder set by the user via a Skin.SetPath(name) or Skin.SetImage(name) &#039;&#039;&#039;[[List of Built In Functions]]&#039;&#039;&#039;. Allows skinners to have &amp;lt;span class=&amp;quot;nobr&amp;quot;&amp;gt;user-customisable&amp;lt;/span&amp;gt; images and multiimages.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.AddonIcon(id)&lt;br /&gt;
|  Returns the Icon of the specified addon. Instead of specifying the id directly, one can also use an infolabel (eg. $INFO[Skin.String(Foo)])&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.ProfileThumb&lt;br /&gt;
|  Shows the Thumbnail image of the currently logged in Kodi user&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Cover&lt;br /&gt;
|  Cover of currently playing movie.  Note: Deprecated, use ListItem.Art(poster) instead.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Weather.ConditionsIcon&lt;br /&gt;
|  Image of current weather conditions (NOTE: Can be used to load/refresh weather conditions)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Window([window]).Property(key)&lt;br /&gt;
|  Window property. (key can be any value, optional window can be id or name)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Window(Weather).Property(key)&lt;br /&gt;
|  The weather window has the following info images.&lt;br /&gt;
Current.ConditionIcon, Day[0-6].OutlookIcon, Current.FanartCode, Day[0-6].FanartCode, WeatherProviderLogo&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section end=&amp;quot;main content&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&#039;&#039;&#039;Development:&#039;&#039;&#039;&lt;br /&gt;
* [[Add-on development]]&lt;br /&gt;
* [[Skinning]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Skin development]]&lt;br /&gt;
[[Category:Add-on development]]&lt;/div&gt;</summary>
		<author><name>Black eagle</name></author>
	</entry>
	<entry>
		<id>https://kodi.wiki/index.php?title=List_of_boolean_conditions&amp;diff=221611</id>
		<title>List of boolean conditions</title>
		<link rel="alternate" type="text/html" href="https://kodi.wiki/index.php?title=List_of_boolean_conditions&amp;diff=221611"/>
		<updated>2020-09-20T12:23:46Z</updated>

		<summary type="html">&lt;p&gt;Black eagle: /* MusicPlayer */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{see also|Conditional Visibility}}&lt;br /&gt;
&amp;lt;section begin=&amp;quot;main content&amp;quot; /&amp;gt;&lt;br /&gt;
Skins can use boolean conditions with the &amp;lt;visible&amp;gt; tag or with condition attributes. Scripts can read boolean conditions with &amp;lt;code&amp;gt;xbmc.getCondVisibility(condition)&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Container ===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container.HasThumb&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the current container you are in has a thumb assigned to it&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container.Content(parameter)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the current container you are in contains the following: &#039;&#039;&#039;files, songs, artists, albums, movies, tvshows, seasons, episodes, musicvideos, genres, years, actors, playlists, plugins, studios, directors, sets, tags, countries, roles, images&#039;&#039;&#039; (Note: these currently only work in the Video and Music Library or unless a Plugin has set the value) also available are &#039;&#039;&#039;Addons&#039;&#039;&#039; true when a list of add-ons is shown &#039;&#039;&#039;LiveTV&#039;&#039;&#039; true when a htsp (tvheadend) directory is shown&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container(id).OnNext&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the container with id (or current container if id is omitted) is moving to the next item.  Allows views to be custom-designed (such as 3D coverviews etc.)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container(id).OnScrollNext&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the container with id (or current container if id is omitted) is scrolling to the next item. Differs from OnNext in that OnNext triggers on movement even if there is no scroll involved.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container(id).OnPrevious&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the container with id (or current container if id is omitted) is moving to the previous item.  Allows views to be custom-designed (such as 3D coverviews etc.)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container(id).OnScrollPrevious&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the container with id (or current container if id is omitted) is scrolling to the previous item. Differs from OnPrevious in that OnPrevious triggers on movement even if there is no scroll involved.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container(id).HasFocus(item_number)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the container with id (or current container if id is omitted) has static content and is focused on the item with id item_number.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container.HasFiles&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the container contains files.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container.HasFolders&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the container contains folders.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container(id).HasNext&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the container or textbox with id (id) has a next page.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container(id).HasPrevious&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the container or textbox with id (id) has a previous page.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container(id).IsUpdating&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the container with [[Dynamic List Content|dynamic list content]] is currently updating.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container.IsStacked&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the container is currently in stacked mode.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container.CanFilter&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true when the current container can be filtered.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container.CanFilterAdvanced&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true when advanced filtering can be applied to the current container.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container.Filtered&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true when a mediafilter is applied to the current container.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container(id).HasParent&amp;lt;/code&amp;gt;&lt;br /&gt;
| Return true when the container with id (or current container if id is omitted) contains a parent (&#039;..&#039;) item.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container.SortDirection(ascending)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true the sort direction of a container is ascending.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container.SortDirection(descending)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true the sort direction of a container is descending.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container(id).Row(row)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the container with id (or current container if id is omitted) is focused on the row given.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container(id).Column(col)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the container with id (or current container if id is omitted) is focused on the column given.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container(id).Position(pos)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the container with id (or current container if id is omitted) is focused on the position given.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Container(id).Scrolling&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the user is currently scrolling through the container with id (or current container if id is omitted).  Note that this is slightly delayed from the actual scroll start.  Use Container(id).OnScrollNext/OnScrollPrevious to trigger animations immediately on scroll.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).SubItem&lt;br /&gt;
| Returns true if the container with id (or current container if id is omitted) is focused on the specified subitem.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.Sortmethod(id)&lt;br /&gt;
| Returns true if the current sort method matches the specified SortID [[https://kodi.wiki/view/List_of_built-in_functions#List_of_sort_methods see list of sort methods]].&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Control ===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Control.IsEnabled(id)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the control with id &amp;quot;id&amp;quot; is enabled.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Control.IsVisible(id)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the control with id &amp;quot;id&amp;quot; is visible.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Control.HasFocus(id)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the currently focused control has id &amp;quot;id&amp;quot;.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ControlGroup(group).HasFocus(id)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the control group with id “group” has control id “id” as it&#039;s focused item. If “id” is not present, or is 0, then it will return true if the currently focused control is in the control group with id “group”. Note that if the control group with id “group” does not have focus, then this will still return true if the last focused item in the group had control id “id”. &lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Integer ===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Integer.IsEqual([[InfoLabels|info]],number)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the value of the [[InfoLabels|infolabel]] is equal to the supplied number.&amp;lt;br /&amp;gt;Example: Integer.IsEqual(ListItem.Year,2000)&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Integer.IsEven([[InfoLabels|info]])&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the value of the [[InfoLabels|infolabel]] is even.&amp;lt;br /&amp;gt;Example: Integer.IsEven(ListItem.CurrentItem)&lt;br /&gt;
| {{nowrap|v19 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Integer.IsGreater([[InfoLabels|info]],number)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the value of the [[InfoLabels|infolabel]] is greater than to the supplied number.&amp;lt;br /&amp;gt;Example: Integer.IsGreater(ListItem.Year,2000)&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Integer.IsGreaterOrEqual([[InfoLabels|info]],number)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the value of the [[InfoLabels|infolabel]] is greater or equal to the supplied number.&amp;lt;br /&amp;gt;Example: Integer.IsGreaterOrEqual(ListItem.Year,2000)&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Integer.IsLess([[InfoLabels|info]],number)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the value of the [[InfoLabels|infolabel]] is less than the supplied number.&amp;lt;br /&amp;gt;Example: Integer.IsLess(ListItem.Year,2000)&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Integer.IsLessOrEqual([[InfoLabels|info]],number)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the value of the [[InfoLabels|infolabel]] is less or equal to the supplied number.&amp;lt;br /&amp;gt;Example: Integer.IsLessOrEqual(ListItem.Year,2000)&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Integer.IsOdd([[InfoLabels|info]])&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the value of the [[InfoLabels|infolabel]] is odd.&amp;lt;br /&amp;gt;Example: Integer.IsOdd(ListItem.CurrentItem)&lt;br /&gt;
| {{nowrap|v19 Addition}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Library ===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Library.HasContent(string)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the Kodi libraries have the content from string.  Valid Strings are (Video, Music, Movies, TVShows, MusicVideos, MovieSets)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Library.IsScanningMusic&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the music library is being updated&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Library.IsScanningVideo&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the video library is being updated&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Library.HasContent(Role, Composer)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Tag can be Composer, Conductor, Orchestra, Lyricist, Remixer, Arranger, Engineer, Producer, DJMixer or Mixer. Returns true if there are any artists with that role in the library&lt;br /&gt;
| v17 addition&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== ListItem ===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ListItem.IsFolder&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns whether the current ListItem is a folder&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ListItem.IsPlaying&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns whether the current ListItem.* [[InfoLabels|info labels]] and images are currently Playing media&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ListItem.IsPlaybable&amp;lt;/code&amp;gt;&lt;br /&gt;
| returns True when the selected programme can be played (PVR)&lt;br /&gt;
| v19 addition&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ListItem.IsResumable&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true when the current ListItem has been partially played&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ListItem.IsCollection&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true when the current ListItem is a movie set&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ListItem.IsSelected&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns whether the current ListItem is selected (f.e. currently playing in playlist window)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ListItem.HasArchive&amp;lt;/code&amp;gt;&lt;br /&gt;
| returns True when the selected channel has a server-side back buffer (PVR)&lt;br /&gt;
| v19 addition&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ListItem.HasEpg&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true when the selected programme has epg info (PVR)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ListItem.HasReminder&amp;lt;/code&amp;gt;&lt;br /&gt;
| returns True if the item has a reminder set (PVR)&lt;br /&gt;
| v19 addition&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ListItem.HasReminderRule&amp;lt;/code&amp;gt;&lt;br /&gt;
| returns True if the item was scheduled by a reminder timer rule (PVR)&lt;br /&gt;
| v19 addition&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ListItem.HasTimer&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true when a recording timer has been set for the selected programme (PVR)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ListItem.IsRecording&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true when the selected programme is being recorded (PVR)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ListItem.IsEncrypted&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true when the selected programme is encrypted (PVR)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ListItem.IsStereoscopic&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true when the selected video is a 3D (stereoscopic) video&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ListItem.Property(IsSpecial)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns whether the current Season/Episode is a Special&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ListItem.Property(DateLabel)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Can be used in the rulerlayout of the epggrid control. Will return true if the item is a date label, returns false if the item is a time label.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ListItem.Property(Addon.IsEnabled)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true when the selected addon is enabled (for use in the addon info dialog only).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ListItem.Property(Addon.IsInstalled)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true when the selected addon is installed (for use in the addon info dialog only).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ListItem.Property(Addon.HasUpdate)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true when there&#039;s an update available for the selected addon.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ListItem.HasTimerSchedule&amp;lt;/code&amp;gt;&lt;br /&gt;
|  Whether the item is part of a repeating timer schedule (PVR).&lt;br /&gt;
|  v16 addition&lt;br /&gt;
|-&lt;br /&gt;
|  &amp;lt;code&amp;gt;ListItem.TimerHasError&amp;lt;/code&amp;gt;&lt;br /&gt;
|  Whether the item has a timer and it won&#039;t be recorded because of an error (PVR).&lt;br /&gt;
|  v17 addition&lt;br /&gt;
|-&lt;br /&gt;
|  &amp;lt;code&amp;gt;ListItem.TimerHasConflict&amp;lt;/code&amp;gt;&lt;br /&gt;
|  Whether the item has a timer and it won&#039;t be recorded because of a conflict (PVR).&lt;br /&gt;
|  v17 addition&lt;br /&gt;
|-&lt;br /&gt;
|  &amp;lt;code&amp;gt;ListItem.TimerIsActive&amp;lt;/code&amp;gt;&lt;br /&gt;
|  Whether the item has a timer that will be recorded, i.e. the timer is enabled (PVR). &lt;br /&gt;
|  v17 addition&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ListItem.Property(Addon.Orphaned)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the slected addon is orphaned (not needed anymore by any other addon)&lt;br /&gt;
| v17 addition&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ListItem.IsParentFolder&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true is the slected item is the &#039;up&#039; item&lt;br /&gt;
| v17 addition&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ListItem.IsNew&amp;lt;/code&amp;gt;&lt;br /&gt;
| [PVR] will return true if the item is a premiere (for example, a Live TV show that will be first aired).&lt;br /&gt;
| v19 addition&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Player ===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.HasMedia&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the player has an audio or video file.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.HasAudio&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the player has an audio file.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.HasDuration&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if Media isn&#039;t a true stream&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.HasVideo&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the player has a video file.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.Passthrough&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the player is using audio passthrough.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.Playing&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the player is currently playing (ie not ffwding, rewinding or paused.)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.Paused&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the player is paused.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.Forwarding&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the player is fast forwarding.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.Forwarding2x&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the player is fast forwarding at 2x.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.Forwarding4x&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the player is fast forwarding at 4x.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.Forwarding8x&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the player is fast forwarding at 8x.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.Forwarding16x&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the player is fast forwarding at 16x.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.Forwarding32x&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the player is fast forwarding at 32x.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.Rewinding&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the player is rewinding.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.Rewinding2x&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the player is rewinding at 2x.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.Rewinding4x&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the player is rewinding at 4x.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.Rewinding8x&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the player is rewinding at 8x.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.Rewinding16x&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the player is rewinding at 16x.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.Rewinding32x&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the player is rewinding at 32x.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.PauseEnabled&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the currently playing stream can be paused.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.Caching&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the player is current &amp;lt;span class=&amp;quot;nobr&amp;quot;&amp;gt;re-caching&amp;lt;/span&amp;gt; data (internet based video playback).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.DisplayAfterSeek&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true for the first 2.5 seconds after a seek.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.Seeking&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if a seek is in progress&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.SeekEnabled&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if player can seek&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.ShowTime&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the user has requested the time to show (occurs in video fullscreen)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.ShowInfo&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the user has requested the song info to show (occurs in visualisation fullscreen and slideshow)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.IsInternetStream&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the player is playing an internet stream.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.Muted&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the volume is muted.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.Process(videohwdecoder)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the currently playing video is decoded in hardware&lt;br /&gt;
| v17 addition&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.TempoEnabled&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the current player supports changing the playback speed&lt;br /&gt;
| v17 addition&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Player.IsTempo&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the current playbackspeed is not equal to 1&lt;br /&gt;
| v17 addition&lt;br /&gt;
|-&lt;br /&gt;
| Player.HasGame&lt;br /&gt;
| Returns true if the player is playing a game&lt;br /&gt;
| v18&lt;br /&gt;
|-&lt;br /&gt;
| Player.HasResolutions&lt;br /&gt;
| Returns true when multiple resolutions are available&lt;br /&gt;
| v18&lt;br /&gt;
|-&lt;br /&gt;
| Player.FrameAdvance&lt;br /&gt;
| Returns true if player is in frame advance mode&lt;br /&gt;
| v18&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== MusicPlayer ====&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;MusicPlayer.HasNext&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the music player has a next song queued in the Playlist.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;MusicPlayer.HasPrevious&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the music player has a a Previous Song in the Playlist .&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;MusicPlayer.Offset(number).Exists&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the music players playlist has a song queued in position (number).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;MusicPlayer.Content(parameter)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the current audio you are playing matches the specified content. The following values are accepted: files, livetv&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;MusicPartyMode.Enabled&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if Party Mode is enabled&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;MusicPlayer.IsMultiDisc&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the current album consists of two or more discs&lt;br /&gt;
| v19 addition&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== VideoPlayer ====&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;VideoPlayer.UsingOverlays&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the video player is using the hardware overlays render method. Useful, as with hardware overlays you have no alpha blending to the video image, so shadows etc. need redoing, or disabling.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;VideoPlayer.IsFullscreen&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the video player is in fullscreen mode.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;VideoPlayer.HasMenu&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the video player has a menu (ie is playing a DVD)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;VideoPlayer.HasInfo&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the current playing video has information from the library or from a plugin (eg director/plot etc.)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;VideoPlayer.Content(parameter)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the current Video you are playing is contained in corresponding Video Library sections. The following values are accepted : files, movies, episodes, musicvideos, livetv&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;VideoPlayer.HasSubtitles&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if there are subtitles available for video. (available for version 11.0 and above)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;VideoPlayer.IsStereoscopic&amp;lt;/code&amp;gt;&lt;br /&gt;
|  Returns true when the currently playing video is a 3D (stereoscopic) video&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;VideoPlayer.SubtitlesEnabled&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if subtitles are turned on for video. (available for version 11.0 and above)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;VideoPlayer.HasEpg&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true when epg information is available for the currently playing programme (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;VideoPlayer.HasTeletext&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true when teletext is available.&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== PlayList ===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Playlist.IsRandom&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the player is in random mode.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Playlist.IsRepeat&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the player is in repeat all mode.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Playlist.IsRepeatOne&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the player is in repeat one mode.&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== PVR ===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Pvr.HasTimer&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true when a recording timer is active.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Pvr.HasNonRecordingTimer&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true when a non recording timer is active.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Pvr.HasTVChannels&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if there are tv channels available&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Pvr.HasRadioChannels&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if there are radio channels available&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Pvr.IsPlayingTv&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true when live tv is being watched.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Pvr.IsPlayingRadio&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true when live radio is being listened to.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Pvr.IsPlayingRecording&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true when a recording is being watched.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Pvr.IsRecording&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true when the system is recording a tv programme.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Pvr.IsTimeShift&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true when the playback is timeshifted.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Pvr.ActStreamIsEncrypted&amp;lt;/code&amp;gt;&lt;br /&gt;
|  Returns true if the stream is encrypted&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Pvr.RadioNextRecordingChannelIcon&amp;lt;/code&amp;gt;&lt;br /&gt;
| Icon of the next recording radio channel&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Pvr.IsRecordingTV&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true when the system is recording a tv programme.&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Pvr.HasTVTimer&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if at least one tv timer is active.&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Pvr.HasNonRecordingTVTimer&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if there are tv timers present who currently not do recording&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Pvr.IsRecordingRadio&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true when the system is recording a radio programme.&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Pvr.HasRadioTimer&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if at least one radio timer is active.&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Pvr.HasNonRecordingRadioTimer&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if there are radio timers present who currently not do recording&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Pvr.CanRecordPlayingChannel&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the player can record the current internet stream.&lt;br /&gt;
| {{nowrap|v18 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Pvr.IsRecordingPlayingChannel&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the player is recording the current internet stream.&lt;br /&gt;
| {{nowrap|v18 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Pvr.IsPlayingActiveRecording&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true when Kodi is currently playing a recording that is in progress.&lt;br /&gt;
| {{nowrap|v19 Addition}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== RDS ===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RDS.HasRds&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if RDS is present&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RDS.HasRadioText&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if RDS contains also Radiotext&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RDS.HasRadioTextPlus&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if RDS with Radiotext contains also the plus information&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RDS.HasHotline&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if a hotline phone number is present (Only be available on RadiotextPlus)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RDS.HasStudio&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if a studio name is present (Only be available on RadiotextPlus)&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Skin ===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Skin.HasTheme(theme)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the user has selected the theme with name ?theme?.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Skin.HasSetting(setting)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns the state of the &amp;lt;span class=&amp;quot;nobr&amp;quot;&amp;gt;skin-specified&amp;lt;/span&amp;gt; setting ?setting?. You can toggle a setting from a button by using &amp;lt;onclick&amp;gt;Skin.ToggleSetting(setting)&amp;lt;/onclick&amp;gt;.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Skin.String(string)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns whether the skin string (set via Skin.SetString, Skin.SetPath, or Skin.SetImage) is &amp;lt;span class=&amp;quot;nobr&amp;quot;&amp;gt;non-empty&amp;lt;/span&amp;gt;.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Skin.String(string1,string2)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Same as String.IsEqual(Skin.String(string1),string2). Returns true if Skin.String(string1) equals string2.&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== SlideShow ===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Slideshow.IsActive&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the picture slideshow is running&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Slideshow.IsPaused&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the picture slideshow is paused&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Slideshow.IsRandom&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the picture slideshow is in random mode&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Slideshow.IsVideo&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the picture slideshow is playing a video&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== String ===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;String.IsEmpty([[InfoLabels|info]])&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the [[InfoLabels|info]] is empty.&amp;lt;br /&amp;gt;Example of info: ListItem.Title, ListItem.Genre. Please note that string can also be a $LOCALIZE[]. Also note that in a panelview or similar this only works on the focused item.&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;String.IsEqual([[InfoLabels|info]],string)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the [[InfoLabels|info]] is equal to the given string.&amp;lt;br /&amp;gt;Example of info: ListItem.Title, ListItem.Genre. Please note that string can also be a $LOCALIZE[] or [[InfoLabels|info label]] (without $INFO prefix). Also note that in a panelview or similar this only works on the focused item.&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;String.StartsWith([[InfoLabels|info]],substring)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the [[InfoLabels|info]] starts with the given substring.&amp;lt;br /&amp;gt;Example of info: ListItem.Title, ListItem.Genre. Please note that string can also be a $LOCALIZE[]. Also note that in a panelview or similar this only works on the focused item.&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;String.EndsWith([[InfoLabels|info]],substring)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the [[InfoLabels|info]] ends with the given substring.&amp;lt;br /&amp;gt;Example of info: ListItem.Title, ListItem.Genre. Please note that string can also be a $LOCALIZE[]. Also note that in a panelview or similar this only works on the focused item.&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;String.Contains([[InfoLabels|info]],substring)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the [[InfoLabels|info]] contains the given substring.&amp;lt;br /&amp;gt;Example of info: ListItem.Title, ListItem.Genre. Please note that string can also be a $LOCALIZE[]. Also note that in a panelview or similar this only works on the focused item.&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== System ===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.AddonIsEnabled(id)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the specified addon is enabled on the system&lt;br /&gt;
| v19 addition&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.HasAddon(id)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the specified addon is installed on the system.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.HasPVRAddon&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if at least one PVR addon is installed on the system.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.HasAlarm(alarm)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the system has the ?alarm? alarm set.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.AlarmLessOrEqual(alarmname,seconds)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the alarm with ?alarmname? has less or equal to ?seconds? left. Standard use would be system.alarmlessorequal(shutdowntimer,119), which would return true when the shutdowntimer has less then 2 minutes left.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.HasNetwork&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the ethernet cable is plugged in.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.HasMediadvd&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if there is a CD or DVD in the &amp;lt;span class=&amp;quot;nobr&amp;quot;&amp;gt;DVD-ROM&amp;lt;/span&amp;gt; drive.&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.HasMediaAudioCD&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if there is an audio CD in the optical drive. False if no drive available, empty drive or other medium.&lt;br /&gt;
| v18 Addition&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.IdleTime(time)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if Kodi has had no input for ?time? amount of seconds.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.IsStandalone&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if Kodi is running in standalone mode.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.IsFullscreen&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if Kodi is running fullscreen.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.IsLoggedOn&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if a user is currently logged on under a [[Profiles|profile]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.HasLoginScreen&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the [[Profiles|profile]] login screen is enabled&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.HasActiveModalDialog&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true true when a modal dialog is active, disregarding any animations (Leia (v18) and newer versions)&lt;br /&gt;
| v18&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.HasVisibleModalDialog&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if a modal dialog is visible, eg when the animations are finished (Leia (v18) and newer versions)&lt;br /&gt;
| v18&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.Time(startTime,endTime)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the current system time is &amp;gt;= startTime and &amp;lt; endTime.  endTime is optional.  Time must be specified in the format HH:mm, using a 24 hour clock.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.Date(startDate,endDate)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the current system date is &amp;gt;= startDate and &amp;lt; endDate.  endDate is optional.  Date must be specified in the format MM-DD.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.Platform.Linux&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if Kodi is running on a linux/unix based computer.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.Platform.Linux.RaspberryPi&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if Kodi is running on a Raspberry Pi.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.Platform.Windows&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if Kodi is running on a windows based computer.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.Platform.OSX&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if Kodi is running on an OSX based computer.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.Platform.IOS&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if Kodi is running on an IOS device.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.Platform.Darwin&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if Kodi is running on an OSX or IOS system.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.Platform.Android&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if Kodi is running on an android device.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.Platform.UWP&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if Kodi is running on Universal Windows Platform (UWP).&lt;br /&gt;
| {{nowrap|v18 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.CanPowerDown&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if Kodi can powerdown the system.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.CanSuspend&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if Kodi can suspend the system.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.CanHibernate&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if Kodi can hibernate the system.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.HasHiddenInput&amp;lt;/code&amp;gt;&lt;br /&gt;
| Return true when to osd keyboard/numeric dialog requests a password/pincode.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.CanReboot&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if Kodi can reboot the system.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.ScreenSaverActive&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if ScreenSaver is active.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.Setting(hidewatched)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if &#039;hide watched items&#039; is selected.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.IsInhibit&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true when shutdown on idle is disabled.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.HasShutdown&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true when shutdown on idle is enabled.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.HasCMS&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if colour management is supported in Kodi.&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.GetBool(boolean)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns the value of any standard system boolean setting.  Will not work with settings in advancedsettings.xml&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.HasLocks&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the profile has lock preferences configured&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;System.IsMaster&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the profile has entered the master mode&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Visualisation ===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Visualisation.Enabled&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if any visualisation has been set in settings (so not None).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Visualisation.HasPresets&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the visualisation has built in presets.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Visualisation.Locked&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the current visualisation preset is locked (eg in Milkdrop.)&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Weather ===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Weather.IsFetched&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the weather data has been downloaded.&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Window ===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Window.IsVisible(window)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the window is visible (includes fade out time on dialogs)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Window.IsActive(window)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the window with id or title ?window? is active (excludes fade out time on dialogs) [[Window IDs|See here for a list of windows]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Window.IsTopMost(window)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the window with id or title ?window? is on top of the window stack (excludes fade out time on dialogs) [[Window IDs|See here for a list of windows]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Window.IsMedia&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if this window is a media window (programs, music, video, scripts, pictures)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Window.Next(window)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the window with id or title ?window? is being moved to. [[Window IDs|See here for a list of windows]]. Only valid while windows are changing.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Window.Previous(window)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the window with id or title ?window? is being moved from. [[Window IDs|See here for a list of windows]]. Only valid while windows are changing.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Window.Property(IsRadio)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Returns true if the window is a radio window (for use in the PVR windows)&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;Window.Is(name)&amp;lt;/code&amp;gt;&lt;br /&gt;
| Useful in xml files that are shared between multiple windows/dialogs. Will return true if the window with the given name is visible&lt;br /&gt;
| v17 addition&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;section end=&amp;quot;main content&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&#039;&#039;&#039;Development:&#039;&#039;&#039;&lt;br /&gt;
* [[Add-on development]]&lt;br /&gt;
* [[Skinning]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Skin development]]&lt;br /&gt;
[[Category:Add-on development]]&lt;/div&gt;</summary>
		<author><name>Black eagle</name></author>
	</entry>
	<entry>
		<id>https://kodi.wiki/index.php?title=InfoLabels&amp;diff=219845</id>
		<title>InfoLabels</title>
		<link rel="alternate" type="text/html" href="https://kodi.wiki/index.php?title=InfoLabels&amp;diff=219845"/>
		<updated>2020-09-04T11:56:11Z</updated>

		<summary type="html">&lt;p&gt;Black eagle: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{mininav|[[Development]]|[[Add-on development]]|[[Skinning]]}}&lt;br /&gt;
&amp;lt;section begin=&amp;quot;main content&amp;quot; /&amp;gt;&lt;br /&gt;
Skins can use infolabels with $INFO[infolabel] or the &amp;lt;info&amp;gt; tag. Scripts can read infolabels with &amp;lt;code&amp;gt;xbmc.getInfoLabel(&#039;infolabel&#039;)&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
An up-to-date list can be found here [https://github.com/xbmc/xbmc/blob/master/xbmc/GUIInfoManager.cpp GUIInfoManager.cpp]&lt;br /&gt;
&lt;br /&gt;
=== Container ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  Container.Content&lt;br /&gt;
|  Shows content of the current container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.FolderPath&lt;br /&gt;
|  Shows complete path of currently displayed folder&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.FolderName&lt;br /&gt;
|  Shows top most folder in currently displayed folder&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.Viewmode&lt;br /&gt;
|  Returns the current viewmode (list, icons etc.)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.SortMethod&lt;br /&gt;
|  Returns the current sort method (returns the localized name of: title, year, rating, etc.)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.SortOrder&lt;br /&gt;
|  Returns the current sort order (Ascending/Descending)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.PluginName&lt;br /&gt;
|  Returns the current plugins base folder name&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.PluginCategory&lt;br /&gt;
|  Returns the current plugins category (set by the scripter)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.ShowPlot&lt;br /&gt;
|  Returns the TV Show plot of the current container and can be used at season and episode level&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.ShowTitle&lt;br /&gt;
|  Returns the TV Show title of the current container and can be used at season and episode level&lt;br /&gt;
|  v17 addition&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).NumPages&lt;br /&gt;
|  Number of pages in the container with given id.  If no id is specified it grabs the current container.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).NumItems&lt;br /&gt;
|  Number of items in the container or grouplist with given id.  If no id is specified it grabs the current container.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).NumAllItems&lt;br /&gt;
|  Number of all items in the container or grouplist with given id including parent folder item.&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).NumNonFolderItems&lt;br /&gt;
|  Number of items in the container or grouplist with given id excluding all folder items.&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).CurrentPage&lt;br /&gt;
|  Current page in the container with given id.  If no id is specified it grabs the current container.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).CurrentItem&lt;br /&gt;
|  Current absolute item in the container or grouplist with given id.  If no id is specified it grabs the current container.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).Position&lt;br /&gt;
|  Returns the current focused position of the container / grouplist (id) as a numeric label.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).Column&lt;br /&gt;
|  Returns the column number of the focused position in a panel container.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).Row&lt;br /&gt;
|  Returns the row number of the focused position in a panel container.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.Totaltime&lt;br /&gt;
|  Returns the total time of all items in the current container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.TotalWatched&lt;br /&gt;
|  Returns the number of watched items in the current container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.TotalUnWatched&lt;br /&gt;
|  Returns the number of unwatched items in the current container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).ListItem(offset).Label&lt;br /&gt;
|  Shows ListItem.Label for a specific List or Panel Container with a offset &#039;&#039;( eg: Container(50).Listitem(2).Label )&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).ListItem(offset).Label2&lt;br /&gt;
|  Shows ListItem.Label2 for a specific List or Panel Container with a offset &#039;&#039;( eg: Container(50).Listitem(-2).Label2 )&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).ListItem(offset).Icon&lt;br /&gt;
|  Shows ListItem.Icon for a specific List or Panel Container with a offset &#039;&#039;( eg: Container(52).Listitem(1).Icon)&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).ListItem(offset).ActualIcon&lt;br /&gt;
|  Shows ListItem.ActualIcon for a specific List or Panel Container with a offset &#039;&#039;( eg: Container(50).Listitem(0).ActualIcon )&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).ListItem(offset).Thumb&lt;br /&gt;
|  Shows ListItem.Thumb for a specific List or Panel Container with a offset &#039;&#039;( eg: Container(50).Listitem(0).Thumb )&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).ListItemNoWrap(offset).Property&lt;br /&gt;
|  Basically returns the same as ListItem(offset) but it won&#039;t wrap. That means if the last item of a list is focused, ListItemNoWrap(1) will be empty while ListItem(1) will return the first item of the list. &#039;&#039;Property&#039;&#039; has to be replaced with Label, Label2, Icon etc. &#039;&#039;( eg: Container(50).ListitemNoWrap(1).Plot )&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).ListItemPosition(id).[infolabel]&lt;br /&gt;
|  Shows the infolabel for an item at position &#039;id&#039; in a Container. the id is an offset to the first *visible* item of the container. &#039;&#039;( eg: Container(50).ListItemPosition(4).Genre )&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container(id).ListItemAbsolute(id).[infolabel]&lt;br /&gt;
|  Shows the infolabel for an item in a Container. the item id is the absolute position in the container. &#039;&#039;( eg: Container(50).ListItemAbsolute(4).Genre )&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.Property(addoncategory)&lt;br /&gt;
|  Returns the current add-on category&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.Property(reponame)&lt;br /&gt;
|  Returns the current add-on repository name&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Container.ViewCount&lt;br /&gt;
| The number of available skin view modes for the current container listing.&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Control ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  Control.GetLabel(id)[.index()]&lt;br /&gt;
|  Returns the label value or texture name of the control with the given id. Optionally you can specify index(1) to retrieve label2 from an Edit control.&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Fanart ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  Fanart.Color1&lt;br /&gt;
|  Returns the first of three colors included in the currently selected &#039;&#039;&#039;[[Fanart]]&#039;&#039;&#039; theme for the parent TV Show.  Colors are arranged Lightest to Darkest.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Fanart.Color2&lt;br /&gt;
|  Returns the second of three colors included in the currently selected &#039;&#039;&#039;[[Fanart]]&#039;&#039;&#039; theme for the parent TV Show.  Colors are arranged Lightest to Darkest.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Fanart.Color3&lt;br /&gt;
|  Returns the third of three colors included in the currently selected &#039;&#039;&#039;[[Fanart]]&#039;&#039;&#039; theme for the parent TV Show.  Colors are arranged Lightest to Darkest.&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Game ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  Game.Title&lt;br /&gt;
|  Name of the game&lt;br /&gt;
| v18&lt;br /&gt;
|-&lt;br /&gt;
|  Game.Platform&lt;br /&gt;
|  Platform the game runs on (eg. Atari 2600)&lt;br /&gt;
| v18&lt;br /&gt;
|-&lt;br /&gt;
|  Game.Genres&lt;br /&gt;
|  Gerne of the game (eg. Action)&lt;br /&gt;
| v18&lt;br /&gt;
|-&lt;br /&gt;
|  Game.Publisher&lt;br /&gt;
|  Publishing company of the game (eg. Nintendo)&lt;br /&gt;
| v18&lt;br /&gt;
|-&lt;br /&gt;
|  Game.Developer&lt;br /&gt;
|  Developer of the game&lt;br /&gt;
| v18&lt;br /&gt;
|-&lt;br /&gt;
|  Game.Overview&lt;br /&gt;
|  Game description&lt;br /&gt;
| v18&lt;br /&gt;
|-&lt;br /&gt;
|  Game.Year&lt;br /&gt;
|  Year the game was released&lt;br /&gt;
| v18&lt;br /&gt;
|-&lt;br /&gt;
|  Game.GameClient&lt;br /&gt;
|  Name of the used emulator&lt;br /&gt;
| v18&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== ListItem ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Label&lt;br /&gt;
|  Shows the left label of the currently selected item in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Label2&lt;br /&gt;
|  Shows the right label of the currently selected item in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Title&lt;br /&gt;
|  Shows the title of the currently selected song or movie in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.OriginalTitle&lt;br /&gt;
|  Shows the original title of the currently selected movie in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.SortLetter&lt;br /&gt;
|  Shows the first letter of the current file in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.TrackNumber&lt;br /&gt;
|  Shows the track number of the currently selected song in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Artist&lt;br /&gt;
|  Shows the artist of the currently selected song in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AlbumArtist&lt;br /&gt;
|  Shows the artist of the currently selected album in a list&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Artist_Born)&lt;br /&gt;
|  Date of Birth of the currently selected Artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Artist_Died)&lt;br /&gt;
|  Date of Death of the currently selected Artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Artist_Formed)&lt;br /&gt;
|  Formation date of the currently selected Band&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Artist_Disbanded)&lt;br /&gt;
|  Disbanding date of the currently selected Band&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Artist_YearsActive)&lt;br /&gt;
|  Years the currently selected artist has been active&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Artist_Instrument)&lt;br /&gt;
|  Instruments played by the currently selected artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Artist_Description)&lt;br /&gt;
|  Shows a biography of the currently selected artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Artist_Mood)&lt;br /&gt;
|  Shows the moods of the currently selected artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Artist_Style)&lt;br /&gt;
|  Shows the styles of the currently selected artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Artist_Genre)&lt;br /&gt;
|  Shows the genre of the currently selected artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Listitem.Property(Artist_Sortname)&lt;br /&gt;
|  Sortname of the currently selected Artist&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  Listitem.Property(Artist_Type)&lt;br /&gt;
|  Type of the currently selected Artist - person, group, orchestra, choir etc.&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  Listitem.Property(Artist_Gender)&lt;br /&gt;
|  Gender of the currently selected Artist - male, female, other&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  Listitem.Property(Artist_Disambiguation)&lt;br /&gt;
|  Brief description of the currently selected Artist that differentiates them from others with the same name&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Album&lt;br /&gt;
|  Shows the album of the currently selected song in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Album_Mood)&lt;br /&gt;
|  Shows the moods of the currently selected Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Album_Style)&lt;br /&gt;
|  Shows the styles of the currently selected Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Album_Theme)&lt;br /&gt;
|  Shows the themes of the currently selected Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Album_Type)&lt;br /&gt;
|  Shows the Album Type (e.g. compilation, enhanced, explicit lyrics) of the currently selected Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Album_Label)&lt;br /&gt;
|  Shows the record label of the currently selected Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Album_Description)&lt;br /&gt;
|  Shows a review of the currently selected Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Album_Rating)&lt;br /&gt;
|  Shows the scraped rating of the currently selected Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Album_UserRating)&lt;br /&gt;
|  Shows the user rating of the currently selected Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.DiscNumber&lt;br /&gt;
|  Shows the disc number of the currently selected song in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Year&lt;br /&gt;
|  Shows the year of the currently selected song, album or movie in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Premiered&lt;br /&gt;
|  Shows the release/aired date of the currently selected episode, show, movie or EPG item in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Genre&lt;br /&gt;
|  Shows the genre of the currently selected song, album or movie in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Director&lt;br /&gt;
|  Shows the director of the currently selected movie in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Country&lt;br /&gt;
|  Shows the production country of the currently selected movie in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Episode&lt;br /&gt;
|  Shows the episode number value for the currently selected episode. It also shows the number of total, watched or unwatched episodes for the currently selected tvshow or season, based on the the current watched filter.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Season&lt;br /&gt;
|  Shows the season value for the currently selected tvshow&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.TVShowTitle&lt;br /&gt;
|  Shows the name value for the currently selected tvshow in the season and episode depth of the video library&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(TotalSeasons)&lt;br /&gt;
|  Shows the total number of seasons for the currently selected tvshow&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(TotalEpisodes)&lt;br /&gt;
|  Shows the total number of episodes for the currently selected tvshow or season&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(WatchedEpisodes)&lt;br /&gt;
|  Shows the number of watched episodes for the currently selected tvshow or season&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(UnWatchedEpisodes)&lt;br /&gt;
|  Shows the number of unwatched episodes for the currently selected tvshow or season&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(NumEpisodes)&lt;br /&gt;
|  Shows the number of total, watched or unwatched episodes for the currently selected tvshow or season, based on the the current watched filter.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureAperture&lt;br /&gt;
|  Shows the F-stop used to take the selected picture. This is the value of the EXIF FNumber tag (hex code 0x829D).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureAuthor&lt;br /&gt;
|  Shows the name of the person involved in writing about the selected picture. This is the value of the IPTC Writer tag (hex code 0x7A).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureByline&lt;br /&gt;
|  Shows the name of the person who created the selected picture.  This is the value of the IPTC Byline tag (hex code 0x50).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureBylineTitle&lt;br /&gt;
|  Shows the title of the person who created the selected picture. This is the value of the IPTC BylineTitle tag (hex code 0x55).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureCamMake&lt;br /&gt;
|  Shows the manufacturer of the camera used to take the selected picture. This is the value of the EXIF Make tag (hex code 0x010F).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureCamModel&lt;br /&gt;
|  Shows the manufacturer&#039;s model name or number of the camera used to take the selected picture. This is the value of the EXIF Model tag (hex code 0x0110).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureCaption&lt;br /&gt;
|  Shows a description of the selected picture. This is the value of the IPTC Caption tag (hex code 0x78).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureCategory&lt;br /&gt;
|  Shows the subject of the selected picture as a category code. This is the value of the IPTC Category tag (hex code 0x0F).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureCCDWidth&lt;br /&gt;
|  Shows the width of the CCD in the camera used to take the selected picture. This is calculated from three EXIF tags (0xA002 * 0xA210 / 0xA20e).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureCity&lt;br /&gt;
|  Shows the city where the selected picture was taken. This is the value of the IPTC City tag (hex code 0x5A).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureColour&lt;br /&gt;
|  Shows whether the selected picture is &amp;quot;Colour&amp;quot; or &amp;quot;Black and White&amp;quot;.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureComment&lt;br /&gt;
|  Shows a description of the selected picture. This is the value of the EXIF User Comment tag (hex code 0x9286). This is the same value as Slideshow.SlideComment.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureCopyrightNotice&lt;br /&gt;
|  Shows the copyright notice of the selected picture. This is the value of the IPTC Copyright tag (hex code 0x74).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureCountry&lt;br /&gt;
|  Shows the full name of the country where the selected picture was taken. This is the value of the IPTC CountryName tag (hex code 0x65).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureCountryCode&lt;br /&gt;
|  Shows the country code of the country where the selected picture was taken. This is the value of the IPTC CountryCode tag (hex code 0x64).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureCredit&lt;br /&gt;
|  Shows who provided the selected picture. This is the value of the IPTC Credit tag (hex code 0x6E).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureDate&lt;br /&gt;
|  Shows the localized date of the selected picture. The short form of the date is used. The value of the EXIF DateTimeOriginal tag (hex code 0x9003) is preferred. If the DateTimeOriginal tag is not found, the value of DateTimeDigitized (hex code 0x9004) or of DateTime (hex code 0x0132) might be used.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureDatetime&lt;br /&gt;
|  Shows the date/timestamp of the selected picture. The localized short form of the date and time is used. The value of the EXIF DateTimeOriginal tag (hex code 0x9003) is preferred. If the DateTimeOriginal tag is not found, the value of DateTimeDigitized (hex code 0x9004) or of DateTime (hex code 0x0132) might be used.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureDesc&lt;br /&gt;
|  Shows a short description of the selected picture. The SlideComment, EXIFComment, or Caption values might contain a longer description. This is the value of the EXIF ImageDescription tag (hex code 0x010E).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureDigitalZoom&lt;br /&gt;
|  Shows the digital zoom ratio when the selected picture was taken. This is the value of the EXIF DigitalZoomRatio tag (hex code 0xA404).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureExpMode&lt;br /&gt;
|  Shows the exposure mode of the selected picture. The possible values are &amp;quot;Automatic&amp;quot;, &amp;quot;Manual&amp;quot;, and &amp;quot;Auto bracketing&amp;quot;. This is the value of the EXIF ExposureMode tag (hex code 0xA402).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureExposure&lt;br /&gt;
|  Shows the class of the program used by the camera to set exposure when the selected picture was taken. Values include &amp;quot;Manual&amp;quot;, &amp;quot;Program (Auto)&amp;quot;, &amp;quot;Aperture priority (Semi-Auto)&amp;quot;, &amp;quot;Shutter priority (semi-auto)&amp;quot;, etc. This is the value of the EXIF ExposureProgram tag (hex code 0x8822).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureExposureBias&lt;br /&gt;
|  Shows the exposure bias of the selected picture. Typically this is a number between -99.99 and 99.99. This is the value of the EXIF ExposureBiasValue tag (hex code 0x9204).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureExpTime&lt;br /&gt;
|  Shows the exposure time of the selected picture, in seconds. This is the value of the EXIF ExposureTime tag (hex code 0x829A). If the ExposureTime tag is not found, the ShutterSpeedValue tag (hex code 0x9201) might be used.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureFlashUsed&lt;br /&gt;
|  Shows the status of flash when the selected picture was taken. The value will be either &amp;quot;Yes&amp;quot; or &amp;quot;No&amp;quot;, and might include additional information. This is the value of the EXIF Flash tag (hex code 0x9209).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureFocalLen&lt;br /&gt;
|  Shows the lens focal length of the selected picture&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureFocusDist&lt;br /&gt;
|  Shows the focal length of the lens, in mm. This is the value of the EXIF FocalLength tag (hex code 0x920A).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureGPSLat&lt;br /&gt;
|  Shows the latitude where the selected picture was taken (degrees, minutes, seconds North or South). This is the value of the EXIF GPSInfo.GPSLatitude and GPSInfo.GPSLatitudeRef tags.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureGPSLon&lt;br /&gt;
|  Shows the longitude where the selected picture was taken (degrees, minutes, seconds East or West). This is the value of the EXIF GPSInfo.GPSLongitude and GPSInfo.GPSLongitudeRef tags.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureGPSAlt&lt;br /&gt;
|  Shows the altitude in meters where the selected picture was taken. This is the value of the EXIF GPSInfo.GPSAltitude tag.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureHeadline&lt;br /&gt;
|  Shows a synopsis of the contents of the selected picture. This is the value of the IPTC Headline tag (hex code 0x69).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureImageType&lt;br /&gt;
|  Shows the color components of the selected picture. This is the value of the IPTC ImageType tag (hex code 0x82).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureIPTCDate&lt;br /&gt;
|  Shows the date when the intellectual content of the selected picture was created, rather than when the picture was created. This is the value of the IPTC DateCreated tag (hex code 0x37).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureIPTCTime&lt;br /&gt;
|  Shows the time when the intellectual content of the selected picture was created, rather than when the picture was created. This is the value of the IPTC TimeCreated tag (hex code 0x3C).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureISO&lt;br /&gt;
|  Shows the ISO speed of the camera when the selected picture was taken. This is the value of the EXIF ISOSpeedRatings tag (hex code 0x8827).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureKeywords&lt;br /&gt;
|  Shows keywords assigned to the selected picture. This is the value of the IPTC Keywords tag (hex code 0x19).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureLightSource&lt;br /&gt;
|  Shows the kind of light source when the picture was taken. Possible values include &amp;quot;Daylight&amp;quot;, &amp;quot;Fluorescent&amp;quot;, &amp;quot;Incandescent&amp;quot;, etc. This is the value of the EXIF LightSource tag (hex code 0x9208).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureLongDate&lt;br /&gt;
|  Shows only the localized date of the selected picture. The long form of the date is used. The value of the EXIF DateTimeOriginal tag (hex code 0x9003) is preferred. If the DateTimeOriginal tag is not found, the value of DateTimeDigitized (hex code 0x9004) or of DateTime (hex code 0x0132) might be used.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureLongDatetime&lt;br /&gt;
|  Shows the date/timestamp of the selected picture. The localized long form of the date and time is used. The value of the EXIF DateTimeOriginal tag (hex code 0x9003) is preferred. if the DateTimeOriginal tag is not found, the value of DateTimeDigitized (hex code 0x9004) or of DateTime (hex code 0x0132) might be used.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureMeteringMode&lt;br /&gt;
|  Shows the metering mode used when the selected picture was taken. The possible values are &amp;quot;Center weight&amp;quot;, &amp;quot;Spot&amp;quot;, or &amp;quot;Matrix&amp;quot;. This is the value of the EXIF MeteringMode tag (hex code 0x9207).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureObjectName&lt;br /&gt;
|  Shows a shorthand reference for the selected picture. This is the value of the IPTC ObjectName tag (hex code 0x05).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureOrientation&lt;br /&gt;
|  Shows the orientation of the selected picture. Possible values are &amp;quot;Top Left&amp;quot;, &amp;quot;Top Right&amp;quot;, &amp;quot;Left Top&amp;quot;, &amp;quot;Right Bottom&amp;quot;, etc. This is the value of the EXIF Orientation tag (hex code 0x0112).&lt;br /&gt;
|&lt;br /&gt;
|-     &lt;br /&gt;
|  ListItem.PicturePath&lt;br /&gt;
|  Shows the filename and path of the selected picture&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureProcess&lt;br /&gt;
|  Shows the process used to compress the selected picture&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureReferenceService&lt;br /&gt;
|  Shows the Service Identifier of a prior envelope to which the selected picture refers. This is the value of the IPTC ReferenceService tag (hex code 0x2D).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureResolution&lt;br /&gt;
|  Shows the dimensions of the selected picture&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureSource&lt;br /&gt;
|  Shows the original owner of the selected picture. This is the value of the IPTC Source tag (hex code 0x73).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureSpecialInstructions&lt;br /&gt;
|  Shows other editorial instructions concerning the use of the selected picture. This is the value of the IPTC SpecialInstructions tag (hex code 0x28).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureState&lt;br /&gt;
|  Shows the State/Province where the selected picture was taken. This is the value of the IPTC ProvinceState tag (hex code 0x5F).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureSublocation&lt;br /&gt;
|  Shows the location within a city where the selected picture was taken - might indicate the nearest landmark. This is the value of the IPTC SubLocation tag (hex code 0x5C).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureSupplementalCategories&lt;br /&gt;
|  Shows supplemental category codes to further refine the subject of the selected picture. This is the value of the IPTC SuppCategory tag (hex code 0x14).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureTransmissionReference&lt;br /&gt;
|  Shows a code representing the location of original transmission of the selected picture. This is the value of the IPTC TransmissionReference tag (hex code 0x67).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureUrgency&lt;br /&gt;
|  Shows the urgency of the selected picture. Values are 1-9. The &amp;quot;1&amp;quot; is most urgent. Some image management programs use urgency to indicate picture rating, where urgency &amp;quot;1&amp;quot; is 5 stars and urgency &amp;quot;5&amp;quot; is 1 star. Urgencies 6-9 are not used for rating. This is the value of the IPTC Urgency tag (hex code 0x0A).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PictureWhiteBalance&lt;br /&gt;
|  Shows the white balance mode set when the selected picture was taken. The possible values are &amp;quot;Manual&amp;quot; and &amp;quot;Auto&amp;quot;. This is the value of the EXIF WhiteBalance tag (hex code 0xA403).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.FileName&lt;br /&gt;
|  Shows the filename of the currently selected song or movie in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.FileNameNoExtension&lt;br /&gt;
|  Returns the filename without its extension.&lt;br /&gt;
|  v19&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Path&lt;br /&gt;
|  Shows the complete path of the currently selected song or movie in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.FolderName&lt;br /&gt;
|  Shows top most folder of the path of the currently selected song or movie in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.FolderPath&lt;br /&gt;
|  Shows the complete path of the currently selected song or movie in a container (without user details).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.FileNameAndPath&lt;br /&gt;
|  Shows the full path with filename of the currently selected song or movie in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.FileExtension&lt;br /&gt;
|  Shows the file extension (without leading dot) of the currently selected item in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Date&lt;br /&gt;
|  Shows the file date of the currently selected song or movie in a container / Aired date of an episode / Day, start time and end time of current selected TV programme (PVR)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.DateAdded&lt;br /&gt;
|  Shows the date the currently selected item was added to the library / Date and time of an event in the EventLog window.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Size&lt;br /&gt;
|  Shows the file size of the currently selected song or movie in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Rating[(name)]&lt;br /&gt;
|  Shows the scraped rating of the currently selected item in a container. Optionally you can specify the name of the scraper to retrieve a specific rating, for use in dialogvideoinfo.xml.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Set&lt;br /&gt;
|  Shows the name of the set the movie is part of&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.SetId&lt;br /&gt;
|  Shows the id of the set the movie is part of&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.UserRating&lt;br /&gt;
|  Shows the user rating of the currently selected item in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Votes[(name)]&lt;br /&gt;
|  Shows the IMDB votes of the currently selected movie in a container. Optionally you can specify the name of the scraper to retrieve specific votes, for use in dialogvideoinfo.xml.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.RatingAndVotes[(name)]&lt;br /&gt;
|  Shows the IMDB rating and votes of the currently selected movie in a container. Optionally you can specify the name of the scraper to retrieve a specific rating and votes, for use in dialogvideoinfo.xml.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Mpaa&lt;br /&gt;
|  Show the MPAA rating of the currently selected movie in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.ProgramCount&lt;br /&gt;
|  Shows the number of times an xbe has been run from &amp;quot;my programs&amp;quot;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Duration[(format)]&lt;br /&gt;
|  Shows the song or movie duration of the currently selected movie in a container. Optionally specify a time format, hours (hh), minutes (mm) or seconds (ss). When 12 hour clock is used (xx) will return AM/PM. Also supported: (hh:mm), (mm:ss), (hh:mm:ss), (hh:mm:ss). &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.DBTYPE&lt;br /&gt;
|  Shows the database type of the ListItem.DBID for videos (video, movie, set, tvshow, season, episode, musicvideo) or for audio (music, song, album, artist). Beware with season, the &amp;quot;*all seasons&amp;quot; entry does give a DBTYPE &amp;quot;season&amp;quot; and a DBID, but you can&#039;t get the details of that entry since it&#039;s a virtual entry in the Video Library.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.DBID&lt;br /&gt;
|  Shows the database id of the currently selected listitem in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Cast&lt;br /&gt;
|  Shows a concatenated string of cast members of the currently selected movie, for use in dialogvideoinfo.xml&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.CastAndRole&lt;br /&gt;
|  Shows a concatenated string of cast members and roles of the currently selected movie, for use in dialogvideoinfo.xml&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Studio&lt;br /&gt;
|  Studio of current selected Music Video in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Top250&lt;br /&gt;
|  Shows the IMDb top250 position of the currently selected listitem in a container.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Trailer&lt;br /&gt;
|  Shows the full trailer path with filename of the currently selected movie in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Writer&lt;br /&gt;
|  Name of Writer of current Video in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Tagline&lt;br /&gt;
|  Small Summary of current Video in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PlotOutline&lt;br /&gt;
|  Small Summary of current Video in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Plot&lt;br /&gt;
|  Complete Text Summary of Video in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.IMDBNumber&lt;br /&gt;
|  The IMDB iD of the selected Video in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.EpisodeName&lt;br /&gt;
|  (PVR only) The name of the episode if the selected EPG item is a TV Show&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PercentPlayed&lt;br /&gt;
|  Returns percentage value [0-100] of how far the selected video has been played&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.LastPlayed&lt;br /&gt;
|  Last play date of Video in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PlayCount&lt;br /&gt;
|  Playcount of Video in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.StartTime&lt;br /&gt;
|  Start time of current selected TV programme in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.EndTime&lt;br /&gt;
|  End time of current selected TV programme in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.StartDate&lt;br /&gt;
|  Start date of current selected TV programme in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.ChannelName&lt;br /&gt;
|  Name of current selected TV channel in a container&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.VideoCodec&lt;br /&gt;
|  Shows the video codec of the currently selected video (common values: 3iv2, avc1, div2, div3, divx, divx 4, dx50, flv, h264, microsoft, mp42, mp43, mp4v, mpeg1video, mpeg2video, mpg4, rv40, svq1, svq3, theora, vp6f, wmv2, wmv3, wvc1, xvid)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.VideoResolution&lt;br /&gt;
|  Shows the resolution of the currently selected video (possible values: 480, 576, 540, 720, 1080, 4K, 8K [Note: v18 addition]). Note that 540 usually means a widescreen format (around 960x540) while 576 means PAL resolutions (normally 720x576), therefore 540 is actually better resolution than 576.&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.VideoAspect&lt;br /&gt;
|  Shows the aspect ratio of the currently selected video (possible values: 1.33, 1.37, 1.66, 1.78, 1.85, 2.20, 2.35, 2.40, 2.55, 2.76)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AudioCodec&lt;br /&gt;
|  Shows the audio codec of the currently selected video (common values: aac, ac3, cook, dca, dtshd_hra, dtshd_ma, eac3, mp1, mp2, mp3, pcm_s16be, pcm_s16le, pcm_u8, truehd, vorbis, wmapro, wmav2)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AudioChannels&lt;br /&gt;
|  Shows the number of audio channels of the currently selected video (possible values: 1, 2, 4, 5, 6, 7, 8, 10)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AudioLanguage&lt;br /&gt;
|  Shows the audio language of the currently selected video (returns an ISO 639-2 three character code, e.g. eng, epo, deu)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.SubtitleLanguage&lt;br /&gt;
|  Shows the subtitle language of the currently selected video (returns an ISO 639-2 three character code, e.g. eng, epo, deu)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(AudioCodec.[n])&lt;br /&gt;
|  Shows the audio codec of the currently selected video, &#039;n&#039; defines the number of the audiostream (values: see ListItem.AudioCodec)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(AudioChannels.[n])&lt;br /&gt;
|  Shows the number of audio channels of the currently selected video, &#039;n&#039; defines the number of the audiostream (values: see ListItem.AudioChannels)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(AudioLanguage.[n])&lt;br /&gt;
|  Shows the audio language of the currently selected video, &#039;n&#039; defines the number of the audiostream (values: see ListItem.AudioLanguage)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(SubtitleLanguage.[n])&lt;br /&gt;
|  Shows the subtitle language of the currently selected video, &#039;n&#039; defines the number of the subtitle (values: see ListItem.SubtitleLanguage)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AddonName&lt;br /&gt;
|  Shows the name of the currently selected addon&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AddonVersion&lt;br /&gt;
|  Shows the version of the currently selected addon&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AddonSummary&lt;br /&gt;
|  Shows a short description of the currently selected addon&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AddonDescription&lt;br /&gt;
|  Shows the full description of the currently selected addon&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AddonType&lt;br /&gt;
|  Shows the type (screensaver, script, skin, etc...) of the currently selected addon&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AddonCreator&lt;br /&gt;
|  Shows the name of the author the currently selected addon&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AddonDisclaimer&lt;br /&gt;
|  Shows the disclaimer of the currently selected addon&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AddonBroken&lt;br /&gt;
|  Shows a message when the addon is marked as broken in the repo&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Addon.Changelog)&lt;br /&gt;
|  Shows the changelog of the currently selected addon&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Addon.ID)&lt;br /&gt;
|  Shows the identifier of the currently selected addon&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Addon.Status)&lt;br /&gt;
|  Shows the status of the currently selected addon&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Addon.Path)&lt;br /&gt;
|  Shows the path of the currently selected addon&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.StartTime&lt;br /&gt;
|  Start time of the selected item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.EndTime&lt;br /&gt;
|  End time of the selected item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.StartDate&lt;br /&gt;
|  Start date of the selected item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.EndDate&lt;br /&gt;
|  End date of the selected item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.NextTitle&lt;br /&gt;
|  Title of the next item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.NextGenre&lt;br /&gt;
|  Genre of the next item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.NextPlot&lt;br /&gt;
|  Plot of the next item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.NextPlotOutline&lt;br /&gt;
|  Plot outline of the next item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.NextStartTime&lt;br /&gt;
|  Start time of the next item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.NextEndTime&lt;br /&gt;
|  End of the next item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.NextStartDate&lt;br /&gt;
|  Start date of the next item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.NextEndDate&lt;br /&gt;
|  End date of the next item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Listitem.NextDuration&lt;br /&gt;
|  Duration of the next item (PVR).&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.ChannelName&lt;br /&gt;
|  Channelname of the selected item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.ChannelNumber&lt;br /&gt;
|  Channel number of the selected item (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.ChannelNumberLabel&lt;br /&gt;
|  Channel and subchannel number of the currently selected channel that&#039;s currently playing (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Progress&lt;br /&gt;
|  Part of the programme that&#039;s been played (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.StereoscopicMode&lt;br /&gt;
|  Returns the stereomode of the selected video (i.e. mono, split_vertical, split_horizontal, row_interleaved, anaglyph_cyan_red, anaglyph_green_magenta)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Comment&lt;br /&gt;
|  Comment assigned to the item (PVR/MUSIC).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AddonInstallDate&lt;br /&gt;
| Date the addon was installed&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AddonLastUpdated&lt;br /&gt;
| Date the addon was last updated&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AddonLastUsed&lt;br /&gt;
| Date the addon was used last&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AddonNews&lt;br /&gt;
| Returns a brief changelog, taken from the addons&#039; addon.xml file&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AddonSize&lt;br /&gt;
| Filesize of the addon&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Contributors&lt;br /&gt;
| List of all people who&#039;ve contributed to the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.ContributorAndRole&lt;br /&gt;
| List of all people and their role who&#039;ve contributed to the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.EndTimeResume&lt;br /&gt;
| Returns the time a video will end if you resume it, instead of playing it from the beginning.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Mood&lt;br /&gt;
| Mood of the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Status&lt;br /&gt;
| For use with tv shows. It can return one of the following: &#039;returning series&#039;,&#039;in production&#039;,&#039;planned&#039;,&#039;cancelled&#039; or &#039;ended&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Tag&lt;br /&gt;
| Will return the name of the &#039;tag&#039; this movie is part of.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Role.Arranger)&lt;br /&gt;
| Returns the name of the person who arranged the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Role.Composer)&lt;br /&gt;
| Returns the name of the person who composed the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Role.Conductor)&lt;br /&gt;
| Returns the name of the person who conducted the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Role.DJMixer)&lt;br /&gt;
| Returns the name of the dj who remixed the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Role.Engineer)&lt;br /&gt;
| Returns the name of the person who was the engineer of the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Role.Lyricist)&lt;br /&gt;
| Returns the name of the person who wrote the lyrics of the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Role.Mixer)&lt;br /&gt;
| Returns the name of the person who mixed the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Role.Orchestra)&lt;br /&gt;
| Returns the name of the orchestra performing the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Role.Producer)&lt;br /&gt;
| Returns the name of the person who produced the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Role.Remixer)&lt;br /&gt;
| Returns the name of the person who remixed the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Album_Duration)&lt;br /&gt;
| Returns the duration of an album in HH:MM:SS&lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Appearances&lt;br /&gt;
| Returns the number of movies featuring the selected actor / directed by the selected director&lt;br /&gt;
| v17 addition&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.PrivacyPolicy&lt;br /&gt;
| Returns the official Kodi privacy-policy&lt;br /&gt;
| v17 addition&lt;br /&gt;
|-&lt;br /&gt;
|  Listitem.Property(game.videofilter)&lt;br /&gt;
|  Name of the video filter (eg. Bilinear)&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  Listitem.Property(game.stretchmode)&lt;br /&gt;
|  Name of the stretch mode (eg. Stretch 4:3)&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  Listitem.Property(game.videorotation)&lt;br /&gt;
|  Angle of the rotation&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
| ListItem.CurrentItem&lt;br /&gt;
| will return the current index of the item in a container starting at 1.&lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.DiscTitle&lt;br /&gt;
| The disc title of the currently selected album or song&lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.TotalDiscs&lt;br /&gt;
| The total amount of discs belonging to an album&lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.IsBoxset&lt;br /&gt;
| Returns true if the item is part of a boxset&lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.ReleaseDate&lt;br /&gt;
| Returns the release date of the current item&lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.OriginalDate&lt;br /&gt;
| Returns the original release date of the item&lt;br /&gt;
|v19&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.BPM&lt;br /&gt;
| Returns the Beats Per Minute for a song&lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.BitRate&lt;br /&gt;
| Returns the bitrate of the current song (Actual rate for CBR, average rate for VBR)&lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.SampleRate&lt;br /&gt;
| Returns the sample rate of a song / 1000.0 eg 44.1, 48, 96 etc&lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.MusicChannels&lt;br /&gt;
| Returns the number of audio channels for a song&lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.AlbumStatus&lt;br /&gt;
| Returns the Musicbrainz release status of the album (offical, bootleg, promotion etc)&lt;br /&gt;
| v19&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Musicpartymode labels ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPartyMode.SongsPlayed&lt;br /&gt;
|  Number of songs played during Party Mode&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPartyMode.MatchingSongs&lt;br /&gt;
|  Number of songs available to Party Mode&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPartyMode.MatchingSongsPicked&lt;br /&gt;
|  Number of songs picked already for Party Mode&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPartyMode.MatchingSongsLeft&lt;br /&gt;
|  Number of songs left to be picked from for Party Mode&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPartyMode.RelaxedSongsPicked&lt;br /&gt;
|  Not currently used&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPartyMode.RandomSongsPicked&lt;br /&gt;
|  Number of unique random songs picked during Party Mode&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Network labels ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  Network.IsDHCP&lt;br /&gt;
|  Network type is DHCP or FIXED&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Network.IPAddress&lt;br /&gt;
|  The system&#039;s IP Address (&amp;lt;ipaddress&amp;gt; is returned as a string)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Network.LinkState&lt;br /&gt;
|  Network linkstate e.g. 10mbit/100mbit etc.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Network.MacAddress&lt;br /&gt;
|  The system&#039;s  mac address&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Network.SubnetMask&lt;br /&gt;
|  Network subnet mask&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Network.GatewayAddress&lt;br /&gt;
|  Network gateway address&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Network.DNS1Address&lt;br /&gt;
|  Network dns server 1 address&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Network.DNS2Address&lt;br /&gt;
|  Network dns server 2 address&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Network.DHCPAddress&lt;br /&gt;
|  DHCP server ip address&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Player labels ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  Player.FinishTime&lt;br /&gt;
|  Time playing media will end&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.FinishTime(format)&lt;br /&gt;
|  Shows hours (hh), minutes (mm) or seconds (ss). When 12 hour clock is used (xx) will return AM/PM. Also supported: (hh:mm), (mm:ss), (hh:mm:ss), (hh:mm:ss).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Chapter&lt;br /&gt;
|  Current chapter of current playing media&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.ChapterCount&lt;br /&gt;
|  Total number of chapters of current playing media&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Time&lt;br /&gt;
|  Elapsed time of current playing media&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Time(format)&lt;br /&gt;
|  Shows hours (hh), minutes (mm) or seconds (ss). When 12 hour clock is used (xx) will return AM/PM. Also supported: (hh:mm), (mm:ss), (hh:mm:ss), (hh:mm:ss).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.TimeRemaining&lt;br /&gt;
|  Remaining time of current playing media&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.TimeRemaining(format)&lt;br /&gt;
|  Shows hours (hh), minutes (mm) or seconds (ss). When 12 hour clock is used (xx) will return AM/PM. Also supported: (hh:mm), (mm:ss), (hh:mm:ss), (hh:mm:ss).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Duration&lt;br /&gt;
|  Total duration of the current playing media&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Duration(format)&lt;br /&gt;
|  Shows hours (hh), minutes (mm) or seconds (ss). When 12 hour clock is used (xx) will return AM/PM. Also supported: (hh:mm), (mm:ss), (hh:mm:ss), (hh:mm:ss).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.SeekTime&lt;br /&gt;
|  Time to which the user is seeking&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.SeekOffset&lt;br /&gt;
|  Indicates the seek offset after a seek press (eg user presses BigStepForward, player.seekoffset returns +10:00)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.SeekOffset(format)&lt;br /&gt;
|  Shows hours (hh), minutes (mm) or seconds (ss). Also supported: (hh:mm), (mm:ss), (hh:mm:ss), (hh:mm:ss).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.SeekStepSize&lt;br /&gt;
|  Displays the seek step size. (v15 addition)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Progress&lt;br /&gt;
|  Shows how much (percentage) of the file has been played&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.ProgressCache&lt;br /&gt;
|  Shows how much of the file is cached above current play percentage&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Folderpath&lt;br /&gt;
|  Shows the full path of the currently playing song or movie&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Filenameandpath&lt;br /&gt;
|  Shows the full path with filename of the currently playing song or movie&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.StartTime&lt;br /&gt;
|  Returns the starttime (from the epg) of a tv program, for all other videos it will return the time you started watching this video.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.StartTime(format)&lt;br /&gt;
|  Shows hours (hh), minutes (mm) or seconds (ss). When 12 hour clock is used (xx) will return AM/PM. Also supported: (hh:mm), (mm:ss), (hh:mm:ss), (hh:mm:ss).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Title&lt;br /&gt;
|  Returns the musicplayer title for audio and the videoplayer title for videos.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Filename&lt;br /&gt;
|  Returns the filename of the currently playing media.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Volume&lt;br /&gt;
| Returns the volume level in dB&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.PlaySpeed&lt;br /&gt;
|  Current playspeed. (range:0.8 to 1.5)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Process(AudioBitsPerSample)&lt;br /&gt;
| Bits per sample of the currently playing item&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Process(AudioChannels)&lt;br /&gt;
| Number of audiochannels of the currently playing item&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Process(AudioDecoder)&lt;br /&gt;
| Audiodecoder name of the currently playing item&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Process(AudioSamplerate)&lt;br /&gt;
| Samplerate  f the currently playing item&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Process(DeintMethod)&lt;br /&gt;
| Deinterlace method of the currently playing video&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Process(PixFormat)&lt;br /&gt;
| Pixel format of the currently playing video&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Process(VideoDAR)&lt;br /&gt;
| Display aspect ratio of the currently playing video&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Process(VideoFPS)&lt;br /&gt;
| Video framerate of the currently playing video&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Process(VideoHeight)&lt;br /&gt;
| Height of the currently playing video&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Process(VideoDecoder)&lt;br /&gt;
| Videodecoder name of the currently playing video&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Process(VideoWidth)&lt;br /&gt;
| Width of the currently playing video&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| Player.CutList&lt;br /&gt;
| this infolabel can be used with the [[Ranges control]], as EDL and chapter markers &lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
| Player.Chapters&lt;br /&gt;
| this infolabel can be used with the [[Ranges control]], as EDL and chapter markers &lt;br /&gt;
| v19&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Music player ====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Title&lt;br /&gt;
|  Title of the currently playing song,  also available are &amp;quot;MusicPlayer.offset(number).Title&amp;quot; offset is relative to the current playing item and &amp;quot;MusicPlayer.Position(number).Title&amp;quot; position is relative to the start of the playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Album&lt;br /&gt;
|  Album from which the current song is from,   also available are &amp;quot;MusicPlayer.offset(number).Album&amp;quot; offset is relative to the current playing item and &amp;quot;MusicPlayer.Position(number).Album&amp;quot; position is relative to the start of the playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Album_Mood)&lt;br /&gt;
|  Shows the moods of the currently playing Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Album_Style)&lt;br /&gt;
|  Shows the styles of the currently playing Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Album_Theme)&lt;br /&gt;
|  Shows the themes of the currently playing Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Album_Type)&lt;br /&gt;
|  Shows the Album Type (e.g. compilation, enhanced, explicit lyrics) of the currently playing Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Album_Label)&lt;br /&gt;
|  Shows the record label of the currently playing Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Album_Description)&lt;br /&gt;
|  Shows a review of the currently playing Album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Artist&lt;br /&gt;
|  Artist(s) of current song,  also available are &amp;quot;MusicPlayer.offset(number).Artist&amp;quot; offset is relative to the current playing item and &amp;quot;MusicPlayer.Position(number).Artist&amp;quot; position is relative to the start of the playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_Born)&lt;br /&gt;
|  Date of Birth of the currently playing Artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_Died)&lt;br /&gt;
|  Date of Death of the currently playing Artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_Formed)&lt;br /&gt;
|  Formation date of the currently playing Artist/Band&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_Disbanded)&lt;br /&gt;
|  Disbanding date of the currently playing Artist/Band&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_YearsActive)&lt;br /&gt;
|  Years the currently Playing artist has been active&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_Instrument)&lt;br /&gt;
|  Instruments played by the currently playing artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_Description)&lt;br /&gt;
|  Shows a biography of the currently playing artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_Mood)&lt;br /&gt;
|  Shows the moods of the currently playing artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_Style)&lt;br /&gt;
|  Shows the styles of the currently playing artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_Genre)&lt;br /&gt;
|  Shows the genre of the currently playing artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_Sortname)&lt;br /&gt;
|  Sortname of the currently playing Artist&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_Type)&lt;br /&gt;
|  Type of the currently playing Artist - person, group, orchestra, choir etc.&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_Gender)&lt;br /&gt;
|  Gender of the currently playing Artist - male, female, other&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Artist_Disambiguation)&lt;br /&gt;
|  Brief description of the currently playing Artist that differentiates them from others with the same name&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Genre&lt;br /&gt;
|  Genre(s) of current song,  also available are &amp;quot;MusicPlayer.offset(number).Genre&amp;quot; offset is relative to the current playing item and &amp;quot;MusicPlayer.Position(number).Genre&amp;quot; position is relative to the start of the playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Lyrics&lt;br /&gt;
|  Lyrics of current song stored in ID tag info&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Year&lt;br /&gt;
|  Year of release of current song,  also available are &amp;quot;MusicPlayer.offset(number).Year&amp;quot; offset is relative to the current playing item and &amp;quot;MusicPlayer.Position(number).Year&amp;quot; position is relative to the start of the playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Rating&lt;br /&gt;
|  Numeric Rating of current song,  also available are &amp;quot;MusicPlayer.offset(number).Rating&amp;quot; offset is relative to the current playing item and &amp;quot;MusicPlayer.Position(number).Rating&amp;quot; position is relative to the start of the playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.DiscNumber&lt;br /&gt;
|  Disc Number of current song stored in ID tag info,  also available are &amp;quot;MusicPlayer.offset(number).DiscNumber&amp;quot; offset is relative to the current playing item and &amp;quot;MusicPlayer.Position(number).DiscNumber&amp;quot; position is relative to the start of the playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Comment&lt;br /&gt;
|  Comment of current song stored in ID tag info,  also available are &amp;quot;MusicPlayer.offset(number).Comment&amp;quot; offset is relative to the current playing item and &amp;quot;MusicPlayer.Position(number).Comment&amp;quot; position is relative to the start of the playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Time&lt;br /&gt;
|  Current time in song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.TimeRemaining&lt;br /&gt;
|  Current remaining time in song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.TimeSpeed&lt;br /&gt;
|  Both the time and the playspeed formatted up. eg 1:23 (2x)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.TrackNumber&lt;br /&gt;
|  Track number of current song,   also available are &amp;quot;MusicPlayer.offset(number).TrackNumber&amp;quot; offset is relative to the current playing item and &amp;quot;MusicPlayer.Position(number).TrackNumber&amp;quot; position is relative to the start of the playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Duration&lt;br /&gt;
|  Duration of current song,   also available are &amp;quot;MusicPlayer.offset(number).Duration&amp;quot; offset is relative to the current playing item and &amp;quot;MusicPlayer.Position(number).Duration&amp;quot; position is relative to the start of the playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.BitRate&lt;br /&gt;
|  Bitrate of current song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Channels&lt;br /&gt;
|  Number of channels of current song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.BitsPerSample&lt;br /&gt;
|  Number of bits per sample of current song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.SampleRate&lt;br /&gt;
|  Samplerate of current song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Codec&lt;br /&gt;
|  Codec of current song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.PlaylistPosition&lt;br /&gt;
|  Position of the current song in the current music playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.PlaylistLength&lt;br /&gt;
|  Total size of the current music playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.ChannelName&lt;br /&gt;
|  Channel name of the radio programme that&#039;s currently playing (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.ChannelNumberLabel&lt;br /&gt;
|  Channel and subchannel number of the radio channel that&#039;s currently playing (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.ChannelGroup&lt;br /&gt;
|  Channel group of  of the radio programme that&#039;s currently playing (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Contributors&lt;br /&gt;
| List of all people who&#039;ve contributed to the currently playing song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.ContributorAndRole&lt;br /&gt;
| List of all people and their role who&#039;ve contributed to the currently playing song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Mood&lt;br /&gt;
| Mood of the currently playing song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Role.Arranger)&lt;br /&gt;
| Returns the name of the person who arranged the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Role.Composer)&lt;br /&gt;
| Returns the name of the person who composed the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Role.Conductor)&lt;br /&gt;
| Returns the name of the person who conducted the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Role.DJMixer)&lt;br /&gt;
| Returns the name of the dj who remixed the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Role.Engineer)&lt;br /&gt;
| Returns the name of the person who was the engineer of the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Role.Lyricist)&lt;br /&gt;
| Returns the name of the person who wrote the lyrics of the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Role.Mixer)&lt;br /&gt;
| Returns the name of the person who mixed the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Role.Orchestra)&lt;br /&gt;
| Returns the name of the orchestra performing the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Role.Producer)&lt;br /&gt;
| Returns the name of the person who produced the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Role.Remixer)&lt;br /&gt;
| Returns the name of the person who remixed the selected song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.UserRating&lt;br /&gt;
| The rating the user gave to the currently playing song&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.DBID&lt;br /&gt;
| The database id of the currently playing song&lt;br /&gt;
| v17 Addition&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.DiscTitle&lt;br /&gt;
| The title of the disc currently playing&lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.ReleaseDate&lt;br /&gt;
| Returns the release date of the song currently playing&lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.OriginalDate&lt;br /&gt;
| Returns the original release date of the song currently playing&lt;br /&gt;
| v19&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.BPM&lt;br /&gt;
| Returns the Beats Per Minute of the currently playing song&lt;br /&gt;
| v19&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Video player ====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Time&lt;br /&gt;
|  Current time in movie&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.TimeRemaining&lt;br /&gt;
|  Current remaining time in movie&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.TimeSpeed&lt;br /&gt;
|  Current time + playspeed. eg 1:23:14 (-4x)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Duration&lt;br /&gt;
|  Length of current movie&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Title&lt;br /&gt;
|  Title of currently playing video. If it&#039;s in the database it will return the database title, else the filename&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.TVShowTitle&lt;br /&gt;
|  Title of currently playing episode&#039;s tvshow name&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Season&lt;br /&gt;
|  Season number of the currently playing episode, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Episode&lt;br /&gt;
|  Episode number of the currently playing episode&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Genre&lt;br /&gt;
|  Genre(s) of current movie, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Director&lt;br /&gt;
|  Director of current movie, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Country&lt;br /&gt;
|  Production country of current movie, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Year&lt;br /&gt;
|  Year of release of current movie, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Rating&lt;br /&gt;
|  IMDb user rating of current movie, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.UserRating&lt;br /&gt;
|  Shows the user rating of the currently playing item&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Votes&lt;br /&gt;
|  IMDb votes of current movie, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.RatingAndVotes&lt;br /&gt;
|  IMDb user rating and votes of current movie, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.mpaa&lt;br /&gt;
|  MPAA rating of current movie, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.IMDBNumber&lt;br /&gt;
|  The IMDB iD of the current video, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.EpisodeName&lt;br /&gt;
|  (PVR only) The name of the episode if the playing video is a TV Show, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.PlaylistPosition&lt;br /&gt;
|  Position of the current song in the current video playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.PlaylistLength&lt;br /&gt;
|  Total size of the current video playlist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Cast&lt;br /&gt;
|  A concatenated string of cast members of the current movie, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.CastAndRole&lt;br /&gt;
|  A concatenated string of cast members and roles of the current movie, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Album&lt;br /&gt;
|  Album from which the current Music Video is from, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Artist&lt;br /&gt;
|  Artist(s) of current Music Video, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Studio&lt;br /&gt;
|  Studio of current Music Video, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Writer&lt;br /&gt;
|  Name of Writer of current playing Video, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Tagline&lt;br /&gt;
|  Small Summary of current playing Video, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.PlotOutline&lt;br /&gt;
|  Small Summary of current playing Video, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Plot&lt;br /&gt;
|  Complete Text Summary of current playing Video, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.LastPlayed&lt;br /&gt;
|  Last play date of current playing Video, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|- class=&amp;quot;userrow&lt;br /&gt;
|  VideoPlayer.PlayCount&lt;br /&gt;
|  Playcount of current playing Video, if it&#039;s in the database&lt;br /&gt;
|&lt;br /&gt;
|- class=&amp;quot;userrow&lt;br /&gt;
|  VideoPlayer.VideoCodec&lt;br /&gt;
|  Shows the video codec of the currently playing video (common values: see ListItem.VideoCodec)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.VideoResolution&lt;br /&gt;
|  Shows the video resolution of the currently playing video (possible values: see ListItem.VideoResolution)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.VideoAspect&lt;br /&gt;
|  Shows the aspect ratio of the currently playing video (possible values: see ListItem.VideoAspect)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.AudioCodec&lt;br /&gt;
|  Shows the audio codec of the currently playing video, optionally &#039;n&#039; defines the number of the audiostream (common values: see ListItem.AudioCodec)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.AudioChannels&lt;br /&gt;
|  Shows the number of audio channels of the currently playing video (possible values: see ListItem.AudioChannels)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.AudioLanguage&lt;br /&gt;
|  Shows the language of the audio of the currently playing video(possible values: see ListItem.AudioLanguage)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.SubtitlesLanguage&lt;br /&gt;
|  Shows the language of the subtitle of the currently playing video (possible values: see ListItem.SubtitlesLanguage)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.StereoscopicMode&lt;br /&gt;
|  Shows the stereoscopic mode of the currently playing video (possible values: see ListItem.StereoscopicMode)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.EndTime&lt;br /&gt;
|  End date of the currently playing programme (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.NextTitle&lt;br /&gt;
|  Title of the programme that will be played next (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.NextGenre&lt;br /&gt;
|  Genre of the programme that will be played next (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.NextPlot&lt;br /&gt;
|  Plot of the programme that will be played next (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.NextPlotOutline&lt;br /&gt;
|  Plot outline of the programme that will be played next (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.NextStartTime&lt;br /&gt;
|  Start time of the programme that will be played next (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.NextEndTime&lt;br /&gt;
|  End time of the programme that will be played next (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.NextDuration&lt;br /&gt;
|  Duration of the programme that will be played next (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.ChannelName&lt;br /&gt;
|  Name of the curently tuned channel (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.ChannelNumberLabel&lt;br /&gt;
|  Channel and subchannel number of the tv channel that&#039;s currently playing (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.ChannelGroup&lt;br /&gt;
|  Group of the curently tuned channel (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.ParentalRating&lt;br /&gt;
|  Parental rating of the currently playing programme (PVR).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.DBID&lt;br /&gt;
| The database id of the currently playing video&lt;br /&gt;
| v17 Addition&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Playlist ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  Playlist.Length(media)&lt;br /&gt;
|  Total size of the current playlist. optional parameter media is either video or music.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Playlist.Position(media)&lt;br /&gt;
|  Position of the current item in the current playlist. optional parameter media is either video or music.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Playlist.Random&lt;br /&gt;
|  Returns &#039;On&#039; or &#039;Off&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Playlist.Repeat&lt;br /&gt;
|  Returns string ID&#039;s 592 (Repeat One), 593 (Repeat All), or 594 (Repeat Off)&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== PVR ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.NowRecordingTitle&lt;br /&gt;
|  Title of the programme being recorded&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.NowRecordingDateTime&lt;br /&gt;
|  Start date and time of the current recording&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.NowRecordingChannel&lt;br /&gt;
|  Channel number that&#039;s being recorded&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.NextRecordingTitle&lt;br /&gt;
|  Title of the next programme that will be recorded&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.NextRecordingDateTime&lt;br /&gt;
|  Start date and time of the next recording&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.NextRecordingChannel&lt;br /&gt;
|  Channel name of the next recording&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.BackendName&lt;br /&gt;
|  Name of the backend being used&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.BackendVersion&lt;br /&gt;
|  Version of the backend that&#039;s being used&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.BackendHost&lt;br /&gt;
|  Backend hostname&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.BackendDiskSpace&lt;br /&gt;
|  Available diskspace on the backend&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.BackendChannels&lt;br /&gt;
|  Number of available channels the backend provides&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.BackendTimers&lt;br /&gt;
|  Number of timers set for the backend&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.BackendRecordings&lt;br /&gt;
|  Number of recording available on the backend&lt;br /&gt;
|&lt;br /&gt;
|- &lt;br /&gt;
|  PVR.BackendDiskspace&lt;br /&gt;
|  Free diskspace available for recordings on the backend&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.BackendNumber&lt;br /&gt;
|  Backend number&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TotalDiscSpace&lt;br /&gt;
|  Total diskspace available for recordings&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.NextTimer&lt;br /&gt;
|  Next timer date&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.EpgEventDuration[(format)]&lt;br /&gt;
|  Returns the duration of the currently played title on TV. See ListItem.Duration for optinional formatting options&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.EpgEventElapsedTime[(format)]&lt;br /&gt;
|  Returns the time position of the currently played title on TV. See ListItem.Duration for optinional formatting options&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.EpgEventRemainingTime[(format)]&lt;br /&gt;
|  Returns the remaining time for currently playing epg event. See ListItem.Duration for optinional formatting options&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.EpgEventFinishTime[(format)]&lt;br /&gt;
|  Returns the time the currently playing epg event will end. See ListItem.Duration for optinional formatting options&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.EpgEventSeekTime[(format)]&lt;br /&gt;
|  Returns the seek time of the currently playing epg event. See ListItem.Duration for optinional formatting options&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.EpgEventProgress&lt;br /&gt;
|  Returns the position of currently played title on TV as integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeShiftStart[(format)]&lt;br /&gt;
|  Start position of the timeshift. See ListItem.Duration for optinional formatting options&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeShiftEnd[(format)]&lt;br /&gt;
|  End position of the timeshift. See ListItem.Duration for optinional formatting options&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeShiftCur[(format)]&lt;br /&gt;
|  Current position of the timeshift. See ListItem.Duration for optinional formatting options&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeShiftOffset[(format)]&lt;br /&gt;
|  Current offset of the timeshift. See ListItem.Duration for optinional formatting options&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeShiftProgress&lt;br /&gt;
|  Returns the position of currently timeshifted title on TV as interger&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.ActStreamClient&lt;br /&gt;
| Stream client name&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.ActStreamDevice&lt;br /&gt;
| Stream device name&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.ActStreamStatus&lt;br /&gt;
| Status of the stream&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.ActStreamSignal&lt;br /&gt;
| Signal quality of the stream&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.ActStreamSnr&lt;br /&gt;
| Signal to noise ratio of the stream&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.ActStreamBer&lt;br /&gt;
| Bit error rate of the stream&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.ActStreamUnc&lt;br /&gt;
| UNC value of the stream&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.ActStreamVideoBitRate&lt;br /&gt;
| Video bitrate of the stream&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.ActStreamAudioBitRate&lt;br /&gt;
| Audio bitrate of the stream&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.ActStreamDolbyBitRate&lt;br /&gt;
| Dolby bitrate of the stream&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.ActStreamProgrSignal&lt;br /&gt;
| Signal quality of the programme&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.ActStreamProgrSnr&lt;br /&gt;
| Signal to noise ratio of the programme&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.ActStreamEncryptionName&lt;br /&gt;
| Encryption used on the stream&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| PVR.TVNowRecordingTitle&lt;br /&gt;
| Title of the tv programme being recorded&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.TVNowRecordingDateTime&lt;br /&gt;
| Start date and time of the current tv recording&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.TVNowRecordingChannel&lt;br /&gt;
| Channel name of the current tv recording&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.TVNowRecordingChannelIcon&lt;br /&gt;
| Icon of the current recording TV channel&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.TVNextRecordingTitle&lt;br /&gt;
| Title of the next tv programme that will be recorded&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.TVNextRecordingDateTime&lt;br /&gt;
| Start date and time of the next tv recording&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.TVNextRecordingChannel&lt;br /&gt;
| Channel name of the next tv recording&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.TVNextRecordingChannelIcon&lt;br /&gt;
| Icon of the next recording tv channel&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.RadioNowRecordingTitle&lt;br /&gt;
| Title of the radio programme being recorded&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.RadioNowRecordingDateTime&lt;br /&gt;
| Start date and time of the current radio recording&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.RadioNowRecordingChannel&lt;br /&gt;
| Channel name of the current radio recording&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.RadioNowRecordingChannelIcon&lt;br /&gt;
| Icon of the current recording radio channel&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.RadioNextRecordingTitle&lt;br /&gt;
| Title of the next radio programme that will be recorded&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.RadioNextRecordingDateTime&lt;br /&gt;
| Start date and time of the next radio recording&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
| PVR.RadioNextRecordingChannel&lt;br /&gt;
| Channel name of the next radio recording&lt;br /&gt;
| {{nowrap|v17 Addition}}&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.ChannelNumberInput&lt;br /&gt;
|  Label displaying the number the user entered on remote or keyboard&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeshiftProgressDuration&lt;br /&gt;
|  Returns the duration of the PVR timeshift progress in the format hh:mm:ss. hh: will be omitted if hours value is zero&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeshiftProgressDuration(format)&lt;br /&gt;
|  Returns the duration of the PVR timeshift progress in different formats, hours (hh), minutes (mm) or seconds (ss)&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeshiftProgressStartTime&lt;br /&gt;
|  Returns the start time of the PVR timeshift progress in the format hh:mm:ss. hh: will be omitted if hours value is zero&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeshiftProgressStartTime(format)&lt;br /&gt;
|  Returns the start time of the PVR timeshift progress in different formats, hours (hh), minutes (mm) or seconds (ss)&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeshiftProgressEndTime&lt;br /&gt;
|  Returns the end time of the PVR timeshift progress in the format hh:mm:ss. hh: will be omitted if hours value is zero&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeshiftProgressEndTime(format)&lt;br /&gt;
|  Returns the end time of the PVR timeshift progress in different formats, hours (hh), minutes (mm) or seconds (ss)&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeshiftProgressPlayPos&lt;br /&gt;
|  Returns the percentage of the current play position within the PVR timeshift progress&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeshiftProgressEpgStart&lt;br /&gt;
|  Returns the percentage of the start of the currently playing epg event within the PVR timeshift progress&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeshiftProgressEpgEnd&lt;br /&gt;
|  Returns the percentage of the end of the currently playing epg event within the PVR timeshift progress&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeshiftProgressBufferStart&lt;br /&gt;
|  Returns the percentage of the start of the timeshift buffer within the PVR timeshift progress&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  PVR.TimeshiftProgressBufferEnd&lt;br /&gt;
|  Returns the percentage of the end of the timeshift buffer within the PVR timeshift progress&lt;br /&gt;
|  v18&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== RDS ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  RDS.AudioLanguage&lt;br /&gt;
|  The from RDS reported audio language of channel&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.ChannelCountry&lt;br /&gt;
|  Country where the radio channel is sended&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.GetLine(number)&lt;br /&gt;
|  Returns the last sended RDS text messages on givern number, 0 is thelast and 4 rows are supported (0-3)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.Title&lt;br /&gt;
|  Title of item; e.g. track title of an album (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.Artist&lt;br /&gt;
|  A person or band/collective generally considered responsible for the work (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.Band&lt;br /&gt;
|  Band/orchestra/accompaniment/musician (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.Composer&lt;br /&gt;
|  Name of the original composer/author (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.Conductor&lt;br /&gt;
|  The artist(s) who performed the work. In classical music this would bethe conductor (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.Album&lt;br /&gt;
|  The collection name to which this track belongs (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.TrackNumber&lt;br /&gt;
|  The track number of the item on the album on which it was originallyreleased. (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.RadioStyle&lt;br /&gt;
|  The from radio channel used style of currently played part, e.g &amp;quot;popmusic&amp;quot;, &amp;quot;news&amp;quot; or &amp;quot;weather&amp;quot;&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.Comment&lt;br /&gt;
|  Radio station comment string if available (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoNews&lt;br /&gt;
|  Message / headline (if available) (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoNewsLocal&lt;br /&gt;
|  Local information news sended from radio channel (if available) (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoStock&lt;br /&gt;
|  Quote information; either as one part or as several distinct parts:&amp;quot;name 99latest value 99change 99high 99low 99volume&amp;quot; (if available) (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoStockSize&lt;br /&gt;
|  Number of rows present in stock information (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoSport&lt;br /&gt;
|  Result of a game; either as one part or as several distinct parts:&amp;quot;match 99result&amp;quot;, e.g. &amp;quot;Bayern München : Borussia 995:5&amp;quot;  (if available) (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoSportSize&lt;br /&gt;
|  Number of rows present in sport information (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoLottery&lt;br /&gt;
|  Raffle / lottery: &amp;quot;key word 99values&amp;quot; (if available) (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoLotterySize&lt;br /&gt;
|  Number of rows present in lottery information (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoWeather&lt;br /&gt;
|  Weather informations sended from radio channel (if available) (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoWeatherSize&lt;br /&gt;
|  Number of rows present in weather information (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoCinema&lt;br /&gt;
|  Information about movies in cinema (if available) (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoCinemaSize&lt;br /&gt;
|  Number of rows present in cinema information (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoHoroscope&lt;br /&gt;
|  Horoscope; either as one part or as two distinct parts:&amp;quot;key word 99text&amp;quot;, e.g. &amp;quot;sign of the zodiac 99blablabla&amp;quot; (if available) (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoHoroscopeSize&lt;br /&gt;
|  Number of rows present in horoscope information (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoOther&lt;br /&gt;
|  Other information, not especially specified: &amp;quot;key word 99info&amp;quot; (if available) (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.InfoOtherSize&lt;br /&gt;
|  Number of rows present with other informations (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.ProgStation&lt;br /&gt;
|  Name of the radio channel@note becomes also be set from epg if from RDS not available&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.ProgNow&lt;br /&gt;
|  Now played program name@note becomes also be set from epg if from RDS not available&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.ProgNext&lt;br /&gt;
|  Next played program name (if available)@note becomes also be set from epg if from RDS not available&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.ProgHost&lt;br /&gt;
|  Name of the host of the radio show&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.ProgEditStaff&lt;br /&gt;
|  Name of the editorial staff; e.g. name of editorial journalist (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.ProgHomepage&lt;br /&gt;
|  Link to radio station homepage (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.ProgStyle&lt;br /&gt;
|  Human readable string about radiostyle defined from RDS or RBDS&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.PhoneHotline&lt;br /&gt;
|  The telephone number of the radio station&#039;s hotline (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.PhoneStudio&lt;br /&gt;
|  The telephone number of the radio station&#039;s studio (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.SmsStudio&lt;br /&gt;
|  The sms number of the radio stations studio (to send directly a sms to the studio) (if available) (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.EmailHotline&lt;br /&gt;
|  The email adress of the radio stations hotline (if available) (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|-&lt;br /&gt;
|  RDS.EmailStudio&lt;br /&gt;
|  The email adress of the radio stations studio (if available) (Only be available on RadiotextPlus)&lt;br /&gt;
|  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Skin ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  Skin.CurrentTheme&lt;br /&gt;
|  Returns the current selected skin theme.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Skin.CurrentColourTheme&lt;br /&gt;
|  Returns the current selected colour theme of the skin.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Skin.Font&lt;br /&gt;
|  Returns the current fontset from Font.xml.&lt;br /&gt;
|  v18 addition&lt;br /&gt;
|-&lt;br /&gt;
|  Skin.String(name)&lt;br /&gt;
| Returns the &amp;lt;span class=&amp;quot;nobr&amp;quot;&amp;gt;user-set&amp;lt;/span&amp;gt; skin string, set via the Skin.SetString(name) &#039;&#039;&#039;[[List of Built In Functions]]&#039;&#039;&#039;. Allows skinners to have &amp;lt;span class=&amp;quot;nobr&amp;quot;&amp;gt;user-customisable&amp;lt;/span&amp;gt; labels.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Skin.AspectRatio&lt;br /&gt;
|  Returns the closest aspect ratio match using the resolution info from the skin&#039;s addon.xml file.&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Slideshow ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-  &lt;br /&gt;
|  Slideshow.Altitude&lt;br /&gt;
|  Shows the altitude in meters where the current picture was taken. This is the value of the EXIF GPSInfo.GPSAltitude tag.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Aperture&lt;br /&gt;
|  Shows the F-stop used to take the current picture. This is the value of the EXIF FNumber tag (hex code 0x829D).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Author&lt;br /&gt;
|  Shows the name of the person involved in writing about the current picture. This is the value of the IPTC Writer tag (hex code 0x7A).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Byline&lt;br /&gt;
|  Shows the name of the person who created the current picture.  This is the value of the IPTC Byline tag (hex code 0x50).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.BylineTitle&lt;br /&gt;
|  Shows the title of the person who created the current picture. This is the value of the IPTC BylineTitle tag (hex code 0x55).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.CameraMake&lt;br /&gt;
|  Shows the manufacturer of the camera used to take the current picture. This is the value of the EXIF Make tag (hex code 0x010F).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.CameraModel&lt;br /&gt;
|  Shows the manufacturer&#039;s model name or number of the camera used to take the current picture. This is the value of the EXIF Model tag (hex code 0x0110).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Caption&lt;br /&gt;
|  Shows a description of the current picture. This is the value of the IPTC Caption tag (hex code 0x78).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Category&lt;br /&gt;
|  Shows the subject of the current picture as a category code. This is the value of the IPTC Category tag (hex code 0x0F).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.CCDWidth&lt;br /&gt;
|  Shows the width of the CCD in the camera used to take the current picture. This is calculated from three EXIF tags (0xA002 * 0xA210 / 0xA20e).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.City&lt;br /&gt;
|  Shows the city where the current picture was taken. This is the value of the IPTC City tag (hex code 0x5A).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Colour&lt;br /&gt;
|  Shows whether the current picture is &amp;quot;Colour&amp;quot; or &amp;quot;Black and White&amp;quot;.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.CopyrightNotice&lt;br /&gt;
|  Shows the copyright notice of the current picture. This is the value of the IPTC Copyright tag (hex code 0x74).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Country&lt;br /&gt;
|  Shows the full name of the country where the current picture was taken. This is the value of the IPTC CountryName tag (hex code 0x65).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.CountryCode&lt;br /&gt;
|  Shows the country code of the country where the current picture was taken. This is the value of the IPTC CountryCode tag (hex code 0x64).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Credit&lt;br /&gt;
|  Shows who provided the current picture. This is the value of the IPTC Credit tag (hex code 0x6E).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.DigitalZoom&lt;br /&gt;
|  Shows the digital zoom ratio when the current picture was taken. This is the value of the EXIF .DigitalZoomRatio tag (hex code 0xA404).  &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.EXIFComment&lt;br /&gt;
|  Shows a description of the current picture. This is the value of the EXIF User Comment tag (hex code 0x9286). This is the same value as Slideshow.SlideComment.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.EXIFDate&lt;br /&gt;
|  Shows the localized date of the current picture. The short form of the date is used. The value of the EXIF DateTimeOriginal tag (hex code 0x9003) is preferred. If the DateTimeOriginal tag is not found, the value of DateTimeDigitized (hex code 0x9004) or of DateTime (hex code 0x0132) might be used.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.EXIFDescription&lt;br /&gt;
|  Shows a short description of the current picture. The SlideComment, EXIFComment, or Caption values might contain a longer description. This is the value of the EXIF ImageDescription tag (hex code 0x010E).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.EXIFSoftware&lt;br /&gt;
|  Shows the name and version of the firmware used by the camera that took the current picture. This is the value of the EXIF Software tag (hex code 0x0131).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.EXIFTime&lt;br /&gt;
|  Shows the date/timestamp of the current picture. The localized short form of the date and time is used. The value of the EXIF DateTimeOriginal tag (hex code 0x9003) is preferred. If the DateTimeOriginal tag is not found, the value of DateTimeDigitized (hex code 0x9004) or of DateTime (hex code 0x0132) might be used.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Exposure&lt;br /&gt;
|  Shows the class of the program used by the camera to set exposure when the current picture was taken. Values include &amp;quot;Manual&amp;quot;, &amp;quot;Program (Auto)&amp;quot;, &amp;quot;Aperture priority (Semi-Auto)&amp;quot;, &amp;quot;Shutter priority (semi-auto)&amp;quot;, etc. This is the value of the EXIF ExposureProgram tag (hex code 0x8822).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.ExposureBias&lt;br /&gt;
|  Shows the exposure bias of the current picture. Typically this is a number between -99.99 and 99.99. This is the value of the EXIF ExposureBiasValue tag (hex code 0x9204).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.ExposureMode&lt;br /&gt;
|  Shows the exposure mode of the current picture. The possible values are &amp;quot;Automatic&amp;quot;, &amp;quot;Manual&amp;quot;, and &amp;quot;Auto bracketing&amp;quot;. This is the value of the EXIF ExposureMode tag (hex code 0xA402).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.ExposureTime&lt;br /&gt;
|  Shows the exposure time of the current picture, in seconds. This is the value of the EXIF ExposureTime tag (hex code 0x829A). If the ExposureTime tag is not found, the ShutterSpeedValue tag (hex code 0x9201) might be used.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Filedate&lt;br /&gt;
|  Shows the file date of the current picture&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Filename&lt;br /&gt;
|  Shows the file name of the current picture&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Filesize&lt;br /&gt;
|  Shows the file size of the current picture&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.FlashUsed&lt;br /&gt;
|  Shows the status of flash when the current picture was taken. The value will be either &amp;quot;Yes&amp;quot; or &amp;quot;No&amp;quot;, and might include additional information. This is the value of the EXIF Flash tag (hex code 0x9209).  &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.FocalLength&lt;br /&gt;
|  Shows the focal length of the lens, in mm. This is the value of the EXIF FocalLength tag (hex code 0x920A).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.FocusDistance&lt;br /&gt;
|  Shows the distance to the subject, in meters. This is the value of the EXIF SubjectDistance tag (hex code 0x9206).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Headline&lt;br /&gt;
|  Shows a synopsis of the contents of the current picture. This is the value of the IPTC Headline tag (hex code 0x69).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.ImageType&lt;br /&gt;
|  Shows the color components of the current picture. This is the value of the IPTC ImageType tag (hex code 0x82).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.IPTCDate&lt;br /&gt;
|  Shows the date when the intellectual content of the current picture was created, rather than when the picture was created. This is the value of the IPTC DateCreated tag (hex code 0x37).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.ISOEquivalence&lt;br /&gt;
|  Shows the ISO speed of the camera when the current picture was taken. This is the value of the EXIF ISOSpeedRatings tag (hex code 0x8827).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Keywords&lt;br /&gt;
|  Shows keywords assigned to the current picture. This is the value of the IPTC Keywords tag (hex code 0x19).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Latitude&lt;br /&gt;
|  Shows the latitude where the current picture was taken (degrees, minutes, seconds North or South). This is the value of the EXIF GPSInfo.GPSLatitude and GPSInfo.GPSLatitudeRef tags.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.LightSource&lt;br /&gt;
|  Shows the kind of light source when the picture was taken. Possible values include &amp;quot;Daylight&amp;quot;, &amp;quot;Fluorescent&amp;quot;, &amp;quot;Incandescent&amp;quot;, etc. This is the value of the EXIF LightSource tag (hex code 0x9208).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.LongEXIFDate&lt;br /&gt;
|  Shows only the localized date of the current picture. The long form of the date is used. The value of the EXIF DateTimeOriginal tag (hex code 0x9003) is preferred. If the DateTimeOriginal tag is not found, the value of DateTimeDigitized (hex code 0x9004) or of DateTime (hex code 0x0132) might be used.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.LongEXIFTime&lt;br /&gt;
|  Shows the date/timestamp of the current picture. The localized long form of the date and time is used. The value of the EXIF DateTimeOriginal tag (hex code 0x9003) is preferred. if the DateTimeOriginal tag is not found, the value of DateTimeDigitized (hex code 0x9004) or of DateTime (hex code 0x0132) might be used.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Longitude&lt;br /&gt;
|  Shows the longitude where the current picture was taken (degrees, minutes, seconds East or West). This is the value of the EXIF GPSInfo.GPSLongitude and GPSInfo.GPSLongitudeRef tags.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.MeteringMode&lt;br /&gt;
|  Shows the metering mode used when the current picture was taken. The possible values are &amp;quot;Center weight&amp;quot;, &amp;quot;Spot&amp;quot;, or &amp;quot;Matrix&amp;quot;. This is the value of the EXIF MeteringMode tag (hex code 0x9207).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.ObjectName&lt;br /&gt;
|  Shows a shorthand reference for the current picture. This is the value of the IPTC ObjectName tag (hex code 0x05).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Orientation&lt;br /&gt;
|  Shows the orientation of the current picture. Possible values are &amp;quot;Top Left&amp;quot;, &amp;quot;Top Right&amp;quot;, &amp;quot;Left Top&amp;quot;, &amp;quot;Right Bottom&amp;quot;, etc. This is the value of the EXIF Orientation tag (hex code 0x0112).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Path&lt;br /&gt;
|  Shows the file path of the current picture&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Process&lt;br /&gt;
|  Shows the process used to compress the current picture&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.ReferenceService&lt;br /&gt;
|  Shows the Service Identifier of a prior envelope to which the current picture refers. This is the value of the IPTC ReferenceService tag (hex code 0x2D).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Resolution&lt;br /&gt;
|  Shows the dimensions of the current picture (Width x Height)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.SlideComment&lt;br /&gt;
|  Shows a description of the current picture. This is the value of the EXIF User Comment tag (hex code 0x9286). This is the same value as Slideshow.EXIFComment.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.SlideIndex&lt;br /&gt;
|  Shows the slide index of the current picture&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Source&lt;br /&gt;
|  Shows the original owner of the current picture. This is the value of the IPTC Source tag (hex code 0x73).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.SpecialInstructions&lt;br /&gt;
|  Shows other editorial instructions concerning the use of the current picture. This is the value of the IPTC SpecialInstructions tag (hex code 0x28).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.State&lt;br /&gt;
|  Shows the State/Province where the current picture was taken. This is the value of the IPTC ProvinceState tag (hex code 0x5F).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Sublocation&lt;br /&gt;
|  Shows the location within a city where the current picture was taken - might indicate the nearest landmark. This is the value of the IPTC SubLocation tag (hex code 0x5C).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.SupplementalCategories&lt;br /&gt;
|  Shows supplemental category codes to further refine the subject of the current picture. This is the value of the IPTC SuppCategory tag (hex code 0x14).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.TimeCreated&lt;br /&gt;
|  Shows the time when the intellectual content of the current picture was created, rather than when the picture was created. This is the value of the IPTC TimeCreated tag (hex code 0x3C).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.TransmissionReference&lt;br /&gt;
|  Shows a code representing the location of original transmission of the current picture. This is the value of the IPTC TransmissionReference tag (hex code 0x67).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.Urgency&lt;br /&gt;
|  Shows the urgency of the current picture. Values are 1-9. The 1 is most urgent. Some image management programs use urgency to indicate picture rating, where urgency 1 is 5 stars and urgency 5 is 1 star. Urgencies 6-9 are not used for rating. This is the value of the IPTC Urgency tag (hex code 0x0A).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Slideshow.WhiteBalance&lt;br /&gt;
|  Shows the white balance mode set when the current picture was taken. The possible values are &amp;quot;Manual&amp;quot; and &amp;quot;Auto&amp;quot;. This is the value of the EXIF WhiteBalance tag (hex code 0xA403).&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== System ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  System.Time&lt;br /&gt;
|  Current time&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.Time(format)&lt;br /&gt;
|  Shows hours (hh), minutes (mm) or seconds (ss). When 12 hour clock is used (xx) will return AM/PM. Also supported: (hh:mm), (mm:ss), (hh:mm:ss), (hh:mm:ss). (xx) option added after dharma&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.Date&lt;br /&gt;
|  Current date&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.Date(format)&lt;br /&gt;
|  Show current date using format, available markings: d (day of month 1-31), dd (day of month 01-31), ddd (short day of the week Mon-Sun), DDD (long day of the week Monday-Sunday), m (month 1-12), mm (month 01-12), mmm (short month name Jan-Dec), MMM (long month name January-December), yy (2-digit year), yyyy (4-digit year). Added after dharma.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.AlarmPos&lt;br /&gt;
|  Shutdown Timer position&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.BatteryLevel&lt;br /&gt;
|  Returns the remaining battery level in range 0-100&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.FreeSpace&lt;br /&gt;
|  Total Freespace on the drive&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.UsedSpace&lt;br /&gt;
|  Total Usedspace on the drive&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.TotalSpace&lt;br /&gt;
|  Totalspace on the drive&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.UsedSpacePercent&lt;br /&gt;
|  Total Usedspace Percent on the drive&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.FreeSpacePercent&lt;br /&gt;
|  Total Freespace Percent on the drive&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.CPUTemperature&lt;br /&gt;
|  Current CPU temperature&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.CpuUsage&lt;br /&gt;
|  Displays the cpu usage for each individual cpu core.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.CoreUsage(id)&lt;br /&gt;
|  Displays the usage of the cpu core with the given &#039;id&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.GPUTemperature&lt;br /&gt;
|  Current GPU temperature&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.FanSpeed&lt;br /&gt;
|  Current fan speed&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.BuildVersion&lt;br /&gt;
|  Version of build&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.BuildDate&lt;br /&gt;
|  Date of build&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.FriendlyName&lt;br /&gt;
|  Returns the Kodi instance name. It will auto append (%hostname%) in case the device name was not changed. eg. &amp;quot;Kodi (htpc)&amp;quot;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.FPS&lt;br /&gt;
|  Current rendering speed (frames per second)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.FreeMemory&lt;br /&gt;
|  Amount of free memory in Mb&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.Memory(format)&lt;br /&gt;
|  Available formats: used, used.percent, free, free.percent, total&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.ScreenMode&lt;br /&gt;
|  Screenmode (eg windowed / fullscreen)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.ScreenWidth&lt;br /&gt;
|  Width of screen in pixels&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.ScreenHeight&lt;br /&gt;
|  Height of screen in pixels&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.StartupWindow&lt;br /&gt;
|  The Window Kodi will load on startup&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.CurrentWindow&lt;br /&gt;
|  Current Window we are in&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.CurrentControl&lt;br /&gt;
|  Current focused control&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.CurrentControlID&lt;br /&gt;
|  ID of the currently focused control.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.DVDLabel&lt;br /&gt;
|  Label of the disk in the &amp;lt;span class=&amp;quot;nobr&amp;quot;&amp;gt;DVD-ROM&amp;lt;/span&amp;gt; drive&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.HddTemperature&lt;br /&gt;
|  Hdd temperature&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.OSVersionInfo&lt;br /&gt;
|  System name + kernel version&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.KernelVersion (deprecated)&lt;br /&gt;
|  System name + kernel version&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.Uptime&lt;br /&gt;
|  System current uptime&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.TotalUptime&lt;br /&gt;
|  System total uptime&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.CpuFrequency&lt;br /&gt;
|  System cpu frequency&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.ScreenResolution&lt;br /&gt;
|  Screen resolution&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.VideoEncoderInfo&lt;br /&gt;
|  Video encoder info&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.InternetState&lt;br /&gt;
|  Will return the internet state, connected or not connected&lt;br /&gt;
and for Conditional use: Connected-&amp;gt;TRUE, not Connected-&amp;gt;FALSE, do not use to check status in a pythonscript since it is threaded.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.Language&lt;br /&gt;
|  Shows the current language&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.ProfileName&lt;br /&gt;
|  Shows the User name of the currently logged in Kodi user&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.ProfileCount&lt;br /&gt;
|  Shows the number of defined profiles&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.ProfileAutoLogin&lt;br /&gt;
|  The profile Kodi will auto login to&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.Progressbar&lt;br /&gt;
|  The percentage of the currently active progress.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.StereoscopicMode&lt;br /&gt;
|  The prefered stereoscopic mode (settings &amp;gt; video &amp;gt; playback)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.TemperatureUnits&lt;br /&gt;
|  Shows Celsius or Fahrenheit symbol&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.AddonTitle(id)&lt;br /&gt;
|  Returns the title of the addon with the given id&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.AddonVersion(id)&lt;br /&gt;
|  Returns the version of the addon with the given id&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Visualisation ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  Visualisation.Preset&lt;br /&gt;
|  Shows the current preset of the visualisation.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Visualisation.Name&lt;br /&gt;
|  Shows the name of the visualisation.&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Weather labels ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  Weather.Conditions&lt;br /&gt;
|  Current weather conditions – this is looked up in a background process.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Weather.Temperature&lt;br /&gt;
|  Current weather temperature&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Weather.Location&lt;br /&gt;
|  City/town which the above two items are for&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Weather.fanartcode&lt;br /&gt;
|  Current weather fanartcode.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Weather.plugin&lt;br /&gt;
|  Current weather plugin.&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Window ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  Window([window]).Property(key)&lt;br /&gt;
|  Window property. (key can be any value, optional window can be id or name)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Window.Property(xmlfile)&lt;br /&gt;
|  Displays the name of the xml file currently shown&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Window(AddonBrowser).Property(Updated)&lt;br /&gt;
|  Shows the date and time the addon repo was last checked for updates&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Window.Property(Addon.ID)&lt;br /&gt;
| Returns the id of the selected addon, in DialogAddonSettings.xml&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Window(Home).Property(key)&lt;br /&gt;
|  The home window has the following info labels.&lt;br /&gt;
Movies.Count, Movies.Watched, Movies.UnWatched, TVShows.Count, TVShows.Watched, TVShows.UnWatched, Episodes.Count, Episodes.Watched, Episodes.UnWatched, MusicVideos.Count, MusicVideos.Watched, MusicVideos.UnWatched, Music.SongsCount, Music.AlbumsCount, Music.ArtistsCount&lt;br /&gt;
&lt;br /&gt;
LatestMovie.[1-10].Title, LatestMovie.[1-10].Year, LatestMovie.[1-10].RunningTime, LatestMovie.[1-10].Rating, LatestMovie.[1-10].Plot, LatestMovie.[1-10].Trailer, LatestMovie.[1-10].Thumb, LatestMovie.[1-10].Fanart, LatestMovie.[1-10].Path&lt;br /&gt;
&lt;br /&gt;
LatestEpisode.[1-10].ShowTitle, LatestEpisode.[1-10].EpisodeTitle, LatestEpisode.[1-10].EpisodeNo, LatestEpisode.[1-10].EpisodeSeason, LatestEpisode.[1-10].EpisodeNumber, LatestEpisode.[1-10].Rating, LatestEpisode.[1-10].Plot, LatestEpisode.[1-10].Thumb, LatestEpisode.[1-10].ShowThumb, LatestEpisode.[1-10].SeasonThumb, LatestEpisode.[1-10].Fanart, LatestEpisode.[1-10].Path&lt;br /&gt;
&lt;br /&gt;
LatestMusicVideo.[1-10].Title, LatestMusicVideo.[1-10].Thumb, LatestMusicVideo.[1-10].Year, LatestMusicVideo.[1-10].Plot, LatestMusicVideo.[1-10].RunningTime, LatestMusicVideo.[1-10].Path, LatestMusicVideo.[1-10].Artist, LatestMusicVideo.[1-10].Fanart&lt;br /&gt;
&lt;br /&gt;
LatestSong.[1-10].Title, LatestSong.[1-10].Artist, LatestSong.[1-10].Album, LatestSong.[1-10].Year, LatestSong.[1-10].Rating, LatestSong.[1-10].Thumb, LatestSong.[1-10].Fanart, LatestSong.[1-10].Path&lt;br /&gt;
&lt;br /&gt;
LatestAlbum.[1-10].Title, LatestAlbum.[1-10].Artist, LatestAlbum.[1-10].Year, LatestAlbum.[1-10].Rating, LatestAlbum.[1-10].Thumb, LatestAlbum.[1-10].Fanart, LatestAlbum.[1-10].Path&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Window(Weather).Property(key)&lt;br /&gt;
|  The weather window has the following info labels.&lt;br /&gt;
Location, Updated, Current.Condition, Current.Temperature, Current.FeelsLike, Current.UVIndex, Current.Wind (From &amp;lt;wind dir.&amp;gt; at &amp;lt;speed&amp;gt; &amp;lt;unit&amp;gt;), Current.WindSpeed, Current.WindDirection, Current.DewPoint, Current.Humidity, Day[0-6].Title, Day[0-6].HighTemp, Day[0-6].LowTemp, Day[0-6].Outlook, WeatherProvider&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Data set in Current.Temperature, Current.FeelsLike, Day[0-6].HighTemp, Day[0-6].LowTemp should be provided in Celsius, and will be autoconverted according to System.TemperatureUnits&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Images Available in Kodi ===&lt;br /&gt;
&lt;br /&gt;
See &#039;&#039;&#039;[[Artwork/Accessing with skins and JSON-RPC]]&#039;&#039;&#039; for the general pattern of accessing artwork for media items. Below is a list of other possible images available as InfoLabels.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! InfoLabels&lt;br /&gt;
! style=&amp;quot;80%&amp;quot; | Definition&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Art(type)&lt;br /&gt;
|  Artwork for the current listitem.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Fanart.Image&lt;br /&gt;
|  Fanart image for the parent TV Show. Note: Deprecated, use ListItem.Art(tvshow.fanart) instead.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Thumb&lt;br /&gt;
|  Shows the thumbnail (if it exists) of the currently selected item in a list or thumb control. Note: Deprecated but still available, returns the same as ListItem.Art(thumb).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Icon&lt;br /&gt;
|  Shows the thumbnail (if it exists) of the currently selected item in a list or thumb control. If no thumbnail image exists, it will show the default icon.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.ActualIcon&lt;br /&gt;
|  Shows the default icon of the currently selected item in a list or thumb control.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Overlay&lt;br /&gt;
|  Shows the Overlay Icon status (compressed file [OverlayRAR.png], watched [OverlayWatched.png], unwatched [OverlayUnwatched.png], locked [OverlayLocked.png]) of the currently selected item in a list or thumb control.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.EPGEventIcon&lt;br /&gt;
|  Returns the icon of the EPG programme (if available).&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  ListItem.Property(Fanart_Image)&lt;br /&gt;
|  Fanart Image currently selected item or of the parent TV show. Note: Deprecated, use ListItem.Art(fanart) or ListItem.Art(tvshow.fanart) instead.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Cover&lt;br /&gt;
|  Cover of currently playing album&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  MusicPlayer.Property(Fanart_Image)&lt;br /&gt;
|  Fanart image of the currently playing artist&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Art(type)&lt;br /&gt;
|  Artwork for the currently playing item.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Player.Icon&lt;br /&gt;
|  Shows the thumbnail (if it exists) of the currently playing item. If no thumbnail image exists, it will show the icon.&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  Player.StarRating&lt;br /&gt;
|  Returns a value of 0 to 5 as a graphical display from images named rating0.png to rating5.png of the skin&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Pvr.NowRecordingChannelIcon&lt;br /&gt;
|  Channel icon of the programme currently being recorded.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Pvr.NextRecordingChannelIcon&lt;br /&gt;
|  Channel icon of the programme that will be recorded next.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Pvr.EPGEventIcon&lt;br /&gt;
|  Returns the icon of the currently playing EPG programme (if available).&lt;br /&gt;
|  v18&lt;br /&gt;
|-&lt;br /&gt;
|  Skin.String(name)&lt;br /&gt;
| Returns the image or image folder set by the user via a Skin.SetPath(name) or Skin.SetImage(name) &#039;&#039;&#039;[[List of Built In Functions]]&#039;&#039;&#039;. Allows skinners to have &amp;lt;span class=&amp;quot;nobr&amp;quot;&amp;gt;user-customisable&amp;lt;/span&amp;gt; images and multiimages.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.AddonIcon(id)&lt;br /&gt;
|  Returns the Icon of the specified addon. Instead of specifying the id directly, one can also use an infolabel (eg. $INFO[Skin.String(Foo)])&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  System.ProfileThumb&lt;br /&gt;
|  Shows the Thumbnail image of the currently logged in Kodi user&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  VideoPlayer.Cover&lt;br /&gt;
|  Cover of currently playing movie.  Note: Deprecated, use ListItem.Art(poster) instead.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Weather.ConditionsIcon&lt;br /&gt;
|  Image of current weather conditions (NOTE: Can be used to load/refresh weather conditions)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Window([window]).Property(key)&lt;br /&gt;
|  Window property. (key can be any value, optional window can be id or name)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|  Window(Weather).Property(key)&lt;br /&gt;
|  The weather window has the following info images.&lt;br /&gt;
Current.ConditionIcon, Day[0-6].OutlookIcon, Current.FanartCode, Day[0-6].FanartCode, WeatherProviderLogo&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section end=&amp;quot;main content&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&#039;&#039;&#039;Development:&#039;&#039;&#039;&lt;br /&gt;
* [[Add-on development]]&lt;br /&gt;
* [[Skinning]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Skin development]]&lt;br /&gt;
[[Category:Add-on development]]&lt;/div&gt;</summary>
		<author><name>Black eagle</name></author>
	</entry>
	<entry>
		<id>https://kodi.wiki/index.php?title=Music_tagging&amp;diff=219308</id>
		<title>Music tagging</title>
		<link rel="alternate" type="text/html" href="https://kodi.wiki/index.php?title=Music_tagging&amp;diff=219308"/>
		<updated>2020-08-11T10:50:01Z</updated>

		<summary type="html">&lt;p&gt;Black eagle: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{MusicLibraryCreate}}&lt;br /&gt;
{{mininav|[[Music library]]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
This page provides the following information:&lt;br /&gt;
&lt;br /&gt;
*How the Music section differs from the Video section of {{kodi}}&lt;br /&gt;
*The recommended method to organise your music files &lt;br /&gt;
*The recommended method for tagging your music files&lt;br /&gt;
*Explanation of some commonly misunderstood Music File Tags&lt;br /&gt;
*The Audio Files and Tags that {{kodi}} reads and uses&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Understanding the Music Library =&lt;br /&gt;
&amp;lt;section begin=&amp;quot;understanding&amp;quot; /&amp;gt;There is a fundamental differences between video library operation and the music library operation: &lt;br /&gt;
*The video library is based on using the filenames or folder names to obtain online data. If they are incorrectly named, then there are no scraper results and there will be no library entry.&lt;br /&gt;
*&#039;&#039;&#039;The music library is based on scanning tags embedded in the music files.&#039;&#039;&#039; It ignores the folder names and structure and file names. Proper tagging is essential to ensure the library is populated correctly. Having slight variations in the tags for artist and album names could mean duplicated and unwanted entries.&amp;lt;section end=&amp;quot;understanding&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Folder and File Structure =&lt;br /&gt;
Although {{kodi}} ignores the folder structure and the names of the folders and files, the structure of your folders is important as it affects the operation of other functions such as Import/Export, nfo files and Artwork. For example, if you have all your music files in one folder (which is possible), then you lose the ability to use local nfo files, local artwork, and the import/export module will not function correctly.&lt;br /&gt;
&lt;br /&gt;
The following is {{kodi}} &#039;&#039;&#039;best practice&#039;&#039;&#039;. Remember use a layout that is nice for you, but &#039;&#039;&#039;tag accurately.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Files ==&lt;br /&gt;
Song files require suitable tagging for use in {{kodi}}. While {{kodi}} can scan minimal tags into the library, it can lead to errors in the library and subsequent scraping. We recommend music files are tagged with MusicBrainz as detailed below.&lt;br /&gt;
&lt;br /&gt;
Remember that {{kodi}} does not extract any information from the filename, so the filename is your choice.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Folders ==&lt;br /&gt;
{{kodi}} is quite flexible with the folder structure. The diagram below is an &#039;&#039;&#039;example&#039;&#039;&#039;. You should group your albums in a manner that makes sense to you.&lt;br /&gt;
&lt;br /&gt;
To ensure {{kodi}} and other add-on processes can function efficently and correctly, the following is recommended.&lt;br /&gt;
*Songs from the same album should be in the one folder&lt;br /&gt;
*If there is more than one disk in the release, each disk should be in a sub-folder containing the songs from that disk&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a typical folder structure:&lt;br /&gt;
&lt;br /&gt;
 f:\   ....................................(root)&lt;br /&gt;
  |__Artist Information  ..................(Artist Information Folder)&lt;br /&gt;
  |&lt;br /&gt;
  |__Artist Music   .......................(source folder)&lt;br /&gt;
  |  |__ Madonna   ........................(artist folder)&lt;br /&gt;
  |  |   |__ Beautiful Stranger (1999)   ..(album folder)&lt;br /&gt;
  |  |   |   |__ Song 1&lt;br /&gt;
  |  |   |   |__ Song 2&lt;br /&gt;
  |  |   |   |__ Song 3 etc&lt;br /&gt;
  |  |   |__ Bedtime Stories (1994)   .....(album folder)&lt;br /&gt;
  |  |   |   |__ Song 1&lt;br /&gt;
  |  |   |   |__ Song 2&lt;br /&gt;
  |  |   |   |__ Song 3 etc&lt;br /&gt;
  |  |   |__ Like A Prayer (1989)   .......(album folder)&lt;br /&gt;
  |  |   |   |__ Song 1&lt;br /&gt;
  |  |   |   |__ Song 2&lt;br /&gt;
  |  |   |   |__ Song 3 etc&lt;br /&gt;
  |  |__ Simply Red   .....................(artist folder)&lt;br /&gt;
  |      |__ Picture Book (1985)   ........(album folder)&lt;br /&gt;
  |          |__ Song 1&lt;br /&gt;
  |          |__ Song 2&lt;br /&gt;
  |          |__ Song 3 etc&lt;br /&gt;
  |&lt;br /&gt;
  |__Compilations   .......................(Source)&lt;br /&gt;
  |  |__ Essential Eighties   .............(album folder)&lt;br /&gt;
  |  |       |__ Song 1&lt;br /&gt;
  |  |       |__ Song 2&lt;br /&gt;
  |  |       |__ Song 3 etc&lt;br /&gt;
  |  |__ 100% Hits- Best of 2005   ........(album folder)&lt;br /&gt;
  |          |__ Song 1&lt;br /&gt;
  |          |__ Song 2&lt;br /&gt;
  |          |__ Song 3 etc&lt;br /&gt;
  |&lt;br /&gt;
  |__Classical   ..........................(Source)&lt;br /&gt;
  |&lt;br /&gt;
  |__Audiobooks   .........................(Source)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sources ==&lt;br /&gt;
A source is the parent folder that contains your media collection- in this case Music. This folder is then set as a Source in {{kodi}} which enables {{kodi}} to access your Music. &lt;br /&gt;
&lt;br /&gt;
In the diagram from the previous section &#039;&#039;Artist Music, Compilations, Classical&#039;&#039; and &#039;&#039;Audiobooks&#039;&#039; are Sources.&lt;br /&gt;
&lt;br /&gt;
Notes on naming and setting a &#039;&#039;&#039;Source&#039;&#039;&#039;:&lt;br /&gt;
*There is no limit on the number of Sources that can be used&lt;br /&gt;
*The Source names, which essentially is your folder name, can be anything that makes sense to you. The names should be unique, which makes it easier to navigate to the correct source in {{Kodi}}&lt;br /&gt;
*Larger libraries do benefit from multiple sources&lt;br /&gt;
*There is no requirement on how to separate music between Sources. Many users separate based on Genre, alphabetical listing, release type or any method you prefer&lt;br /&gt;
*If your music collection exists on multiple drives, then a Source folder is required for each drive&lt;br /&gt;
*&#039;&#039;&#039;Never&#039;&#039;&#039; mix media classes. ie, ensure TV Shows, Movies, Music Videos or Music are not in the same source, nor as a sub-folder of another source.&lt;br /&gt;
*&#039;&#039;&#039;Never&#039;&#039;&#039; set the entire hard drive as your Source as this will create multiple ghost entries.&lt;br /&gt;
&lt;br /&gt;
Setting and Scanning of Sources is covered in detail in the next step of the guide. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Tagging =&lt;br /&gt;
Most music files purchased or ripped by your favourite software have only minimal metadata embedded. Normally this is not a problem and works very well on simple music players.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{kodi}}, being an advanced and feature rich player, requires greater accuracy with the embedded tags. Any slight variance in, for example, the Album name between the tracks from the same album will see multiple entries in the library for that Album. It is not uncommon to have a single album split into three similarly named albums. Also true for Artists. It is for this reason that there is a separation of the Scanning and Scraping processes for Music. The initial scan allows you to find and correct errors in tagging, before scraping.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
This table has examples of errors in tagging, which will cause duplicated entries in the library...&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
!Similar Name 1 || Similar Name 2 || Note&lt;br /&gt;
|-&lt;br /&gt;
|György Ligeti || Gyorgy Ligeti || Accented and unaccented names will create duplicate entries&lt;br /&gt;
|-&lt;br /&gt;
|The Best of || The Very Best Of || Inconsistent naming between songs of the same album and/or artist will cause duplicated entries&lt;br /&gt;
|-&lt;br /&gt;
|Madonna || Madonnna || Spelling mistakes will cause duplicated entries for albums and/or artists&lt;br /&gt;
|-&lt;br /&gt;
|Sting || Sting and The Police || Seen as two separate and unrelated Artists&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
As {{kodi}} scans your music collection, it copies the data contained in those tags into the {{kodi}} music database. The benefits of this are:&lt;br /&gt;
*Once the scan is complete, the tags are not accessed again&lt;br /&gt;
*All information is now obtained from the database. This has the benefit of dramatically increasing efficency and speed when navigating the library.&lt;br /&gt;
*Now that a database entry exists, you are able to scrape additional information from online sources. This is covered later in the guide.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== MusicBrainz ==&lt;br /&gt;
&#039;&#039;&#039;{{kodi}} has strong support for MusicBrainz tagging. It is highly recommended that users tag their music files using MusicBrainz Picard.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;MusicBrainz Picard&#039;&#039;&#039; is the music file tagger software that can access the MusicBrainz database to locate metadata to embed into your music files. MBIDs are useful because names are not unique. The bigger and more diverse your music collection is, the more likely you will encounter Artists with the same name. &lt;br /&gt;
&lt;br /&gt;
The advantages of tagging with MusicBrainz are:&lt;br /&gt;
*They allow you to have different artists with the same name in your library e.g. &amp;quot;John Williams&amp;quot; the classical guitarist and &amp;quot;John Williams&amp;quot; the film music composer and conductor.&lt;br /&gt;
*They negate inconsistencies in artist naming e.g. having &amp;quot;Peter Tchaikovsky&amp;quot; on some albums and &amp;quot;Piotr Czajkowski&amp;quot; on others&lt;br /&gt;
*They allow you to have more than one release of an album in your library e.g. the normal and deluxe editions of an album&lt;br /&gt;
*They clearly identify the artist and album in ways that names alone can not. This can then be used to accurately scrape additional artist and album information and locate the correct artwork&lt;br /&gt;
*They allow the scraping process to be more efficient, otherwise an extra call is made to try and get an mbid first to use at the scraping sites, and each request from Musicbrainz must be throttled to 1 per sec which will slow the scraping process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Below is a screenshot of the main screen of the Picard software. A brief description of the layout as follows.&lt;br /&gt;
&lt;br /&gt;
*Top Left Box- Folder listing of your music collection&lt;br /&gt;
*Top Centre Box- Albums are dragged and dropped here in preparation for matching and tagging. Pressing &#039;&#039;Lookup&#039;&#039; (greyed out) will commence the lookup process&lt;br /&gt;
*Top Right Box- Matching albums are displayed here and your songs are overlayed. In the screenshot, songs 01, 08 and 09 have been matched to the suggested album. If all songs match and you agree the correct album was located, simply pressing Save will tag the album with the tags displayed in the Bottom Tag Box.&lt;br /&gt;
*Bottom Tag Box - Selecting a song from the Top Right Box will display all available tag fields (left column), the current tags in the music file (Original Value column) and the MusicBrainz tags to be embedded in the music file (right column).&lt;br /&gt;
&lt;br /&gt;
The example in the image below shows the following:&lt;br /&gt;
*Most tags are missing (original value column)&lt;br /&gt;
*The top three yellow entries are incorrect (original value column) and the corrections are in the right column&lt;br /&gt;
*The green entries in the right column indicate new tags to be embedded&lt;br /&gt;
*The black entries at the bottom of the list indicate no change to the existing tags as they are correct or not used by MusicBrainz.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;packed&amp;quot; widths=&amp;quot;1000px&amp;quot; heights=&amp;quot;563px&amp;quot;&amp;gt;&lt;br /&gt;
File:MusicBrainzPicard01.jpg&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Although Picard is very easy to use, you must avoid blindly accepting everything offered by the software. It is important that you confirm the correct album was located. Due to the global nature of the database, there are many releases for a single album. These releases differ between countries, usually due to copyright requirements. This may lead you to inadvertendly select the incorrect release for your album, even though it is named exactly the same. The differences between releases may be as simple as different song ordering or the inclusion of additional bonus tracks.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clear Existing Tags ==&lt;br /&gt;
For the best tagging experience set the correct options in Picard, particularly the &amp;quot;Clear Existing Tags&amp;quot; option in settings. This option means that any old tags that may cause issues are wiped, preserving only the musicbrainz tagging. It will also be wise to tag using ID3v2.4 compatibility.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;packed&amp;quot; widths=&amp;quot;500px&amp;quot; heights=&amp;quot;283px&amp;quot;&amp;gt;&lt;br /&gt;
File:Picard options.jpg&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== albumartists ==&lt;br /&gt;
{{Kodi}} requires the &#039;&#039;&#039;albumartists&#039;&#039;&#039; tag to correctly handle multiple album artists on the same album. This tag is not a default tag in MusicBrainz Picard and other tagging software. &amp;lt;ref&amp;gt; https://forum.kodi.tv/showthread.php?tid=334729&amp;amp;pid=2760161#pid2760161 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To include this tag add a new script under &#039;&#039;Options &amp;gt; Options &amp;gt; Scripting &amp;gt; Add new script&#039;&#039; and include the following code...&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
$setmulti(albumartists,%_albumartists%)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;packed&amp;quot; widths=&amp;quot;500px&amp;quot; heights=&amp;quot;283px&amp;quot;&amp;gt;&lt;br /&gt;
File:Picard Script.JPG&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the music files are tagged, avoid modifying the MusicBrainz tags unless you clearly understand the relationship of the MBID&#039;s and the other related tags. For example, embedding MBID tags, but then editing the Artist tag or Album Artist tag will result in incorrect entries in the library.&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
*If you need to change the artist or album artist tag you also have to edit the matching artist mbid tag and album artist mbid tag. &lt;br /&gt;
*If Kodi finds a release mbid it will expect the artist mbid tags to also be present.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;&#039;&#039;See: [https://musicbrainz.org/ MusicBrainz Website]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
:&#039;&#039;&#039;&#039;&#039;See: [https://picard.musicbrainz.org/ MusicBrainz Picard Software]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;center&amp;gt;{{red|&#039;&#039;&#039;The remainder of this page deals with special use cases or provides information for technical interest and reference only. It can be safely disregarded if these do not apply to you&#039;&#039;&#039;}}&amp;lt;/center&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;{{linear-gradient|left|#f5d3ff, #12b2e7}}&amp;quot;&amp;gt;{{next|[[Adding_music_to_the_library|Scanning Music into Library]]}} &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Ripping CD&#039;s =&lt;br /&gt;
{{main|Ripping CDs}}&lt;br /&gt;
{{#lst:Ripping CDs|intro}}&lt;br /&gt;
&lt;br /&gt;
There is no requirement to use the {{Kodi}} CD Ripper. If you are comfortable using other ripping software, then we recommend you continue using that software.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Cue Sheets =&lt;br /&gt;
{{#lst:Cue_sheets|intro}}&lt;br /&gt;
&lt;br /&gt;
{{kodi}} does provide basic support for using cue sheets to define individual tracks when an entire CD has been ripped into a single music file. However the information provided by  the cue sheet standard is much more limited than that of standard tagging, hence to enjoy the full music library features it is recommended that tracks are ripped into separate files and fully tagged.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{red|If you do not use Cue Sheets you can safely move onto the next step.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
;{{see also|Cue_sheets}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Streams =&lt;br /&gt;
{{#lst:Internet_video_and_audio_streams|intro}}&lt;br /&gt;
&lt;br /&gt;
;{{see also|Internet_video_and_audio_streams}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Technical Explanation: File tags =&lt;br /&gt;
For many categories, such as genres and artists, {{kodi}} supports multiple values in the one field.  By default it uses the character sequence &amp;quot; / &amp;quot; to divide the entry into multiple values.  This divider may be changed via [[advancedsettings.xml]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Resolving Compilations and Multiple Artists ==&lt;br /&gt;
{{red|Applies to v17 and below. v18 introduced the [[Artist information folder]] which solved these problems. You are encouraged to update to v18}}&lt;br /&gt;
&lt;br /&gt;
{{kodi}} reads the &#039;&#039;Album Artist&#039;&#039; tag in ID3, Ogg, APE and MP4 tags and uses it if available to assign an artist to the album (independently of the track&#039;s artist information).  This is the &amp;quot;Album Artist&amp;quot; tag (in ID3 this is represented by the &amp;quot;TPE2&amp;quot; tag; in vorbiscomment (ogg) files &amp;quot;ALBUMARTIST&amp;quot;, &amp;quot;ALBUM ARTIST&amp;quot; and &amp;quot;ENSEMBLE&amp;quot; are all supported).  Multiple artists for either a track or album artist can be specified in &amp;quot;Artist1 / Artist2 / Artist3&amp;quot; format.&lt;br /&gt;
&lt;br /&gt;
If no &#039;&#039;Album Artist&#039;&#039; tag exists, {{kodi}} will use the first (primary) artist from the tracks as the &#039;&#039;Album Artist&#039;&#039;.  Essentially we do a string comparison of all the track artists, and assign the common artists as the &#039;&#039;Album artist&#039;&#039;. This is generally the TPE1 tag in ID3.&lt;br /&gt;
&lt;br /&gt;
As many users don&#039;t yet use the &#039;&#039;Album Artist&#039;&#039; tag, {{kodi}} has an additional filter system for identifying compilation albums, where each track normally has a different artist.  As {{kodi}} scans a folder, it does the following:&lt;br /&gt;
# Identifies albums based on &#039;&#039;Album&#039;&#039; name alone in the folder and groups the songs that have the same &#039;&#039;Album&#039;&#039; name together as an album.&lt;br /&gt;
# Runs through each album&#039;s assigned songs.  If there is 2 or more tracks with the same &#039;&#039;Track&#039;&#039; number, the group of songs must come from 2 or more albums, so the &#039;&#039;Album&#039;&#039; name is ruled out as a possible compilation.&lt;br /&gt;
# If any of the songs assigned to the &#039;&#039;Album&#039;&#039; name have an &#039;&#039;Album Artist&#039;&#039; tag, then {{kodi}} assumes the user knows what they&#039;re doing, and this album is also ruled out from being a compilation.&lt;br /&gt;
# If two or more songs assigned to the &#039;&#039;Album&#039;&#039; name then have different primary artists, then the &#039;&#039;Album&#039;&#039; name is considered to be a group of songs from a compilation, and the &#039;&#039;Various Artists&#039;&#039;&amp;quot; tag is assigned as the album artist.&lt;br /&gt;
# Otherwise, if all the songs have the same primary artist but don&#039;t have the same full artist list (eg a song or two has an additional artist) then the album is assigned the primary artist as it&#039;s &#039;&#039;Album Artist&#039;&#039;, and we assume the additional artists are guest artists.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ratings in ID3 tags ==&lt;br /&gt;
Ratings in ID3 tags are read via the POPM field, and (if this doesn&#039;t exist) in a custom (TXXX) field named &amp;quot;RATING&amp;quot;.  For the RATING field, we accept 1-5 as valid ratings.  For the POPM field things are more complicated, as there is no established standard in place.  We currently most closely respect what Mediamonkey does, and also have some support for what Windows Media Player 11 does.  The POPM tag takes a value from 0..255, with 0 meaning no rating, 1 the worst, and 255 the best.  We currently map these as follows:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
!&#039;&#039;&#039;POPM value&#039;&#039;&#039; || &#039;&#039;&#039;Star rating&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|0 ||&lt;br /&gt;
|- &lt;br /&gt;
|1 || &#039;&#039;&#039;*&#039;&#039;&#039; This is a special case for Windows Media Player&lt;br /&gt;
|- &lt;br /&gt;
| 2-8 || &lt;br /&gt;
|- &lt;br /&gt;
|9-49 || &#039;&#039;&#039;*&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|50-113 ||&#039;&#039;&#039;**&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|114-167 || &#039;&#039;&#039;***&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|168-218 || &#039;&#039;&#039;****&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|219-255 ||&#039;&#039;&#039;*****&#039;&#039;&#039;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Audio Formats &amp;amp; Tags =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Supported Audio Formats ==&lt;br /&gt;
Although the list of playable formats is quite comprehensive, it is not accurate to say that every {{kodi}} installation will play every format. The ability to play some of the more obscure formats will depend upon the version of {{kodi}} and the operating system in use. Some formats will require the installation of add-ons.&lt;br /&gt;
&lt;br /&gt;
{{#lst:Advancedsettings.xml|musicextensions}}&lt;br /&gt;
&lt;br /&gt;
;{{See also|Advancedsettings.xml}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Supported Metadata Containers ==&lt;br /&gt;
The following metadata containers are supported by {{kodi}}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Metadata Container || Note&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:APEv2 tag|APEv2 tag]] ||&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:Advanced_Systems_Format|ASF]] ||&lt;br /&gt;
|-&lt;br /&gt;
|Generic Tag || A generic tag for basic data from other odd file types&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:ID3|ID3]] || v1, v2.3 and v2.4&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:MPEG-4 Part 14#Metadata|MP4]] ||&lt;br /&gt;
|-&lt;br /&gt;
|[https://xiph.org/ Xiph.org] || Vorbis Comments&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Common File &amp;amp; Tag Combination ==&lt;br /&gt;
You will notice that not all the tags listed in the section &#039;&#039;Supported Audio Formats&#039;&#039; above are listed in the following table. Those formats that are ommitted do not have provision to support embedded tags. If your collection contains any of these unsupported formats, you will be unable to scan the music into the library. Your options are:&lt;br /&gt;
#Convert your audio file to a supported format and tag using MusicBrainz Picard. (recommended)&lt;br /&gt;
#Access your music via the File Manager or via File View&lt;br /&gt;
&lt;br /&gt;
{{kodi}} supports the following common Audio File and Tag Formats &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!| Metadata container&lt;br /&gt;
!| Additional Filename extensions&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:APEv2 tag|APEv2 tag]] || ape, mp3, aac, wv, mpc&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:Advanced_Systems_Format|ASF]] || asf, wmv, wma&lt;br /&gt;
|-&lt;br /&gt;
| Generic Tag || it, mod, module, nst, wow, s3m, xm&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:ID3|ID3 v1]] || mp3, aac&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:ID3|ID3 v2]] || mp3, aac, tta, aif, aiff, wav, flac&lt;br /&gt;
|-&lt;br /&gt;
| iTunes [[wikipedia:MPEG-4 Part 14#Metadata|MP4]] || .3g2 .m4a .m4b .m4p .m4r .m4v .mp4&lt;br /&gt;
|-&lt;br /&gt;
|[https://xiph.org/ Xiph.org] || flac, oga, ogg, opus&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Note:&lt;br /&gt;
*FLAC files- xiph tags override id3v2 tags &lt;br /&gt;
*mp3 files can have either id3 or APE tags&lt;br /&gt;
*mka, dsf, dff - ID3v2 format read but are handled by ffmpeg tag reader and it does not support all tags from IDE standard)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Tags {{kodi}} reads ==&lt;br /&gt;
{{kodi}} will scan the following tags embedded in the music file. The column &#039;&#039;{{kodi}} Version&#039;&#039; indicates the version of {{kodi}} that the tag was introduced, and will work in subsequent versions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=&amp;quot;TagTable&amp;quot; /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align:left;&amp;quot;| {{kodi}} Version&lt;br /&gt;
! Vorbis (.Flac)&lt;br /&gt;
! ID3v2 (.mp3)&lt;br /&gt;
! APE&lt;br /&gt;
! MP4&lt;br /&gt;
! ASF&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ARTIST&lt;br /&gt;
|TPE1&lt;br /&gt;
|ARTIST&lt;br /&gt;
|\251ART&lt;br /&gt;
|Author&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ARTISTS&lt;br /&gt;
|ARTISTS&lt;br /&gt;
|ARTISTS&lt;br /&gt;
| ----:com.apple.iTunes:ARTISTS&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ALBUMARTIST  or ALBUM ARTIST&lt;br /&gt;
|TPE2 OR ALBUMARTIST or ALBUM ARTIST&lt;br /&gt;
|ALBUMARTIST  or ALBUM ARTIST&lt;br /&gt;
|aART&lt;br /&gt;
|WM/AlbumArtist&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ALBUMARTISTS or ALBUM ARTISTS&lt;br /&gt;
|ALBUMARTISTS or ALBUM ARTISTS&lt;br /&gt;
|ALBUMARTISTS or ALBUM ARTISTS&lt;br /&gt;
| ----:com.apple.iTunes:ALBUMARTISTS&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ALBUM&lt;br /&gt;
|TALB&lt;br /&gt;
|ALBUM&lt;br /&gt;
|\251alb&lt;br /&gt;
|WM/AlbumTitle&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|TITLE&lt;br /&gt;
|TIT2&lt;br /&gt;
|TITLE&lt;br /&gt;
|\251nam&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|TRACKNUMBER&lt;br /&gt;
|TRCK&lt;br /&gt;
|TRACKNUMBER or TRACK&lt;br /&gt;
|trkn&lt;br /&gt;
|WM/TrackNumber or WM/Track&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|DISCNUMBER&lt;br /&gt;
|TPOS&lt;br /&gt;
|DISCNUMBER or DISC&lt;br /&gt;
|disk&lt;br /&gt;
|WM/PartOfSet&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|YEAR&lt;br /&gt;
|TYER&lt;br /&gt;
|YEAR&lt;br /&gt;
|\251day&lt;br /&gt;
|WM/Year&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|DATE&lt;br /&gt;
|TDRC, TDRL&lt;br /&gt;
|DATE&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|GENRE&lt;br /&gt;
|TCON&lt;br /&gt;
|GENRE&lt;br /&gt;
|\251gen&lt;br /&gt;
|WM/Genre&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MOOD&lt;br /&gt;
|TMOO OR TXXX:MOOD&lt;br /&gt;
|MOOD&lt;br /&gt;
| ----:com.apple.iTunes:MOOD&lt;br /&gt;
|WM/Mood&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|COMMENT&lt;br /&gt;
|COMM&lt;br /&gt;
|COMMENT&lt;br /&gt;
|\251cmt&lt;br /&gt;
|(COMMENT)&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|CUESHEET&lt;br /&gt;
|&lt;br /&gt;
|CUESHEET&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|COMPILATION&lt;br /&gt;
|TCMP&lt;br /&gt;
|COMPILATION&lt;br /&gt;
|cpil&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|LYRICS&lt;br /&gt;
|USLT&lt;br /&gt;
|LYRICS&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_TRACK_GAIN&lt;br /&gt;
|REPLAYGAIN_TRACK_GAIN&lt;br /&gt;
|REPLAYGAIN_TRACK_GAIN&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_track_gain&lt;br /&gt;
|replaygain_track_gain&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_ALBUM_GAIN&lt;br /&gt;
|REPLAYGAIN_ALBUM_GAIN&lt;br /&gt;
|REPLAYGAIN_ALBUM_GAIN&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_album_gain&lt;br /&gt;
|replaygain_album_gain&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_TRACK_PEAK&lt;br /&gt;
|REPLAYGAIN_TRACK_PEAK&lt;br /&gt;
|REPLAYGAIN_TRACK_PEAK&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_track_peak&lt;br /&gt;
|replaygain_track_peak&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_album_peak&lt;br /&gt;
|replaygain_album_peak&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_album_peak&lt;br /&gt;
|replaygain_album_peak&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ARTISTID&lt;br /&gt;
|MUSICBRAINZ ARTIST ID&lt;br /&gt;
|MUSICBRAINZ_ARTISTID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Artist Id&lt;br /&gt;
|MusicBrainz/Artist Id&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTISTID&lt;br /&gt;
|MUSICBRAINZ ALBUM ARTIST ID&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTISTID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Artist Id&lt;br /&gt;
|MusicBrainz/Album Artist Id&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTIST&lt;br /&gt;
|MUSICBRAINZ ALBUM ARTIST&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTIST&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Artist&lt;br /&gt;
|MusicBrainz/Album Artist&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ALBUMID&lt;br /&gt;
|MUSICBRAINZ ALBUM ID&lt;br /&gt;
|MUSICBRAINZ_ALBUMID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Id&lt;br /&gt;
|MusicBrainz/Album Id&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_TRACKID&lt;br /&gt;
|UFID&lt;br /&gt;
|MUSICBRAINZ_TRACKID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Track Id&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|RATING&lt;br /&gt;
|POPM&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|METADATA_BLOCK_PICTURE or COVERART or COVERARTMIME&lt;br /&gt;
|APIC&lt;br /&gt;
|&lt;br /&gt;
|covr&lt;br /&gt;
|WM/Picture&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|COMPOSER&lt;br /&gt;
|TCOM&lt;br /&gt;
|COMPOSER&lt;br /&gt;
|\251wrt&lt;br /&gt;
|WM/Composer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|CONDUCTOR&lt;br /&gt;
|TPE3&lt;br /&gt;
|CONDUCTOR&lt;br /&gt;
| ----:com.apple.iTunes:CONDUCTOR&lt;br /&gt;
|WM/Conductor&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|LYRICIST&lt;br /&gt;
|TEXT&lt;br /&gt;
|LYRICIST&lt;br /&gt;
| ----:com.apple.iTunes:LYRICIST&lt;br /&gt;
|WM/Writer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|REMIXER or MIXARTIST&lt;br /&gt;
|TPE4&lt;br /&gt;
|REMIXER or MIXARTIST&lt;br /&gt;
| ----:com.apple.iTunes:REMIXER&lt;br /&gt;
|WM/ModifiedBy&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|ENSEMBLE&lt;br /&gt;
|(TIPL) or TXXX:Ensemble&lt;br /&gt;
|ENSEMBLE&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|ARRANGER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|ARRANGER&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|ENGINEER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|ENGINEER&lt;br /&gt;
| ----:com.apple.iTunes:ENGINEER&lt;br /&gt;
|WM/Engineer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|PRODUCER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|PRODUCER&lt;br /&gt;
| ----:com.apple.iTunes:PRODUCER&lt;br /&gt;
|WM/Producer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|DJMIXER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|DJMIXER&lt;br /&gt;
| ----:com.apple.iTunes:DJMIXER&lt;br /&gt;
|WM/DJMixer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|MIXER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|MIXER&lt;br /&gt;
| ----:com.apple.iTunes:MIXER&lt;br /&gt;
|WM/Mixer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|PERFORMER&lt;br /&gt;
|TMCL&lt;br /&gt;
|PERFORMER&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|LABEL&lt;br /&gt;
|TPUB&lt;br /&gt;
|LABEL&lt;br /&gt;
| ----:com.apple.iTunes:LABEL&lt;br /&gt;
|WM/Publisher&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|RELEASETYPE&lt;br /&gt;
|MUSICBRAINZ ALBUM TYPE&lt;br /&gt;
|MUSICBRAINZ_ALBUMTYPE&lt;br /&gt;
| ---:com.apple.iTunes:MusicBrainz Album Type&lt;br /&gt;
|MusicBrainz/Album Type&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|MUSICBRAINZ_RELEASEGROUPID&lt;br /&gt;
|MUSICBRAINZ RELEASE GROUP ID&lt;br /&gt;
|MUSICBRAINZ_RELEASEGROUPID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Release Group Id&lt;br /&gt;
|MusicBrainz/Release Group Id&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|ARTISTSORT&lt;br /&gt;
|TSOP&lt;br /&gt;
|ARTISTSORT&lt;br /&gt;
| &lt;br /&gt;
|WM/ArtistSortOrder&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|ALBUMARTISTSORT&lt;br /&gt;
|TS02&lt;br /&gt;
|ALBUMARTISTSORT&lt;br /&gt;
|soaa&lt;br /&gt;
|WM/AlbumArtistSortOrder&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|COMPOSERSORT&lt;br /&gt;
|TSOC&lt;br /&gt;
|COMPOSERSORT&lt;br /&gt;
|soco&lt;br /&gt;
|WM/ComposerSortOrder&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|WRITER&lt;br /&gt;
|WRITER&lt;br /&gt;
|WRITER&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|DISCSUBTITLE&lt;br /&gt;
|TSST&lt;br /&gt;
|DiscSubtitle&lt;br /&gt;
| ----:com.apple.iTunes:DISCSUBTITLE&lt;br /&gt;
|WM/SetSubTitle&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|BPM&lt;br /&gt;
|TBPM&lt;br /&gt;
|BPM&lt;br /&gt;
|tmpo&lt;br /&gt;
|WM/BeatsPerMinute&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|ORIGINALDATE or ORIGINALYEAR&lt;br /&gt;
|TDOR or TORY&lt;br /&gt;
|ORIGINALYEAR&lt;br /&gt;
| ----:com.apple.iTunes:originaldate&lt;br /&gt;
|WM/OriginalReleaseYear&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|RELEASESTATUS&lt;br /&gt;
|TXXX:MusicBrainz Album Status&lt;br /&gt;
|MUSICBRAINZ_ALBUMSTATUS&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Status&lt;br /&gt;
|MusicBrainz/Album Status&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;section end=&amp;quot;TagTable&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Top}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;{{linear-gradient|left|#f5d3ff, #12b2e7}}&amp;quot;&amp;gt;{{next|[[Adding_music_to_the_library|Scanning Music into Library]]}} &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{updated|18}}&lt;br /&gt;
[[Category:FAQ]]&lt;br /&gt;
[[Category:Index]]&lt;br /&gt;
[[Category:Guides]]&lt;br /&gt;
[[Category:Manual]]&lt;br /&gt;
[[Category:Karellen]]&lt;br /&gt;
[[Category:First time user]]&lt;br /&gt;
[[Category:Music library]]&lt;br /&gt;
[[Category:Advanced topics]]&lt;br /&gt;
[[Category:Quick Start Guide]]&lt;/div&gt;</summary>
		<author><name>Black eagle</name></author>
	</entry>
	<entry>
		<id>https://kodi.wiki/index.php?title=Music_tagging&amp;diff=219307</id>
		<title>Music tagging</title>
		<link rel="alternate" type="text/html" href="https://kodi.wiki/index.php?title=Music_tagging&amp;diff=219307"/>
		<updated>2020-08-11T10:45:35Z</updated>

		<summary type="html">&lt;p&gt;Black eagle: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{MusicLibraryCreate}}&lt;br /&gt;
{{mininav|[[Music library]]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
This page provides the following information:&lt;br /&gt;
&lt;br /&gt;
*How the Music section differs from the Video section of {{kodi}}&lt;br /&gt;
*The recommended method to organise your music files &lt;br /&gt;
*The recommended method for tagging your music files&lt;br /&gt;
*Explanation of some commonly misunderstood Music File Tags&lt;br /&gt;
*The Audio Files and Tags that {{kodi}} reads and uses&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Understanding the Music Library =&lt;br /&gt;
&amp;lt;section begin=&amp;quot;understanding&amp;quot; /&amp;gt;There is a fundamental differences between video library operation and the music library operation: &lt;br /&gt;
*The video library is based on using the filenames or folder names to obtain online data. If they are incorrectly named, then there are no scraper results and there will be no library entry.&lt;br /&gt;
*&#039;&#039;&#039;The music library is based on scanning tags embedded in the music files.&#039;&#039;&#039; It ignores the folder names and structure and file names. Proper tagging is essential to ensure the library is populated correctly. Having slight variations in the tags for artist and album names could mean duplicated and unwanted entries.&amp;lt;section end=&amp;quot;understanding&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Folder and File Structure =&lt;br /&gt;
Although {{kodi}} ignores the folder structure and the names of the folders and files, the structure of your folders is important as it affects the operation of other functions such as Import/Export, nfo files and Artwork. For example, if you have all your music files in one folder (which is possible), then you lose the ability to use local nfo files, local artwork, and the import/export module will not function correctly.&lt;br /&gt;
&lt;br /&gt;
The following is {{kodi}} &#039;&#039;&#039;best practice&#039;&#039;&#039;. Remember use a layout that is nice for you, but &#039;&#039;&#039;tag accurately.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Files ==&lt;br /&gt;
Song files require suitable tagging for use in {{kodi}}. While {{kodi}} can scan minimal tags into the library, it can lead to errors in the library and subsequent scraping. We recommend music files are tagged with MusicBrainz as detailed below.&lt;br /&gt;
&lt;br /&gt;
Remember that {{kodi}} does not extract any information from the filename, so the filename is your choice.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Folders ==&lt;br /&gt;
{{kodi}} is quite flexible with the folder structure. The diagram below is an &#039;&#039;&#039;example&#039;&#039;&#039;. You should group your albums in a manner that makes sense to you.&lt;br /&gt;
&lt;br /&gt;
To ensure {{kodi}} and other add-on processes can function efficently and correctly, the following is recommended.&lt;br /&gt;
*Songs from the same album should be in the one folder&lt;br /&gt;
*If there is more than one disk in the release, each disk should be in a sub-folder containing the songs from that disk&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following is a typical folder structure:&lt;br /&gt;
&lt;br /&gt;
 f:\   ....................................(root)&lt;br /&gt;
  |__Artist Information  ..................(Artist Information Folder)&lt;br /&gt;
  |&lt;br /&gt;
  |__Artist Music   .......................(source folder)&lt;br /&gt;
  |  |__ Madonna   ........................(artist folder)&lt;br /&gt;
  |  |   |__ Beautiful Stranger (1999)   ..(album folder)&lt;br /&gt;
  |  |   |   |__ Song 1&lt;br /&gt;
  |  |   |   |__ Song 2&lt;br /&gt;
  |  |   |   |__ Song 3 etc&lt;br /&gt;
  |  |   |__ Bedtime Stories (1994)   .....(album folder)&lt;br /&gt;
  |  |   |   |__ Song 1&lt;br /&gt;
  |  |   |   |__ Song 2&lt;br /&gt;
  |  |   |   |__ Song 3 etc&lt;br /&gt;
  |  |   |__ Like A Prayer (1989)   .......(album folder)&lt;br /&gt;
  |  |   |   |__ Song 1&lt;br /&gt;
  |  |   |   |__ Song 2&lt;br /&gt;
  |  |   |   |__ Song 3 etc&lt;br /&gt;
  |  |__ Simply Red   .....................(artist folder)&lt;br /&gt;
  |      |__ Picture Book (1985)   ........(album folder)&lt;br /&gt;
  |          |__ Song 1&lt;br /&gt;
  |          |__ Song 2&lt;br /&gt;
  |          |__ Song 3 etc&lt;br /&gt;
  |&lt;br /&gt;
  |__Compilations   .......................(Source)&lt;br /&gt;
  |  |__ Essential Eighties   .............(album folder)&lt;br /&gt;
  |  |       |__ Song 1&lt;br /&gt;
  |  |       |__ Song 2&lt;br /&gt;
  |  |       |__ Song 3 etc&lt;br /&gt;
  |  |__ 100% Hits- Best of 2005   ........(album folder)&lt;br /&gt;
  |          |__ Song 1&lt;br /&gt;
  |          |__ Song 2&lt;br /&gt;
  |          |__ Song 3 etc&lt;br /&gt;
  |&lt;br /&gt;
  |__Classical   ..........................(Source)&lt;br /&gt;
  |&lt;br /&gt;
  |__Audiobooks   .........................(Source)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sources ==&lt;br /&gt;
A source is the parent folder that contains your media collection- in this case Music. This folder is then set as a Source in {{kodi}} which enables {{kodi}} to access your Music. &lt;br /&gt;
&lt;br /&gt;
In the diagram from the previous section &#039;&#039;Artist Music, Compilations, Classical&#039;&#039; and &#039;&#039;Audiobooks&#039;&#039; are Sources.&lt;br /&gt;
&lt;br /&gt;
Notes on naming and setting a &#039;&#039;&#039;Source&#039;&#039;&#039;:&lt;br /&gt;
*There is no limit on the number of Sources that can be used&lt;br /&gt;
*The Source names, which essentially is your folder name, can be anything that makes sense to you. The names should be unique, which makes it easier to navigate to the correct source in {{Kodi}}&lt;br /&gt;
*Larger libraries do benefit from multiple sources&lt;br /&gt;
*There is no requirement on how to separate music between Sources. Many users separate based on Genre, alphabetical listing, release type or any method you prefer&lt;br /&gt;
*If your music collection exists on multiple drives, then a Source folder is required for each drive&lt;br /&gt;
*&#039;&#039;&#039;Never&#039;&#039;&#039; mix media classes. ie, ensure TV Shows, Movies, Music Videos or Music are not in the same source, nor as a sub-folder of another source.&lt;br /&gt;
*&#039;&#039;&#039;Never&#039;&#039;&#039; set the entire hard drive as your Source as this will create multiple ghost entries.&lt;br /&gt;
&lt;br /&gt;
Setting and Scanning of Sources is covered in detail in the next step of the guide. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Tagging =&lt;br /&gt;
Most music files purchased or ripped by your favourite software have only minimal metadata embedded. Normally this is not a problem and works very well on simple music players.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{kodi}}, being an advanced and feature rich player, requires greater accuracy with the embedded tags. Any slight variance in, for example, the Album name between the tracks from the same album will see multiple entries in the library for that Album. It is not uncommon to have a single album split into three similarly named albums. Also true for Artists. It is for this reason that there is a separation of the Scanning and Scraping processes for Music. The initial scan allows you to find and correct errors in tagging, before scraping.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
This table has examples of errors in tagging, which will cause duplicated entries in the library...&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
!Similar Name 1 || Similar Name 2 || Note&lt;br /&gt;
|-&lt;br /&gt;
|György Ligeti || Gyorgy Ligeti || Accented and unaccented names will create duplicate entries&lt;br /&gt;
|-&lt;br /&gt;
|The Best of || The Very Best Of || Inconsistent naming between songs of the same album and/or artist will cause duplicated entries&lt;br /&gt;
|-&lt;br /&gt;
|Madonna || Madonnna || Spelling mistakes will cause duplicated entries for albums and/or artists&lt;br /&gt;
|-&lt;br /&gt;
|Sting || Sting and The Police || Seen as two separate and unrelated Artists&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
As {{kodi}} scans your music collection, it copies the data contained in those tags into the {{kodi}} music database. The benefits of this are:&lt;br /&gt;
*Once the scan is complete, the tags are not accessed again&lt;br /&gt;
*All information is now obtained from the database. This has the benefit of dramatically increasing efficency and speed when navigating the library.&lt;br /&gt;
*Now that a database entry exists, you are able to scrape additional information from online sources. This is covered later in the guide.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== MusicBrainz ==&lt;br /&gt;
&#039;&#039;&#039;{{kodi}} has strong support for MusicBrainz tagging. It is highly recommended that users tag their music files using MusicBrainz Picard.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;MusicBrainz Picard&#039;&#039;&#039; is the music file tagger software that can access the MusicBrainz database to locate metadata to embed into your music files. MBIDs are useful because names are not unique. The bigger and more diverse your music collection is, the more likely you will encounter Artists with the same name. &lt;br /&gt;
&lt;br /&gt;
The advantages of tagging with MusicBrainz are:&lt;br /&gt;
*They allow you to have different artists with the same name in your library e.g. &amp;quot;John Williams&amp;quot; the classical guitarist and &amp;quot;John Williams&amp;quot; the film music composer and conductor.&lt;br /&gt;
*They negate inconsistencies in artist naming e.g. having &amp;quot;Peter Tchaikovsky&amp;quot; on some albums and &amp;quot;Piotr Czajkowski&amp;quot; on others&lt;br /&gt;
*They allow you to have more than one release of an album in your library e.g. the normal and deluxe editions of an album&lt;br /&gt;
*They clearly identify the artist and album in ways that names alone can not. This can then be used to accurately scrape additional artist and album information and locate the correct artwork&lt;br /&gt;
*They allow the scraping process to be more efficient, otherwise an extra call is made to try and get an mbid first to use at the scraping sites, and each request from Musicbrainz must be throttled to 1 per sec which will slow the scraping process.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Below is a screenshot of the main screen of the Picard software. A brief description of the layout as follows.&lt;br /&gt;
&lt;br /&gt;
*Top Left Box- Folder listing of your music collection&lt;br /&gt;
*Top Centre Box- Albums are dragged and dropped here in preparation for matching and tagging. Pressing &#039;&#039;Lookup&#039;&#039; (greyed out) will commence the lookup process&lt;br /&gt;
*Top Right Box- Matching albums are displayed here and your songs are overlayed. In the screenshot, songs 01, 08 and 09 have been matched to the suggested album. If all songs match and you agree the correct album was located, simply pressing Save will tag the album with the tags displayed in the Bottom Tag Box.&lt;br /&gt;
*Bottom Tag Box - Selecting a song from the Top Right Box will display all available tag fields (left column), the current tags in the music file (Original Value column) and the MusicBrainz tags to be embedded in the music file (right column).&lt;br /&gt;
&lt;br /&gt;
The example in the image below shows the following:&lt;br /&gt;
*Most tags are missing (original value column)&lt;br /&gt;
*The top three yellow entries are incorrect (original value column) and the corrections are in the right column&lt;br /&gt;
*The green entries in the right column indicate new tags to be embedded&lt;br /&gt;
*The black entries at the bottom of the list indicate no change to the existing tags as they are correct or not used by MusicBrainz.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;packed&amp;quot; widths=&amp;quot;1000px&amp;quot; heights=&amp;quot;563px&amp;quot;&amp;gt;&lt;br /&gt;
File:MusicBrainzPicard01.jpg&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Although Picard is very easy to use, you must avoid blindly accepting everything offered by the software. It is important that you confirm the correct album was located. Due to the global nature of the database, there are many releases for a single album. These releases differ between countries, usually due to copyright requirements. This may lead you to inadvertendly select the incorrect release for your album, even though it is named exactly the same. The differences between releases may be as simple as different song ordering or the inclusion of additional bonus tracks.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clear Existing Tags ==&lt;br /&gt;
For the best tagging experience set the correct options in Picard, particularly the &amp;quot;Clear Existing Tags&amp;quot; option in settings. This option means that any old tags that may cause issues are wiped, preserving only the musicbrainz tagging. It will also be wise to tag using ID3v2.4 compatibility.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;packed&amp;quot; widths=&amp;quot;500px&amp;quot; heights=&amp;quot;283px&amp;quot;&amp;gt;&lt;br /&gt;
File:Picard options.jpg&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== albumartists ==&lt;br /&gt;
{{Kodi}} requires the &#039;&#039;&#039;albumartists&#039;&#039;&#039; tag to correctly handle multiple album artists on the same album. This tag is not a default tag in MusicBrainz Picard and other tagging software. &amp;lt;ref&amp;gt; https://forum.kodi.tv/showthread.php?tid=334729&amp;amp;pid=2760161#pid2760161 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To include this tag add a new script under &#039;&#039;Options &amp;gt; Options &amp;gt; Scripting &amp;gt; Add new script&#039;&#039; and include the following code...&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
$setmulti(albumartists,%_albumartists%)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;packed&amp;quot; widths=&amp;quot;500px&amp;quot; heights=&amp;quot;283px&amp;quot;&amp;gt;&lt;br /&gt;
File:Picard Script.JPG&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the music files are tagged, avoid modifying the MusicBrainz tags unless you clearly understand the relationship of the MBID&#039;s and the other related tags. For example, embedding MBID tags, but then editing the Artist tag or Album Artist tag will result in incorrect entries in the library.&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
*If you need to change the artist or album artist tag you also have to edit the matching artist mbid tag and album artist mbid tag. &lt;br /&gt;
*If Kodi finds a release mbid it will expect the artist mbid tags to also be present.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;&#039;&#039;See: [https://musicbrainz.org/ MusicBrainz Website]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
:&#039;&#039;&#039;&#039;&#039;See: [https://picard.musicbrainz.org/ MusicBrainz Picard Software]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;center&amp;gt;{{red|&#039;&#039;&#039;The remainder of this page deals with special use cases or provides information for technical interest and reference only. It can be safely disregarded if these do not apply to you&#039;&#039;&#039;}}&amp;lt;/center&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;{{linear-gradient|left|#f5d3ff, #12b2e7}}&amp;quot;&amp;gt;{{next|[[Adding_music_to_the_library|Scanning Music into Library]]}} &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Ripping CD&#039;s =&lt;br /&gt;
{{main|Ripping CDs}}&lt;br /&gt;
{{#lst:Ripping CDs|intro}}&lt;br /&gt;
&lt;br /&gt;
There is no requirement to use the {{Kodi}} CD Ripper. If you are comfortable using other ripping software, then we recommend you continue using that software.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Cue Sheets =&lt;br /&gt;
{{#lst:Cue_sheets|intro}}&lt;br /&gt;
&lt;br /&gt;
{{kodi}} does provide basic support for using cue sheets to define individual tracks when an entire CD has been ripped into a single music file. However the information provided by  the cue sheet standard is much more limited than that of standard tagging, hence to enjoy the full music library features it is recommended that tracks are ripped into separate files and fully tagged.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{red|If you do not use Cue Sheets you can safely move onto the next step.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
;{{see also|Cue_sheets}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Streams =&lt;br /&gt;
{{#lst:Internet_video_and_audio_streams|intro}}&lt;br /&gt;
&lt;br /&gt;
;{{see also|Internet_video_and_audio_streams}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Technical Explanation: File tags =&lt;br /&gt;
For many categories, such as genres and artists, {{kodi}} supports multiple values in the one field.  By default it uses the character sequence &amp;quot; / &amp;quot; to divide the entry into multiple values.  This divider may be changed via [[advancedsettings.xml]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Resolving Compilations and Multiple Artists ==&lt;br /&gt;
{{red|Applies to v17 and below. v18 introduced the [[Artist information folder]] which solved these problems. You are encouraged to update to v18}}&lt;br /&gt;
&lt;br /&gt;
{{kodi}} reads the &#039;&#039;Album Artist&#039;&#039; tag in ID3, Ogg, APE and MP4 tags and uses it if available to assign an artist to the album (independently of the track&#039;s artist information).  This is the &amp;quot;Album Artist&amp;quot; tag (in ID3 this is represented by the &amp;quot;TPE2&amp;quot; tag; in vorbiscomment (ogg) files &amp;quot;ALBUMARTIST&amp;quot;, &amp;quot;ALBUM ARTIST&amp;quot; and &amp;quot;ENSEMBLE&amp;quot; are all supported).  Multiple artists for either a track or album artist can be specified in &amp;quot;Artist1 / Artist2 / Artist3&amp;quot; format.&lt;br /&gt;
&lt;br /&gt;
If no &#039;&#039;Album Artist&#039;&#039; tag exists, {{kodi}} will use the first (primary) artist from the tracks as the &#039;&#039;Album Artist&#039;&#039;.  Essentially we do a string comparison of all the track artists, and assign the common artists as the &#039;&#039;Album artist&#039;&#039;. This is generally the TPE1 tag in ID3.&lt;br /&gt;
&lt;br /&gt;
As many users don&#039;t yet use the &#039;&#039;Album Artist&#039;&#039; tag, {{kodi}} has an additional filter system for identifying compilation albums, where each track normally has a different artist.  As {{kodi}} scans a folder, it does the following:&lt;br /&gt;
# Identifies albums based on &#039;&#039;Album&#039;&#039; name alone in the folder and groups the songs that have the same &#039;&#039;Album&#039;&#039; name together as an album.&lt;br /&gt;
# Runs through each album&#039;s assigned songs.  If there is 2 or more tracks with the same &#039;&#039;Track&#039;&#039; number, the group of songs must come from 2 or more albums, so the &#039;&#039;Album&#039;&#039; name is ruled out as a possible compilation.&lt;br /&gt;
# If any of the songs assigned to the &#039;&#039;Album&#039;&#039; name have an &#039;&#039;Album Artist&#039;&#039; tag, then {{kodi}} assumes the user knows what they&#039;re doing, and this album is also ruled out from being a compilation.&lt;br /&gt;
# If two or more songs assigned to the &#039;&#039;Album&#039;&#039; name then have different primary artists, then the &#039;&#039;Album&#039;&#039; name is considered to be a group of songs from a compilation, and the &#039;&#039;Various Artists&#039;&#039;&amp;quot; tag is assigned as the album artist.&lt;br /&gt;
# Otherwise, if all the songs have the same primary artist but don&#039;t have the same full artist list (eg a song or two has an additional artist) then the album is assigned the primary artist as it&#039;s &#039;&#039;Album Artist&#039;&#039;, and we assume the additional artists are guest artists.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ratings in ID3 tags ==&lt;br /&gt;
Ratings in ID3 tags are read via the POPM field, and (if this doesn&#039;t exist) in a custom (TXXX) field named &amp;quot;RATING&amp;quot;.  For the RATING field, we accept 1-5 as valid ratings.  For the POPM field things are more complicated, as there is no established standard in place.  We currently most closely respect what Mediamonkey does, and also have some support for what Windows Media Player 11 does.  The POPM tag takes a value from 0..255, with 0 meaning no rating, 1 the worst, and 255 the best.  We currently map these as follows:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
!&#039;&#039;&#039;POPM value&#039;&#039;&#039; || &#039;&#039;&#039;Star rating&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|0 ||&lt;br /&gt;
|- &lt;br /&gt;
|1 || &#039;&#039;&#039;*&#039;&#039;&#039; This is a special case for Windows Media Player&lt;br /&gt;
|- &lt;br /&gt;
| 2-8 || &lt;br /&gt;
|- &lt;br /&gt;
|9-49 || &#039;&#039;&#039;*&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|50-113 ||&#039;&#039;&#039;**&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|114-167 || &#039;&#039;&#039;***&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|168-218 || &#039;&#039;&#039;****&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|219-255 ||&#039;&#039;&#039;*****&#039;&#039;&#039;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Audio Formats &amp;amp; Tags =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Supported Audio Formats ==&lt;br /&gt;
Although the list of playable formats is quite comprehensive, it is not accurate to say that every {{kodi}} installation will play every format. The ability to play some of the more obscure formats will depend upon the version of {{kodi}} and the operating system in use. Some formats will require the installation of add-ons.&lt;br /&gt;
&lt;br /&gt;
{{#lst:Advancedsettings.xml|musicextensions}}&lt;br /&gt;
&lt;br /&gt;
;{{See also|Advancedsettings.xml}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Supported Metadata Containers ==&lt;br /&gt;
The following metadata containers are supported by {{kodi}}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Metadata Container || Note&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:APEv2 tag|APEv2 tag]] ||&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:Advanced_Systems_Format|ASF]] ||&lt;br /&gt;
|-&lt;br /&gt;
|Generic Tag || A generic tag for basic data from other odd file types&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:ID3|ID3]] || v1, v2.3 and v2.4&lt;br /&gt;
|-&lt;br /&gt;
|[[wikipedia:MPEG-4 Part 14#Metadata|MP4]] ||&lt;br /&gt;
|-&lt;br /&gt;
|[https://xiph.org/ Xiph.org] || Vorbis Comments&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Common File &amp;amp; Tag Combination ==&lt;br /&gt;
You will notice that not all the tags listed in the section &#039;&#039;Supported Audio Formats&#039;&#039; above are listed in the following table. Those formats that are ommitted do not have provision to support embedded tags. If your collection contains any of these unsupported formats, you will be unable to scan the music into the library. Your options are:&lt;br /&gt;
#Convert your audio file to a supported format and tag using MusicBrainz Picard. (recommended)&lt;br /&gt;
#Access your music via the File Manager or via File View&lt;br /&gt;
&lt;br /&gt;
{{kodi}} supports the following common Audio File and Tag Formats &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!| Metadata container&lt;br /&gt;
!| Additional Filename extensions&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:APEv2 tag|APEv2 tag]] || ape, mp3, aac, wv, mpc&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:Advanced_Systems_Format|ASF]] || asf, wmv, wma&lt;br /&gt;
|-&lt;br /&gt;
| Generic Tag || it, mod, module, nst, wow, s3m, xm&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:ID3|ID3 v1]] || mp3, aac&lt;br /&gt;
|-&lt;br /&gt;
| [[wikipedia:ID3|ID3 v2]] || mp3, aac, tta, aif, aiff, wav, flac&lt;br /&gt;
|-&lt;br /&gt;
| iTunes [[wikipedia:MPEG-4 Part 14#Metadata|MP4]] || .3g2 .m4a .m4b .m4p .m4r .m4v .mp4&lt;br /&gt;
|-&lt;br /&gt;
|[https://xiph.org/ Xiph.org] || flac, oga, ogg, opus&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Note:&lt;br /&gt;
*FLAC files- xiph tags override id3v2 tags &lt;br /&gt;
*mp3 files can have either id3 or APE tags&lt;br /&gt;
*mka, dsf, dff - ID3v2 format read but are handled by ffmpeg tag reader and it does not support all tags from IDE standard)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Tags {{kodi}} reads ==&lt;br /&gt;
{{kodi}} will scan the following tags embedded in the music file. The column &#039;&#039;{{kodi}} Version&#039;&#039; indicates the version of {{kodi}} that the tag was introduced, and will work in subsequent versions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=&amp;quot;TagTable&amp;quot; /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align:left;&amp;quot;| {{kodi}} Version&lt;br /&gt;
! Vorbis (.Flac)&lt;br /&gt;
! ID3v2 (.mp3)&lt;br /&gt;
! APE&lt;br /&gt;
! MP4&lt;br /&gt;
! ASF&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ARTIST&lt;br /&gt;
|TPE1&lt;br /&gt;
|ARTIST&lt;br /&gt;
|\251ART&lt;br /&gt;
|Author&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ARTISTS&lt;br /&gt;
|ARTISTS&lt;br /&gt;
|ARTISTS&lt;br /&gt;
| ----:com.apple.iTunes:ARTISTS&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ALBUMARTIST  or ALBUM ARTIST&lt;br /&gt;
|TPE2 OR ALBUMARTIST or ALBUM ARTIST&lt;br /&gt;
|ALBUMARTIST  or ALBUM ARTIST&lt;br /&gt;
|aART&lt;br /&gt;
|WM/AlbumArtist&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ALBUMARTISTS or ALBUM ARTISTS&lt;br /&gt;
|ALBUMARTISTS or ALBUM ARTISTS&lt;br /&gt;
|ALBUMARTISTS or ALBUM ARTISTS&lt;br /&gt;
| ----:com.apple.iTunes:ALBUMARTISTS&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|ALBUM&lt;br /&gt;
|TALB&lt;br /&gt;
|ALBUM&lt;br /&gt;
|\251alb&lt;br /&gt;
|WM/AlbumTitle&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|TITLE&lt;br /&gt;
|TIT2&lt;br /&gt;
|TITLE&lt;br /&gt;
|\251nam&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|TRACKNUMBER&lt;br /&gt;
|TRCK&lt;br /&gt;
|TRACKNUMBER or TRACK&lt;br /&gt;
|trkn&lt;br /&gt;
|WM/TrackNumber or WM/Track&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|DISCNUMBER&lt;br /&gt;
|TPOS&lt;br /&gt;
|DISCNUMBER or DISC&lt;br /&gt;
|disk&lt;br /&gt;
|WM/PartOfSet&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|YEAR&lt;br /&gt;
|TYER&lt;br /&gt;
|YEAR&lt;br /&gt;
|\251day&lt;br /&gt;
|WM/Year&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|DATE&lt;br /&gt;
|TDRC, TDRL&lt;br /&gt;
|DATE&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|GENRE&lt;br /&gt;
|TCON&lt;br /&gt;
|GENRE&lt;br /&gt;
|\251gen&lt;br /&gt;
|WM/Genre&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MOOD&lt;br /&gt;
|TMOO OR TXXX:MOOD&lt;br /&gt;
|MOOD&lt;br /&gt;
| ----:com.apple.iTunes:MOOD&lt;br /&gt;
|WM/Mood&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|COMMENT&lt;br /&gt;
|COMM&lt;br /&gt;
|COMMENT&lt;br /&gt;
|\251cmt&lt;br /&gt;
|(COMMENT)&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|CUESHEET&lt;br /&gt;
|&lt;br /&gt;
|CUESHEET&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|COMPILATION&lt;br /&gt;
|TCMP&lt;br /&gt;
|COMPILATION&lt;br /&gt;
|cpil&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|LYRICS&lt;br /&gt;
|USLT&lt;br /&gt;
|LYRICS&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_TRACK_GAIN&lt;br /&gt;
|REPLAYGAIN_TRACK_GAIN&lt;br /&gt;
|REPLAYGAIN_TRACK_GAIN&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_track_gain&lt;br /&gt;
|replaygain_track_gain&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_ALBUM_GAIN&lt;br /&gt;
|REPLAYGAIN_ALBUM_GAIN&lt;br /&gt;
|REPLAYGAIN_ALBUM_GAIN&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_album_gain&lt;br /&gt;
|replaygain_album_gain&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_TRACK_PEAK&lt;br /&gt;
|REPLAYGAIN_TRACK_PEAK&lt;br /&gt;
|REPLAYGAIN_TRACK_PEAK&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_track_peak&lt;br /&gt;
|replaygain_track_peak&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_album_peak&lt;br /&gt;
|replaygain_album_peak&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
|REPLAYGAIN_ALBUM_PEAK&lt;br /&gt;
| ----:com.apple.iTunes:replaygain_album_peak&lt;br /&gt;
|replaygain_album_peak&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ARTISTID&lt;br /&gt;
|MUSICBRAINZ ARTIST ID&lt;br /&gt;
|MUSICBRAINZ_ARTISTID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Artist Id&lt;br /&gt;
|MusicBrainz/Artist Id&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTISTID&lt;br /&gt;
|MUSICBRAINZ ALBUM ARTIST ID&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTISTID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Artist Id&lt;br /&gt;
|MusicBrainz/Album Artist Id&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTIST&lt;br /&gt;
|MUSICBRAINZ ALBUM ARTIST&lt;br /&gt;
|MUSICBRAINZ_ALBUMARTIST&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Artist&lt;br /&gt;
|MusicBrainz/Album Artist&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_ALBUMID&lt;br /&gt;
|MUSICBRAINZ ALBUM ID&lt;br /&gt;
|MUSICBRAINZ_ALBUMID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Id&lt;br /&gt;
|MusicBrainz/Album Id&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|MUSICBRAINZ_TRACKID&lt;br /&gt;
|UFID&lt;br /&gt;
|MUSICBRAINZ_TRACKID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Track Id&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|RATING&lt;br /&gt;
|POPM&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v16&lt;br /&gt;
|METADATA_BLOCK_PICTURE or COVERART or COVERARTMIME&lt;br /&gt;
|APIC&lt;br /&gt;
|&lt;br /&gt;
|covr&lt;br /&gt;
|WM/Picture&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|COMPOSER&lt;br /&gt;
|TCOM&lt;br /&gt;
|COMPOSER&lt;br /&gt;
|\251wrt&lt;br /&gt;
|WM/Composer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|CONDUCTOR&lt;br /&gt;
|TPE3&lt;br /&gt;
|CONDUCTOR&lt;br /&gt;
| ----:com.apple.iTunes:CONDUCTOR&lt;br /&gt;
|WM/Conductor&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|LYRICIST&lt;br /&gt;
|TEXT&lt;br /&gt;
|LYRICIST&lt;br /&gt;
| ----:com.apple.iTunes:LYRICIST&lt;br /&gt;
|WM/Writer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|REMIXER or MIXARTIST&lt;br /&gt;
|TPE4&lt;br /&gt;
|REMIXER or MIXARTIST&lt;br /&gt;
| ----:com.apple.iTunes:REMIXER&lt;br /&gt;
|WM/ModifiedBy&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|ENSEMBLE&lt;br /&gt;
|(TIPL) or TXXX:Ensemble&lt;br /&gt;
|ENSEMBLE&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|ARRANGER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|ARRANGER&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|ENGINEER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|ENGINEER&lt;br /&gt;
| ----:com.apple.iTunes:ENGINEER&lt;br /&gt;
|WM/Engineer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|PRODUCER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|PRODUCER&lt;br /&gt;
| ----:com.apple.iTunes:PRODUCER&lt;br /&gt;
|WM/Producer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|DJMIXER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|DJMIXER&lt;br /&gt;
| ----:com.apple.iTunes:DJMIXER&lt;br /&gt;
|WM/DJMixer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|MIXER&lt;br /&gt;
|(TIPL)&lt;br /&gt;
|MIXER&lt;br /&gt;
| ----:com.apple.iTunes:MIXER&lt;br /&gt;
|WM/Mixer&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|PERFORMER&lt;br /&gt;
|TMCL&lt;br /&gt;
|PERFORMER&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|LABEL&lt;br /&gt;
|TPUB&lt;br /&gt;
|LABEL&lt;br /&gt;
| ----:com.apple.iTunes:LABEL&lt;br /&gt;
|WM/Publisher&lt;br /&gt;
|-&lt;br /&gt;
|v17&lt;br /&gt;
|RELEASETYPE&lt;br /&gt;
|MUSICBRAINZ ALBUM TYPE&lt;br /&gt;
|MUSICBRAINZ_ALBUMTYPE&lt;br /&gt;
| ---:com.apple.iTunes:MusicBrainz Album Type&lt;br /&gt;
|MusicBrainz/Album Type&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|MUSICBRAINZ_RELEASEGROUPID&lt;br /&gt;
|MUSICBRAINZ RELEASE GROUP ID&lt;br /&gt;
|MUSICBRAINZ_RELEASEGROUPID&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Release Group Id&lt;br /&gt;
|MusicBrainz/Release Group Id&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|ARTISTSORT&lt;br /&gt;
|TSOP&lt;br /&gt;
|ARTISTSORT&lt;br /&gt;
| &lt;br /&gt;
|WM/ArtistSortOrder&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|ALBUMARTISTSORT&lt;br /&gt;
|TS02&lt;br /&gt;
|ALBUMARTISTSORT&lt;br /&gt;
|soaa&lt;br /&gt;
|WM/AlbumArtistSortOrder&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|COMPOSERSORT&lt;br /&gt;
|TSOC&lt;br /&gt;
|COMPOSERSORT&lt;br /&gt;
|soco&lt;br /&gt;
|WM/ComposerSortOrder&lt;br /&gt;
|-&lt;br /&gt;
|v18&lt;br /&gt;
|WRITER&lt;br /&gt;
|WRITER&lt;br /&gt;
|WRITER&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|DISCSUBTITLE&lt;br /&gt;
|TSST&lt;br /&gt;
|DiscSubtitle&lt;br /&gt;
| ----:com.apple.iTunes:DISCSUBTITLE&lt;br /&gt;
|WM/SetSubTitle&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|BPM&lt;br /&gt;
|TBPM&lt;br /&gt;
|BPM&lt;br /&gt;
|tmpo&lt;br /&gt;
|WM/BeatsPerMinute&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|ORIGINALDATE / ORIGINALYEAR&lt;br /&gt;
|TDOR / TORY&lt;br /&gt;
|ORIGINALYEAR&lt;br /&gt;
| ----:com.apple.iTunes:originaldate&lt;br /&gt;
|WM/OriginalReleaseYear&lt;br /&gt;
|-&lt;br /&gt;
|v19&lt;br /&gt;
|RELEASESTATUS&lt;br /&gt;
|TXXX:MusicBrainz Album Status&lt;br /&gt;
|MUSICBRAINZ_ALBUMSTATUS&lt;br /&gt;
| ----:com.apple.iTunes:MusicBrainz Album Status&lt;br /&gt;
|MusicBrainz/Album Status&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;section end=&amp;quot;TagTable&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Top}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;{{linear-gradient|left|#f5d3ff, #12b2e7}}&amp;quot;&amp;gt;{{next|[[Adding_music_to_the_library|Scanning Music into Library]]}} &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{updated|18}}&lt;br /&gt;
[[Category:FAQ]]&lt;br /&gt;
[[Category:Index]]&lt;br /&gt;
[[Category:Guides]]&lt;br /&gt;
[[Category:Manual]]&lt;br /&gt;
[[Category:Karellen]]&lt;br /&gt;
[[Category:First time user]]&lt;br /&gt;
[[Category:Music library]]&lt;br /&gt;
[[Category:Advanced topics]]&lt;br /&gt;
[[Category:Quick Start Guide]]&lt;/div&gt;</summary>
		<author><name>Black eagle</name></author>
	</entry>
	<entry>
		<id>https://kodi.wiki/index.php?title=Advancedsettings.xml&amp;diff=219306</id>
		<title>Advancedsettings.xml</title>
		<link rel="alternate" type="text/html" href="https://kodi.wiki/index.php?title=Advancedsettings.xml&amp;diff=219306"/>
		<updated>2020-08-11T10:16:03Z</updated>

		<summary type="html">&lt;p&gt;Black eagle: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC right}}{{mininav|[[Settings]]|page=advancedsettings.xml}}&lt;br /&gt;
{{bigger|{{note|&#039;&#039;&#039;The advancedsettings.xml file does not exist by default. You have to create it first!&#039;&#039;&#039;}} }}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=&amp;quot;intro&amp;quot; /&amp;gt;The [[advancedsettings.xml]] file, which does not exist by default, can be created by a user in their &#039;&#039;&#039;[[Userdata|userdata folder]]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
This file is used for advanced settings and options that do not have GUI controls inside of {{kodi}}. Some settings are experimental or very rarely set, so they can only be used via the advancedsettings.xml file. The file is simply a plain text file and can be edited by various text editors, so long as the name is &amp;quot;advancedsettings.xml&amp;quot;. These advanced settings can be used to tweak various things such as episode naming patterns, special network ports, special behaviors, and more.&amp;lt;section end=&amp;quot;intro&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following page will describe the structure of the advancedsettings.xml file and the various individual settings.&lt;br /&gt;
&lt;br /&gt;
{{note|&lt;br /&gt;
# All XML tags must be lowercase. The start and end of the advancedsettings.xml file must have the &amp;lt;advancedsettings&amp;gt; and &amp;lt;/advancedsettings&amp;gt; tags.&lt;br /&gt;
# Kodi will only read the advancedsettings.xml file when it starts up. If you make changes while it is running then you must restart Kodi.&lt;br /&gt;
# For some Windows versions, Kodi has two &amp;lt;code&amp;gt;\userdata\&amp;lt;/code&amp;gt; folders. The correct one to put the advancedsettings.xml file in is not the one in Program Files, but in &amp;lt;code&amp;gt;%appdata%\Kodi\userdata\.&amp;lt;/code&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
== Layout ==&lt;br /&gt;
&lt;br /&gt;
The layout of &amp;lt;code&amp;gt;advancedsettings.xml&amp;lt;/code&amp;gt; is as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;advancedsettings version=&amp;quot;1.0&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;setting&amp;gt;value&amp;lt;/setting&amp;gt;&lt;br /&gt;
    ...&lt;br /&gt;
    &amp;lt;setting&amp;gt;value&amp;lt;/setting&amp;gt;&lt;br /&gt;
&amp;lt;/advancedsettings&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;quot;setting&amp;quot; gives the name of the setting, and &amp;quot;value&amp;quot; gives its value.&lt;br /&gt;
&lt;br /&gt;
A list of the available &amp;quot;setting&amp;quot; strings and their values is given below.&lt;br /&gt;
&lt;br /&gt;
= List of available settings =&lt;br /&gt;
List of available settings that are recognised in the advancedsettings.xml file &amp;lt;ref&amp;gt;https://github.com/xbmc/xbmc/blob/master/xbmc/settings/AdvancedSettings.cpp&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Recommended: Use the table of contents or the search function in your browser to locate items.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting settings ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== loglevel ===&lt;br /&gt;
{{Anchor|.3Cloglevel.3E}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=&amp;quot;loglevel&amp;quot; /&amp;gt;&lt;br /&gt;
Sets the logging level used to log errors and information. The &amp;quot;hide&amp;quot; attribute is optional. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;loglevel hide=&amp;quot;attribute&amp;quot;&amp;gt;options&amp;lt;/loglevel&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;mw-collapsible mw-collapsed wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width:100px;&amp;quot; | Attribute&lt;br /&gt;
! style=&amp;quot;width:500px;&amp;quot; | Action&lt;br /&gt;
|-&lt;br /&gt;
! &#039;&#039;&#039;true&#039;&#039;&#039; &lt;br /&gt;
| Hides the &amp;quot;enable debugging&amp;quot; setting in the Settings page. (default)&lt;br /&gt;
|-&lt;br /&gt;
! &#039;&#039;&#039;false&#039;&#039;&#039;&lt;br /&gt;
| Allows &amp;quot;enable debugging&amp;quot; setting to switch between &#039;&#039;&#039;0&#039;&#039;&#039; and &#039;&#039;&#039;2&#039;&#039;&#039;.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;mw-collapsible mw-collapsed wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width:100px;&amp;quot; | Option&lt;br /&gt;
! style=&amp;quot;width:500px;&amp;quot; | Action&lt;br /&gt;
|-&lt;br /&gt;
! &#039;&#039;&#039;-1&#039;&#039;&#039;&lt;br /&gt;
| No logging, suppresses all log output &lt;br /&gt;
|-&lt;br /&gt;
! &#039;&#039;&#039;0&#039;&#039;&#039;&lt;br /&gt;
| Normal logging, only logging errors (default)&lt;br /&gt;
|-&lt;br /&gt;
! &#039;&#039;&#039;1&#039;&#039;&#039;&lt;br /&gt;
| Debug logging with freemem, fps and cpu usage (no on screen)&lt;br /&gt;
|-&lt;br /&gt;
! &#039;&#039;&#039;2&#039;&#039;&#039; &lt;br /&gt;
| Same as 1 (with on screen display)&lt;br /&gt;
|-&lt;br /&gt;
! &#039;&#039;&#039;3&#039;&#039;&#039; &lt;br /&gt;
| Same as 2 + full smb logging (no on screen display)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;mw-collapsible mw-collapsed wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width:100px;&amp;quot; | Example &lt;br /&gt;
! style=&amp;quot;width:500px;&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
! Example 1:&lt;br /&gt;
|&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;advancedsettings&amp;gt;&lt;br /&gt;
    &amp;lt;loglevel&amp;gt;2&amp;lt;/loglevel&amp;gt;  &lt;br /&gt;
&amp;lt;/advancedsettings&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! Example 2:&lt;br /&gt;
|&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;advancedsettings&amp;gt;&lt;br /&gt;
    &amp;lt;loglevel hide=&amp;quot;true&amp;quot;&amp;gt;2&amp;lt;/loglevel&amp;gt;&lt;br /&gt;
&amp;lt;/advancedsettings&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; The setting is persistent through shutdown and restarts.&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; If debugging is enabled in the GUI, loglevel will be set to &#039;&#039;&#039;2&#039;&#039;&#039;. This will over-ride the &amp;lt;code&amp;gt;advancedsettings.xml&amp;lt;/code&amp;gt; setting. You must disable the GUI Setting before adding the entry to &amp;lt;code&amp;gt;advancedsettings.xml&amp;lt;/code&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;section end=&amp;quot;loglevel&amp;quot; /&amp;gt;&lt;br /&gt;
:&#039;&#039;{{see also|Log_file|label 1=Debug Log}}&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== jsonrpc ===&lt;br /&gt;
{{Anchor|.3Cjsonrpc.3E}}&lt;br /&gt;
To make it easier for developers using the [[JSON-RPC_API]] API in their (third party) applications to debug during development the json output of Kodi can be prettified by setting &#039;&#039;&#039;compactoutput&#039;&#039;&#039; to &#039;&#039;&#039;false&#039;&#039;&#039;. Default json output mode is a compact print which does not contain any unnecessary whitespaces and therefore is difficult to read for humans.&lt;br /&gt;
Furthermore using the &#039;&#039;&#039;tcpport&#039;&#039;&#039; setting it is possible to change the default TCP port used by Kodi for JSON RPC (which is 9090) to any other valid port.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;jsonrpc&amp;gt;&lt;br /&gt;
    &amp;lt;compactoutput&amp;gt;false&amp;lt;/compactoutput&amp;gt;&lt;br /&gt;
    &amp;lt;tcpport&amp;gt;9999&amp;lt;/tcpport&amp;gt;&lt;br /&gt;
&amp;lt;/jsonrpc&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Audio/video playback settings ==&lt;br /&gt;
&lt;br /&gt;
=== skiploopfilter ===&lt;br /&gt;
{{anchor|.3Cskiploopfilter.3E}}&lt;br /&gt;
The amount of the loop filter to skip on h.264 decoding.  This can help the performance of slower machines when decoding h264 content.  Values, in decreasing CPU usage (and decreasing quality)&lt;br /&gt;
* -16 None&lt;br /&gt;
* 0 Skip only empty frames (default)&lt;br /&gt;
* 8 Skip non-reference frames&lt;br /&gt;
* 16 Skip bi-dir frames&lt;br /&gt;
* 32 Skip all non-key frames&lt;br /&gt;
* 48 Skip all frames&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;skiploopfilter&amp;gt;8&amp;lt;/skiploopfilter&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== video ===&lt;br /&gt;
{{anchor|.3Cvideo.3E}}&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;video&amp;gt; section also includes the following child-tags, which have their own sections:&lt;br /&gt;
*[[#cleandatetime]]&lt;br /&gt;
*[[#cleanstrings]]&lt;br /&gt;
*[[#excludefromscan]]&lt;br /&gt;
*[[#excludefromlisting]]&lt;br /&gt;
*[[#excludetvshowsfromscan]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{note|Some tags that have a &amp;quot;third-level&amp;quot; and are grouped together are highlighted in color.}}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
! Tag !! Description&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
&amp;lt;video&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Parent tag that all other child tags need to be placed inside of. Do not use more than one &#039;&#039;&#039;&amp;lt;code&amp;gt;&amp;lt;video&amp;gt;&amp;lt;/code&amp;gt;&#039;&#039;&#039; tag, but instead place all other child-tags within a single &#039;&#039;&#039;&amp;lt;code&amp;gt;&amp;lt;video&amp;gt;&amp;lt;/video&amp;gt;&amp;lt;/code&amp;gt;&#039;&#039;&#039; set.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;subsdelayrange&amp;gt;10&amp;lt;/subsdelayrange&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Delay range for subtitles, in seconds.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;maxtempo&amp;gt;2.1&amp;lt;/maxtempo&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Allow further increase of playback speed over the default of 1.5&amp;lt;br&amp;gt;&lt;br /&gt;
maxtempo must be in the range of 1.5 to 2.1 &amp;lt;br&amp;gt;&lt;br /&gt;
Be aware of the limitations of your platform / hardware as not all are capable of the increased maxtempo &amp;lt;ref&amp;gt;https://forum.kodi.tv/showthread.php?tid=10023&amp;amp;pid=2795069#pid2795069&amp;lt;/ref&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;audiodelayrange&amp;gt;10&amp;lt;/audiodelayrange&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Delay range for audio/video sync, in seconds.&lt;br /&gt;
|- &lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;usetimeseeking&amp;gt;true&amp;lt;/usetimeseeking&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Whether to use time based or percentage based seeking. {{small see also|Skip steps}}&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;timeseekforwardbig&amp;gt;600&amp;lt;/timeseekforwardbig&amp;gt;&lt;br /&gt;
  &amp;lt;timeseekbackwardbig&amp;gt;-600&amp;lt;/timeseekbackwardbig&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Time to seek forward in seconds when doing a long seek.  Defaults to 600 (10 minutes) and -600 (-10 minutes) respectively. &#039;&#039;{{small|See also: [[Skip steps]] }}&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;percentseekforward&amp;gt;2&amp;lt;/percentseekforward&amp;gt;&lt;br /&gt;
  &amp;lt;percentseekbackward&amp;gt;-2&amp;lt;/percentseekbackward&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Amount to seek forward as a percentage, when doing a short seek.  Defaults to 2 (2%) and -2 (2%) respectively. &#039;&#039;{{small|See also: [[Skip steps]] }}&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;percentseekforwardbig&amp;gt;10&amp;lt;/percentseekforwardbig&amp;gt;&lt;br /&gt;
  &amp;lt;percentseekbackwardbig&amp;gt;-10&amp;lt;/percentseekbackwardbig&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Amount to seek forward as a percentage, when doing a long seek.  Defaults to 10 (10%) and -10 (10%) respectively. &#039;&#039;{{small|See also: [[Skip steps]] }}&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;fullscreenonmoviestart&amp;gt;true&amp;lt;/fullscreenonmoviestart&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Whether to go to fullscreen or not when starting a movie. Defaults to true.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;defaultplayer&amp;gt;VideoPlayer&amp;lt;/defaultplayer&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Set the default video player: VideoPlayer or an external player. See &#039;&#039;&#039;[[External players]]&#039;&#039;&#039; for more info.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;excludefromscan&amp;gt;&lt;br /&gt;
    &amp;lt;regexp&amp;gt;[-\._ ](sample|trailer)[-\._ ]&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;/excludefromscan&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Regular expressions that if evaluated to true won&#039;t be added to library.  It is possible to add multiple &amp;lt;code&amp;gt;&amp;lt;regexp&amp;gt;&amp;lt;/code&amp;gt; tags to match multiple patterns&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;excludefromlisting&amp;gt;&lt;br /&gt;
    &amp;lt;regexp&amp;gt;[-\._ ](sample|trailer)[-\._ ]&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;/excludefromlisting&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Regular expressions that if evaluated to true won&#039;t be displayed in files view.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;playcountminimumpercent&amp;gt;90&amp;lt;/playcountminimumpercent&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Minimum percentage that has to be played before it is marked as watched. Set to 101 to never auto-mark items as watched. &#039;&#039;{{small|See also: [[HOW-TO:Modify automatic watch and resume points]] }}&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;ignoresecondsatstart&amp;gt;180&amp;lt;/ignoresecondsatstart&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Number of seconds to ignore at video start after which a resume point is created. &#039;&#039;{{small|See also: [[HOW-TO:Modify automatic watch and resume points]] }}&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;ignorepercentatend&amp;gt;8&amp;lt;/ignorepercentatend&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Percentage of video to ignore at the end. If you stop watching the video here no resume point is created. Set to 101 to never save a resume point. The video is already marked as watched at 90%, see above. &#039;&#039;{{small|See also: [[HOW-TO:Modify automatic watch and resume points]] }}&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;vdpauscaling&amp;gt;true&amp;lt;/vdpauscaling&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Scales with vdpau instead of opengl and turns on its HQ scaler when available, enabling this might slow down rendering and cause framedrops especially on ION systems, this setting requires a vdpau feature set C GPU.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;enablehighqualityhwscalers&amp;gt;true&amp;lt;/enablehighqualityhwscalers&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Allow turning on the spline36 and lanczos3 shader (for GL builds).&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;dxvaallowhqscaling&amp;gt;false&amp;lt;/dxvaallowhqscaling&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Enables high quality video upscaling for Windows.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;ppffmpegdeinterlacing&amp;gt;linblenddeint&amp;lt;/ppffmpegdeinterlacing&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Override the deinterlacing options passed to libpostproc.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;ppffmpegpostprocessing&amp;gt;ha:128:7,va,dr&amp;lt;/ppffmpegpostprocessing&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Override the post processing options passed to libpostproc when &#039;Video post-processing&#039; is activated in GUI Videos-Settings-Playback.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;autoscalemaxfps&amp;gt;30&amp;lt;/autoscalemaxfps&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| When scaling method is set to auto, bilinear is chosen when the fps is higher than this limit, the default is 30.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;adjustrefreshrate&amp;gt; &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#CADCFB;&amp;quot; | Settings for when &amp;quot;Adjust refreshrate to match video fps&amp;quot; is enabled in the video playback GUI settings.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
    &amp;lt;override&amp;gt;&lt;br /&gt;
      &amp;lt;fps&amp;gt;23.976&amp;lt;/fps&amp;gt;&lt;br /&gt;
      &amp;lt;refresh&amp;gt;60.0&amp;lt;/refresh&amp;gt;&lt;br /&gt;
    &amp;lt;/override&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#CADCFB;&amp;quot; | &#039;&#039;&#039;Example -&#039;&#039;&#039; &amp;quot;Adjust refreshrate to match video fps&amp;quot; will try to select the best refreshrate for the video fps but it doesn&#039;t always get it right, for example it might switch to an unsupported refreshrate. You can add overrides here to switch to a certain refreshrate based on video fps. It&#039;s possible to add as many overrides as you need.  Overrides are processed in order, if the first one doesn&#039;t match the fps or no refreshrates match that override, it will try the next one until no overrides are left.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;fps&#039;&#039;&#039; - if the fps is between 23.966 and 23.986&lt;br /&gt;
* &#039;&#039;&#039;refresh&#039;&#039;&#039; - switch to the first found refreshrate that is between 59.99 and 60.01&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
    &amp;lt;override&amp;gt;&lt;br /&gt;
      &amp;lt;fpsmin&amp;gt;29.96&amp;lt;/fpsmin&amp;gt;&lt;br /&gt;
      &amp;lt;fpsmax&amp;gt;30.01&amp;lt;/fpsmax&amp;gt;&lt;br /&gt;
      &amp;lt;refreshmin&amp;gt;59.0&amp;lt;/refreshmin&amp;gt;&lt;br /&gt;
      &amp;lt;refreshmax&amp;gt;61.0&amp;lt;/refreshmax&amp;gt;&lt;br /&gt;
    &amp;lt;/override&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#CADCFB;&amp;quot; | &#039;&#039;&#039;Example -&#039;&#039;&#039; &lt;br /&gt;
* &#039;&#039;&#039;fpsmin&#039;&#039;&#039; / &#039;&#039;&#039;fpsmin&#039;&#039;&#039; - You can also specify the fps range yourself.&lt;br /&gt;
* &#039;&#039;&#039;refreshmin&#039;&#039;&#039; / &#039;&#039;&#039;refreshmax&#039;&#039;&#039; - Same for the refreshrate&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
    &amp;lt;fallback&amp;gt;&lt;br /&gt;
      &amp;lt;refresh&amp;gt;50.0&amp;lt;/refresh&amp;gt;&lt;br /&gt;
    &amp;lt;/fallback&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#CADCFB;&amp;quot; | &#039;&#039;&#039;Example -&#039;&#039;&#039; If none of the overrides match, or none of the refreshrates match any of the fps matching overrides, it will choose a fallback refreshrate. Fallbacks are process in order, if the first fallback doesn&#039;t match any refreshrate, it will try the next one until no fallbacks are left.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;refresh&#039;&#039;&#039; - Switch to the first found refreshrate that is between 49.99 and 50.01.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
    &amp;lt;fallback&amp;gt;&lt;br /&gt;
      &amp;lt;refreshmin&amp;gt;49.0&amp;lt;/refreshmin&amp;gt;&lt;br /&gt;
      &amp;lt;refreshmax&amp;gt;51.0&amp;lt;/refreshmax&amp;gt;&lt;br /&gt;
    &amp;lt;/fallback&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#CADCFB;&amp;quot; | &#039;&#039;&#039;Example -&#039;&#039;&#039; You can also specify the range for the fallback yourself.&lt;br /&gt;
&lt;br /&gt;
If none of the overrides match the video fps, or no refreshrates match any of the fps matching overrides, and no fallbacks are specified or no refreshrates match any fallbacks, it will automatically choose the best refreshrate (same as having no overrides and fallbacks).&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;/adjustrefreshrate&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#CADCFB;&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;checkdxvacompatibility&amp;gt;value&amp;lt;/checkdxvacompatibility&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Advanced setting not present: let Kodi autodetect cards that support H.264 profile &amp;gt; L4.1. Set value to false to enable DXVA no matter what. Set value to true if Kodi doesn&#039;t autodetect that the graphics card doesn&#039;t support &amp;gt; L4.1.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;useocclusionquery&amp;gt;-1&amp;lt;/useocclusionquery&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Use an occlusion query when capturing videoframes, -1 means auto detect, 0 means disabled, 1 means enabled, the default is -1.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;fpsdetect&amp;gt;1&amp;lt;/fpsdetect&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| FPS detection for video playback&lt;br /&gt;
* 0 = trust codec fps&lt;br /&gt;
* 1 = recalculate from video timestamps with uniform spacing&lt;br /&gt;
* 2 = recalculate from video timestamps always&lt;br /&gt;
|- &lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;latency&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#F0E68C;&amp;quot;| Start of &#039;&#039;&#039;latency&#039;&#039;&#039; tags. Display latency (video lag). Latency is given in msecs.&lt;br /&gt;
|- &lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
    &amp;lt;delay&amp;gt;0&amp;lt;/delay&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#F0E68C;&amp;quot; | Global default display latency.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
    &amp;lt;refresh&amp;gt;&amp;lt;/refresh&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#F0E68C;&amp;quot; | Override latency for given display (not video) refresh rates. When Kodi is in windowed mode, override is ignored. Multiple overrides are allowed.&lt;br /&gt;
&lt;br /&gt;
Syntax of an override entry:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
&amp;lt;refresh&amp;gt;&lt;br /&gt;
  &amp;lt;min&amp;gt;, &amp;lt;max&amp;gt; refresh rate range, OR&lt;br /&gt;
  &amp;lt;rate&amp;gt; exact refresh rate&lt;br /&gt;
  &amp;lt;delay&amp;gt; display latency for the given refresh rate&lt;br /&gt;
&amp;lt;/refresh&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
    &amp;lt;refresh&amp;gt;&lt;br /&gt;
      &amp;lt;min&amp;gt;23&amp;lt;/min&amp;gt;&lt;br /&gt;
      &amp;lt;max&amp;gt;24&amp;lt;/max&amp;gt;&lt;br /&gt;
      &amp;lt;delay&amp;gt;125&amp;lt;/delay&amp;gt;&lt;br /&gt;
    &amp;lt;/refresh&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#F0E68C;&amp;quot; | &#039;&#039;&#039;Example:&#039;&#039;&#039; display has 125 msec latency at 23-24 Hz&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
    &amp;lt;refresh&amp;gt;&lt;br /&gt;
      &amp;lt;rate&amp;gt;50&amp;lt;/rate&amp;gt;&lt;br /&gt;
      &amp;lt;delay&amp;gt;50&amp;lt;/delay&amp;gt;&lt;br /&gt;
    &amp;lt;/refresh&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#F0E68C;&amp;quot; | &#039;&#039;&#039;Example:&#039;&#039;&#039; display has 50 msec latency at 50 (+/-0.01) Hz&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;/latency&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| style=&amp;quot;background:#F0E68C;&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;stereoscopicregex3d&amp;gt;[-. _]3d[-. _]&amp;lt;/stereoscopicregex3d&amp;gt;&lt;br /&gt;
  &amp;lt;stereoscopicregexsbs&amp;gt;[-. _]h?sbs[-. _]&amp;lt;/stereoscopicregexsbs&amp;gt;&lt;br /&gt;
  &amp;lt;stereoscopicregextab&amp;gt;[-. _]h?tab[-. _]&amp;lt;/stereoscopicregextab&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Filename triggers for 3D (stereoscopic) mode.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
  &amp;lt;assfixedworks&amp;gt;false&amp;lt;/assfixedworks&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| Position behavior of ass subtitiles when setting &amp;quot;subtitle position on screen&amp;quot; set to &amp;quot;fixed&amp;quot;. True to show at the fixed position set in video calibration. False to show at the bottom of video (default).&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml&amp;gt;&lt;br /&gt;
&amp;lt;/video&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== audio ===&lt;br /&gt;
{{anchor|.3Caudio.3E}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;audio&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Amount of headroom Kodi should use above the maximum volume level, in decibels.  Defaults to 0, valid values 0, 6, 12. --&amp;gt;&lt;br /&gt;
  &amp;lt;headroom&amp;gt;0&amp;lt;/headroom&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Default audio player: paplayer or videoplayer --&amp;gt;&lt;br /&gt;
  &amp;lt;defaultplayer&amp;gt;paplayer&amp;lt;/defaultplayer&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Regular expressions that if evaluated to true won&#039;t be added to library. --&amp;gt;&lt;br /&gt;
  &amp;lt;excludefromscan&amp;gt; &lt;br /&gt;
    &amp;lt;regexp&amp;gt;[-\._ ](podcast)[-\._ ]&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;/excludefromscan&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Regular expressions that if evaluated to true won&#039;t be displayed in Files View --&amp;gt;&lt;br /&gt;
  &amp;lt;excludefromlisting&amp;gt; &lt;br /&gt;
    &amp;lt;regexp&amp;gt;[-\._ ](podcast)[-\._ ]&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;/excludefromlisting&amp;gt;&lt;br /&gt;
  &amp;lt;!-- 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. --&amp;gt;&lt;br /&gt;
  &amp;lt;ac3downmixgain&amp;gt;12.0&amp;lt;/ac3downmixgain&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Whether to use time based or percentage based seeking. --&amp;gt;&lt;br /&gt;
  &amp;lt;usetimeseeking&amp;gt;true&amp;lt;/usetimeseeking&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Time to seek forward in seconds when doing a long seek.  Defaults to 600 (10 minutes) and -600 (-10 minutes) respectively. --&amp;gt;&lt;br /&gt;
  &amp;lt;timeseekforwardbig&amp;gt;600&amp;lt;/timeseekfowardbig&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Time to seek backward in seconds when doing a long seek back.  Defaults to 600 (10 minutes) and -600 (-10 minutes) respectively. --&amp;gt;&lt;br /&gt;
  &amp;lt;timeseekbackwardbig&amp;gt;-600&amp;lt;/timeseekbackward&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Minimum percentage that has to be played before it is considered for incrementing in the Top 100 database view, or for last.fm submittal --&amp;gt;&lt;br /&gt;
  &amp;lt;playcountminimumpercent&amp;gt;99&amp;lt;/playcountminimumpercent&amp;gt; &lt;br /&gt;
  &amp;lt;!-- Whether to use Dynamic Range Compression (DRC) on AC3 streams. 1.0 is &amp;quot;full&amp;quot; compression, as defined by the audio track&#039;s metadata, which is recommended for &amp;quot;basic&amp;quot; sound systems such as the internal speakers on a TV. 0.0 is no compression at all, which is recommended for people with nice multi-speaker sound systems. -1.0 (default) defaults to whatever ffmpeg uses, which is currently the same as 1.0. This has no effect if passthrough is enabled for AC3. --&amp;gt;&lt;br /&gt;
  &amp;lt;applydrc&amp;gt;-1.0&amp;lt;/applydrc&amp;gt; &lt;br /&gt;
  &amp;lt;!-- default values for limiter/compressor --&amp;gt;&lt;br /&gt;
  &amp;lt;limiterhold&amp;gt;0.025&amp;lt;/limiterhold&amp;gt; &lt;br /&gt;
  &amp;lt;!-- default values for limiter/compressor --&amp;gt;&lt;br /&gt;
  &amp;lt;limiterrelease&amp;gt;0.1&amp;lt;/limiterrelease&amp;gt; &lt;br /&gt;
&amp;lt;/audio&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== edl ===&lt;br /&gt;
{{anchor|.3Cedl.3E}}&lt;br /&gt;
{{main|Edit_decision_list}}&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;edl&amp;gt;&lt;br /&gt;
  &amp;lt;!-- if true, commercial breaks will be merged according to the remaining options. --&amp;gt;&lt;br /&gt;
  &amp;lt;mergeshortcommbreaks&amp;gt;false&amp;lt;/mergeshortcommbreaks&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Commercial breaks won&#039;t be merged if the total length of the commercial break would be greater than this (seconds) --&amp;gt;&lt;br /&gt;
  &amp;lt;maxcommbreaklength&amp;gt;250&amp;lt;/maxcommbreaklength&amp;gt;&lt;br /&gt;
  &amp;lt;!-- After merging, commercial breaks shorter than this will be removed (seconds) --&amp;gt;&lt;br /&gt;
  &amp;lt;mincommbreaklength&amp;gt;90&amp;lt;/mincommbreaklength&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Commercial breaks that are further apart than this won&#039;t be merged (seconds) --&amp;gt;&lt;br /&gt;
  &amp;lt;maxcommbreakgap&amp;gt;120&amp;lt;/maxcommbreakgap&amp;gt;&lt;br /&gt;
  &amp;lt;!-- How long to wait before automatically skipping when the start of a commercial break reached (seconds). Possible values: from -60 to 60--&amp;gt;&lt;br /&gt;
  &amp;lt;commbreakautowait&amp;gt;0&amp;lt;/commbreakautowait&amp;gt;&lt;br /&gt;
  &amp;lt;!-- How long to rewind after automatically skipping to the end of the commercial break (seconds). Possible values: from -60 to 60 --&amp;gt;&lt;br /&gt;
  &amp;lt;commbreakautowind&amp;gt;0&amp;lt;/commbreakautowind&amp;gt;&lt;br /&gt;
&amp;lt;/edl&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== pvr ===&lt;br /&gt;
{{anchor|.3Cpvr.3E}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pvr&amp;gt;&lt;br /&gt;
  &amp;lt;timecorrection&amp;gt;0&amp;lt;/timecorrection&amp;gt;  &amp;lt;!-- Correct all times (epg tags, timer tags, recording tags) by this amount of minutes. --&amp;gt;&lt;br /&gt;
  &amp;lt;infotoggleinterval&amp;gt;3000&amp;lt;/infotoggleinterval&amp;gt;  &amp;lt;!-- If there is more than one pvr gui info item available (e.g. multiple recordings active at the same time), use this toggle delay in milliseconds. --&amp;gt;&lt;br /&gt;
  &amp;lt;channeliconsautoscan&amp;gt;true&amp;lt;/channeliconsautoscan&amp;gt; &amp;lt;!-- Automatically scan user defined folder for channel icons when loading internal channel groups. --&amp;gt;&lt;br /&gt;
  &amp;lt;autoscaniconsuserset&amp;gt;false&amp;lt;/autoscaniconsuserset&amp;gt; &amp;lt;!-- Mark channel icons populated by auto scan as &amp;quot;user set&amp;quot;. --&amp;gt;&lt;br /&gt;
  &amp;lt;numericchannelswitchtimeout&amp;gt;1000&amp;lt;/numericchannelswitchtimeout&amp;gt; &amp;lt;!-- Time in ms before the numeric dialog auto closes when confirmchannelswitch is disabled. --&amp;gt;&lt;br /&gt;
&amp;lt;/pvr&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== epg ===&lt;br /&gt;
{{anchor|.3Cpvr.3E}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;epg&amp;gt;&lt;br /&gt;
  &amp;lt;updatecheckinterval&amp;gt;300&amp;lt;/updatecheckinterval&amp;gt;  &amp;lt;!-- Check every X seconds, if EPG data need to be updated. This does not mean that every X seconds an EPG update is actually triggered, it&#039;s just the interval how often to check whether an update should be triggered. If this value is greater than GUI setting &#039;epg.epgupdate&#039; value, then EPG updates will done with the value specified for &#039;updatecheckinterval&#039;, effectively overriding the GUI setting&#039;s value. --&amp;gt;&lt;br /&gt;
  &amp;lt;updateemptytagsinterval&amp;gt;60&amp;lt;/updateemptytagsinterval&amp;gt;  &amp;lt;!-- If a TV channel has no EPG data, try to obtain data for that channel every X seconds. This overrides the GUI setting &#039;epg.epgupdate&#039; value, but only for channels without EPG data. If this value is less than &#039;updatecheckinterval&#039; value, then data update will be done with the interval specified by &#039;updatecheckinterval&#039;. Example 1: epg.epgupdate = 120 (minutes!), updatecheckinterval = 300, updateemptytagsinterval = 60 =&amp;gt; trigger an EPG update for every channel without EPG data every 5 minutes and trigger an EPG update for every channel with EPG data every 2 hours. Example 2: epg.epgupdate = 120 (minutes!), updatecheckinterval = 300, updateemptytagsinterval = 3600 =&amp;gt; trigger an EPG update for every channel without EPG data every 2 hours and trigger an EPG update for every channel with EPG data every 1 hour. --&amp;gt;&lt;br /&gt;
  &amp;lt;cleanupinterval&amp;gt;900&amp;lt;/cleanupinterval&amp;gt;  &amp;lt;!-- remove old entries from the EPG every X seconds --&amp;gt;&lt;br /&gt;
  &amp;lt;activetagcheckinterval&amp;gt;60&amp;lt;/activetagcheckinterval&amp;gt;  &amp;lt;!-- check for updated active tags every X seconds --&amp;gt;&lt;br /&gt;
  &amp;lt;retryinterruptedupdateinterval&amp;gt;60&amp;lt;/retryinterruptedupdateinterval&amp;gt;  &amp;lt;!-- retry an interrupted EPG update after X seconds --&amp;gt;&lt;br /&gt;
  &amp;lt;displayupdatepopup&amp;gt;true&amp;lt;/displayupdatepopup&amp;gt;  &amp;lt;!-- display a progress popup while updating EPG data from clients --&amp;gt;&lt;br /&gt;
  &amp;lt;displayincrementalupdatepopup&amp;gt;false&amp;lt;/displayincrementalupdatepopup&amp;gt;  &amp;lt;!-- also display a progress popup while doing incremental EPG updates --&amp;gt;&lt;br /&gt;
&amp;lt;/epg&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== forcedswaptime ===&lt;br /&gt;
{{anchor|.3Cforcedswaptime.3E}}&lt;br /&gt;
Use to force a backbuffer-&amp;gt;frontbuffer swap while vsync is enabled. Set to the time (in ms) to allow for the swap (e.g. &amp;lt;forcedswaptime&amp;gt;1&amp;lt;/forcedswaptime&amp;gt; is typical).  &lt;br /&gt;
&lt;br /&gt;
Default: Off&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== omxdecodestartwithvalidframe ===&lt;br /&gt;
{{note|This tag is only in some Raspberry Pi specific distributions, such as OpenELEC. As of March 2015, this tag has not been merged into &amp;quot;vanilla&amp;quot; Kodi builds.}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;omxdecodestartwithvalidframe&amp;gt;&amp;lt;/omxdecodestartwithvalidframe&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Video library settings ==&lt;br /&gt;
&lt;br /&gt;
=== videoextensions ===&lt;br /&gt;
{{anchor|.3Cvideoextensions.3E}}&amp;lt;section begin=&amp;quot;videoextensions&amp;quot; /&amp;gt;&lt;br /&gt;
A list of additional file-extensions to allow (&#039;&#039;&#039;add&#039;&#039;&#039;) or exclude (&#039;&#039;&#039;remove&#039;&#039;&#039;) in the My Video windows.&lt;br /&gt;
&lt;br /&gt;
Default extensions for VIDEOS:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.m4v .3g2 .3gp .nsv .tp .ts .ty .strm .pls .rm .rmvb .mpd .m3u .m3u8 .ifo .mov .qt .divx .xvid&lt;br /&gt;
.bivx .vob .nrg .img .iso .udf .pva .wmv .asf .asx .ogm .m2v .avi .bin .dat .mpg .mpeg .mp4&lt;br /&gt;
.mkv .mk3d .avc .vp3 .svq3 .nuv .viv .dv .fli .flv .001 .wpl .xspf .zip .vdr .dvr-ms .xsp .mts&lt;br /&gt;
.m2t .m2ts .evo .ogv .sdp .avs .rec .url .pxml .vc1 .h264 .rcv .rss .mpls .mpl .webm .bdmv&lt;br /&gt;
.bdm .wtv .trp .f4v&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Examples:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;videoextensions&amp;gt;&lt;br /&gt;
  &amp;lt;add&amp;gt;.ex1|.ex2&amp;lt;/add&amp;gt;&lt;br /&gt;
  &amp;lt;remove&amp;gt;.ex3|.ex4&amp;lt;/remove&amp;gt;&lt;br /&gt;
&amp;lt;/videoextensions&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;section end=&amp;quot;videoextensions&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== discstubextensions ===&lt;br /&gt;
{{main|Media stubs}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=&amp;quot;discstubextensions&amp;quot; /&amp;gt;&lt;br /&gt;
The default filename extension for Disc Stubs is:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
.disc&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Using the following tags, it is possible to &amp;lt;tt&amp;gt;&amp;lt;add&amp;gt;&amp;lt;/tt&amp;gt; additional or &amp;lt;tt&amp;gt;&amp;lt;remove&amp;gt;&amp;lt;/tt&amp;gt; existing disc stub extensions to better suit your requirements.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;discstubextensions&amp;gt;&lt;br /&gt;
  &amp;lt;add&amp;gt;.disk|.stub&amp;lt;/add&amp;gt;&lt;br /&gt;
  &amp;lt;remove&amp;gt;.disc&amp;lt;/remove&amp;gt;&lt;br /&gt;
&amp;lt;/discstubextensions&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;section end=&amp;quot;discstubextensions&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== languagecodes ===&lt;br /&gt;
{{anchor|.3Clanguagecodes.3E}}&lt;br /&gt;
Translation table for subtitle and audio names.  Contains entries of the form&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;languagecodes&amp;gt;&lt;br /&gt;
  &amp;lt;code&amp;gt;&lt;br /&gt;
    &amp;lt;short&amp;gt;alt&amp;lt;/short&amp;gt;&lt;br /&gt;
    &amp;lt;long&amp;gt;Alternate&amp;lt;/long&amp;gt;&lt;br /&gt;
  &amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/languagecodes&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== moviestacking ===&lt;br /&gt;
{{anchor|.3Cmoviestacking.3E}}&amp;lt;section begin=&amp;quot;moviestacking&amp;quot; /&amp;gt;&lt;br /&gt;
{{main|Naming_video_files/Movies}}&lt;br /&gt;
This is used by the [[Naming_video_files/Movies#Split_Video_Files|file stacking]] algorithm to combine multi-part files and contains a list of &amp;quot;&#039;&#039;[[RegEx_tutorial|regular expressions]]&#039;&#039;&amp;quot;. For stacking videos that are contained in folders, such as VIDEO_TS folders, see &#039;&#039;&#039;[[advancedsettings.xml#folderstacking|&amp;lt;folderstacking&amp;gt;]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
As of v9.11, video stacking regular expressions &#039;&#039;&#039;must&#039;&#039;&#039; contain exactly four (4) capture expressions. &lt;br /&gt;
&lt;br /&gt;
Default:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;moviestacking&amp;gt;&lt;br /&gt;
  &amp;lt;!-- &amp;lt;cd/dvd/part/pt/disk/disc&amp;gt; &amp;lt;0-N&amp;gt; --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;(.*?)([ _.-]*(?:cd|dvd|p(?:ar)?t|dis[ck])[ _.-]*[0-9]+)(.*?)(\.[^.]+)$&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;!-- &amp;lt;cd/dvd/part/pt/disk/disc&amp;gt; &amp;lt;a-d&amp;gt; --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;(.*?)([ _.-]*(?:cd|dvd|p(?:ar)?t|dis[ck])[ _.-]*[a-d])(.*?)(\.[^.]+)$&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;!-- movienamea-xvid.avi, movienameb-xvid.avi --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;(.*?)([ ._-]*[a-d])(.*?)(\.[^.]+)$&amp;lt;/regexp&amp;gt;&lt;br /&gt;
&amp;lt;/moviestacking&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the argument &amp;lt;tt&amp;gt;action=&amp;quot;append&amp;quot;&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;append=&amp;quot;yes&amp;quot;&amp;lt;/tt&amp;gt; is supplied, the default moviestacking regular expressions will remain intact and the user specified ones will be added to the end.  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;moviestacking action=&amp;quot;append&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;!-- This expression will match movename1-xvid.avi, moviename2-xvid.avi.&lt;br /&gt;
         Be warned that it will likely stack sequels in a flat directory layout,&lt;br /&gt;
         so it is only recommend in a dir-per-video layout. --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;(.*?)([ ._-]*[0-9])(.*?)(\.[^.]+)$&amp;lt;/regexp&amp;gt;&lt;br /&gt;
&amp;lt;/moviestacking&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the argument &amp;lt;tt&amp;gt;action=&amp;quot;prepend&amp;quot;&amp;lt;/tt&amp;gt; is supplied, the default moviestacking regular expressions will remain intact and the user specified ones will be added to the beginning. &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;moviestacking action=&amp;quot;prepend&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;(Title)(Volume)(Ignore)(Extension)&amp;lt;/regexp&amp;gt;&lt;br /&gt;
&amp;lt;/moviestacking&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If no argument is supplied, or the argument &amp;lt;tt&amp;gt;append=&amp;quot;no&amp;quot;&amp;lt;/tt&amp;gt; is supplied, the default moviestacking regular expressions are overwritten by the user specified ones.&lt;br /&gt;
&amp;lt;section end=&amp;quot;moviestacking&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== folderstacking ===&lt;br /&gt;
{{main|Naming_video_files/Movies}}&lt;br /&gt;
This is similar to &#039;&#039;&#039;[[advancedsettings.xml#moviestacking|&amp;lt;moviestacking&amp;gt;]]&#039;&#039;&#039;, but is used for videos that are contained in folders that use the folder names to stack, such as VIDEO_TS folders (DVD rips that are not in ISO format).&lt;br /&gt;
&lt;br /&gt;
Default:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;folderstacking&amp;gt;&lt;br /&gt;
  &amp;lt;!-- &amp;lt;cd/dvd/disk/disc&amp;gt; &amp;lt;0-N&amp;gt; --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;((cd|dvd|dis[ck])[0-9]+)$&amp;lt;/regexp&amp;gt;&lt;br /&gt;
&amp;lt;/folderstacking&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== cleandatetime ===&lt;br /&gt;
{{anchor|.3Ccleandatetime.3E}}&lt;br /&gt;
Matches a year number in a string using a &#039;&#039;[[RegEx_tutorial|Regular Expression]]&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
Default expression:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;video&amp;gt;&lt;br /&gt;
  &amp;lt;cleandatetime&amp;gt;(.*[^ _\,\.\(\)\[\]\-])[ _\.\(\)\[\]\-]+(19[0-9][0-9]|20[0-9][0-9])([ _\,\.\(\)\[\]\-]|[^0-9]$)?&amp;lt;/cleandatetime&amp;gt;&lt;br /&gt;
&amp;lt;/video&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
:* The string found before will be used as basis string getting cleaned by the cleanstrings expressions. &lt;br /&gt;
:* By default date formats like MM:YY are ignored.&lt;br /&gt;
&lt;br /&gt;
=== cleanstrings ===&lt;br /&gt;
{{anchor|.3Ccleanstrings.3E}}&lt;br /&gt;
Clean unwanted characters from filenames or folders by using a list of &#039;&#039;[[RegEx_tutorial|Regular Expressions]]&#039;&#039;. Please note that everything right of the match (at the end of the file name) is removed, so if you would have a file named &#039;&#039;Super movie.mp4&#039;&#039; and would add &amp;lt;tt&amp;gt;&amp;lt;regexp&amp;gt; &amp;lt;/regexp&amp;gt;&amp;lt;/tt&amp;gt; (only a space), the only thing that would be left is &#039;&#039;Super&#039;&#039;, which is probably not what you want.&lt;br /&gt;
&lt;br /&gt;
Default expressions:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;video&amp;gt;&lt;br /&gt;
  &amp;lt;cleanstrings&amp;gt;&lt;br /&gt;
   &amp;lt;regexp&amp;gt;[ _\,\.\(\)\[\]\-](ac3|dts|custom|dc|remastered|divx|divx5|dsr|dsrip|dutch|dvd|dvd5|dvd9|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|extended|ws|telesync|ts|telecine|tc|brrip|bdrip|480p|480i|576p|576i|720p|720i|1080p|1080i|3d|hrhd|hrhdtv|hddvd|bluray|x264|h264|xvid|xvidvd|xxx|www.www|cd[1-9]|\[.*\])([ _\,\.\(\)\[\]\-]|$)&amp;lt;/regexp&amp;gt;&lt;br /&gt;
   &amp;lt;regexp&amp;gt;(\[.*\])&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;/cleanstrings&amp;gt;&lt;br /&gt;
&amp;lt;/video&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:* Arguments &amp;lt;tt&amp;gt;action=&amp;quot;append&amp;quot;&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;action=&amp;quot;prepend&amp;quot;&amp;lt;/tt&amp;gt; will insert user specified expressions after, or before, the defaults above. (Further details in [[Advancedsettings.xml#.3Cmoviestacking.3E|moviestacking]] section)&lt;br /&gt;
&lt;br /&gt;
=== tvshowmatching ===&lt;br /&gt;
{{anchor|.3Ctvshowmatching.3E}}&lt;br /&gt;
Matches the season and episode numbers in file paths by using a list of &#039;&#039;[[RegEx_tutorial|Regular Expressions]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Defaults:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tvshowmatching&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;s([0-9]+)[ ._x-]*e([0-9]+(?:(?:[a-i]|\\.[1-9])(?![0-9]))?)([^\\\\/]*)$&amp;lt;/regexp&amp;gt;  &amp;lt;!-- foo.s01.e01, foo.s01_e01, S01E02 foo, S01 - E02, S01xE02 --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;[\._ -]()[Ee][Pp]_?([0-9]+)([^\\/]*)$&amp;lt;/regexp&amp;gt;  &amp;lt;!-- foo.ep01, foo.EP_01 --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;([0-9]{4})[\.-]([0-9]{2})[\.-]([0-9]{2})&amp;lt;/regexp&amp;gt;  &amp;lt;!-- foo.yyyy.mm.dd.* (byDate=true) --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;([0-9]{2})[\.-]([0-9]{2})[\.-]([0-9]{4})&amp;lt;/regexp&amp;gt;  &amp;lt;!-- foo.mm.dd.yyyy.* (byDate=true) --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;[\\/\._ \[\(-]([0-9]+)x([0-9]+)([^\\/]*)$&amp;lt;/regexp&amp;gt;  &amp;lt;!-- foo.1x09* or just /1x09* --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;[\\/\._ -]([0-9]+)([0-9][0-9])([\._ -][^\\/]*)$&amp;lt;/regexp&amp;gt;  &amp;lt;!-- foo.103*, 103 foo --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;[\/._ -]p(?:ar)?t[_. -]()([ivx]+)([._ -][^\/]*)$&amp;lt;/regexp&amp;gt;  &amp;lt;!-- Part I, Pt.VI --&amp;gt;&lt;br /&gt;
&amp;lt;/tvshowmatching&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:* Arguments &amp;lt;tt&amp;gt;action=&amp;quot;append&amp;quot;&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;action=&amp;quot;prepend&amp;quot;&amp;lt;/tt&amp;gt; will insert user specified expressions after, or before, the defaults above. (Further details in [[Advancedsettings.xml#.3Cmoviestacking.3E|moviestacking]] section)&lt;br /&gt;
:* Paths are converted to lower case before matching.&lt;br /&gt;
:* Examples of matching regexps for certain filenames can be found on the [[Naming_video_files/TV_shows|TV shows]] page.&lt;br /&gt;
&lt;br /&gt;
:* For multi-episode matching to work, there needs to be a third set of parentheses &#039;()&#039; at the end, this part is fed back into the regexp engine.&lt;br /&gt;
&lt;br /&gt;
:* A [https://forum.kodi.tv/showthread.php?tid=51614 forum thread] has a discussion of pre-made regex lists to match common names. These might improve Kodi&#039;s ability to match TV show names in some situations, at the risk of additional false positives.&lt;br /&gt;
&lt;br /&gt;
==== Filenames without Season ====&lt;br /&gt;
There are two methods to add episodes without a season in their file path. Both ways will force the season to &#039;1&#039; by default, so that you can use&lt;br /&gt;
the &#039;Use Absolute Ordering (Single Season)&#039; setting from the TheTvDb.com scraper.&lt;br /&gt;
&lt;br /&gt;
; Simple Method &#039;&#039;(XBMC v9.11 onwards and Kodi)&#039;&#039;&lt;br /&gt;
: Use only one pair of parentheses&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&amp;lt;regexp&amp;gt;[/\._ \-]([0-9]+)&amp;lt;/regexp&amp;gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
; Advanced Method &#039;&#039;(XBMC v10.05 onwards and Kodi)&#039;&#039;&lt;br /&gt;
: Supports multi-episode files without season&lt;br /&gt;
: Use an empty pair of parentheses for the season&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&amp;lt;regexp&amp;gt;[/\._ \-]()([0-9]+)(-[0-9]+)?&amp;lt;/regexp&amp;gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; Specifying Default Season &#039;&#039;(XBMC v12.0 onwards and Kodi)&#039;&#039;&lt;br /&gt;
It is possible to set the default season for specific regular expressions by setting the &#039;defaultseason&#039; attribute.&lt;br /&gt;
: Works with both the simple method and advanced method&lt;br /&gt;
: If not used, the season will be set to &#039;1&#039;&lt;br /&gt;
: Useful for setting specials to season &#039;0&#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&amp;lt;regexp defaultseason=&amp;quot;0&amp;quot;&amp;gt;[/\._ \-]X()([0-9]+)(-[0-9]+)?&amp;lt;/regexp&amp;gt;&lt;br /&gt;
&amp;lt;regexp defaultseason=&amp;quot;1&amp;quot;&amp;gt;[/\._ \-]E()([0-9]+)(-[0-9]+)?&amp;lt;/regexp&amp;gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== tvmultipartmatching ===&lt;br /&gt;
{{anchor|.3Ctvmultipartmatching.3E}}&lt;br /&gt;
Matches a multipart episode number based on a previously identified episode file, using a list of &#039;&#039;[[RegEx_tutorial|Regular Expressions]]&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Default:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tvmultipartmatching&amp;gt;^[-_ex]+([0-9]+(?:(?:[a-i]|\\.[1-9])(?![0-9]))?)&amp;lt;/tvmultipartmatching&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
:* Text matching is compared case-insensitive.&lt;br /&gt;
:* Specifying this option &#039;&#039;&#039;replaces&#039;&#039;&#039; the default value&lt;br /&gt;
&lt;br /&gt;
=== excludefromscan ===&lt;br /&gt;
{{anchor|.3Cexcludefromscan.3E}}&lt;br /&gt;
Matches filenames or folders which should be excluded from a library scan (except tvshows) using a list of &#039;&#039;[[RegEx_tutorial|Regular Expressions]]&#039;&#039;. This can be for both Video or Audio sections of &amp;lt;tt&amp;gt;advancedsettings.xml&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Defaults:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;video&amp;gt;&lt;br /&gt;
  &amp;lt;excludefromscan&amp;gt;&lt;br /&gt;
    &amp;lt;regexp&amp;gt;-trailer&amp;lt;/regexp&amp;gt;&lt;br /&gt;
    &amp;lt;regexp&amp;gt;[!-._ \\/]sample[-._ \\/]&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;/excludefromscan&amp;gt;&lt;br /&gt;
&amp;lt;/video&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:* Arguments &amp;lt;tt&amp;gt;action=&amp;quot;append&amp;quot;&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;action=&amp;quot;prepend&amp;quot;&amp;lt;/tt&amp;gt; will insert user specified expressions after, or before, the defaults above. (Further details in [[Advancedsettings.xml#.3Cmoviestacking.3E|moviestacking]] section)&lt;br /&gt;
&lt;br /&gt;
=== excludefromlisting ===&lt;br /&gt;
{{anchor|.3Cexcludefromlisting.3E}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;video&amp;gt;  &lt;br /&gt;
  &amp;lt;excludefromlisting&amp;gt; &amp;lt;!-- Regular expressions that if evaluated to true won&#039;t be displayed in Files View --&amp;gt;&lt;br /&gt;
    &amp;lt;regexp&amp;gt;[-\._ ](sample|trailer)[-\._ ]&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;/excludefromlisting&amp;gt;&lt;br /&gt;
&amp;lt;/video&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== excludetvshowsfromscan ===&lt;br /&gt;
{{anchor|.3Cexcludetvshowsfromscan.3E}}&lt;br /&gt;
Matches filenames or folders which should be excluded from a tvshow library scan using a list of &#039;&#039;[[RegEx_tutorial|Regular Expressions]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Defaults:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;video&amp;gt;&lt;br /&gt;
  &amp;lt;excludetvshowsfromscan&amp;gt;&lt;br /&gt;
    &amp;lt;regexp&amp;gt;[!-._ \\/]sample[-._ \\/]&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;/excludetvshowsfromscan&amp;gt;&lt;br /&gt;
&amp;lt;/video&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:* Arguments &amp;lt;tt&amp;gt;action=&amp;quot;append&amp;quot;&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;action=&amp;quot;prepend&amp;quot;&amp;lt;/tt&amp;gt; will insert user specified expressions after, or before, the defaults above. (Further details in [[Advancedsettings.xml#.3Cmoviestacking.3E|moviestacking]] section)&lt;br /&gt;
&lt;br /&gt;
=== trailermatching ===&lt;br /&gt;
{{anchor|.3Ctrailermatching.3E}}&lt;br /&gt;
Contains &amp;quot;&#039;&#039;[[RegEx_tutorial|Regular Expression]]&#039;&#039;&amp;quot; syntax (commonly referred to as &amp;quot;&#039;&#039;[[RegEx_tutorial|RegEx]]&#039;&#039;&amp;quot; or &amp;quot;&#039;&#039;[[RegEx_tutorial|RegExp]]&#039;&#039;&amp;quot;) to match the locally stored trailers to movies in the library.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;trailermatching&amp;gt;&lt;br /&gt;
    &amp;lt;!-- This regexp will match moviename_Trailer.avi --&amp;gt;&lt;br /&gt;
    &amp;lt;regexp&amp;gt;(.*?)(_Trailer)(\.[^.]+)$&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;/trailermatching&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== videolibrary ===&lt;br /&gt;
{{anchor|.3Cvideolibrary.3E}}&lt;br /&gt;
Options specific to the Video Library&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot; line=&#039;line&#039;&amp;gt;&lt;br /&gt;
  &amp;lt;videolibrary&amp;gt;&lt;br /&gt;
    &amp;lt;allitemsonbottom&amp;gt;false&amp;lt;/allitemsonbottom&amp;gt;  &amp;lt;!-- sorts the &amp;quot;*All&amp;quot; items at the bottom of the list when in Ascending order --&amp;gt;&lt;br /&gt;
    &amp;lt;cleanonupdate&amp;gt;false&amp;lt;/cleanonupdate&amp;gt;  &amp;lt;!-- default set to false to prevent Kodi from removing items from the database while updating.  --&amp;gt;&lt;br /&gt;
    &amp;lt;usefasthash&amp;gt;true&amp;lt;/usefasthash&amp;gt; &amp;lt;!-- defaults to true. Set to false in order to skip hashing based on the folders modification time. --&amp;gt;&lt;br /&gt;
    &amp;lt;recentlyaddeditems&amp;gt;35&amp;lt;/recentlyaddeditems&amp;gt; &amp;lt;!-- number of recently added items. Defaults to 25 --&amp;gt;&lt;br /&gt;
    &amp;lt;itemseparator&amp;gt; / &amp;lt;/itemseparator&amp;gt;  &amp;lt;!-- separator used for multiple artists/genres in tags. Note, this is *space* *slash* *space* --&amp;gt;&lt;br /&gt;
    &amp;lt;exportautothumbs&amp;gt;false&amp;lt;/exportautothumbs&amp;gt;  &amp;lt;!-- export auto-generated thumbs. Defaults to false --&amp;gt;&lt;br /&gt;
    &amp;lt;importwatchedstate&amp;gt;false&amp;lt;/importwatchedstate&amp;gt;  &amp;lt;!-- import previously exported playdate and playcount from .nfo files. Defaults to false --&amp;gt;&lt;br /&gt;
    &amp;lt;importresumepoint&amp;gt;false&amp;lt;/importresumepoint&amp;gt;  &amp;lt;!-- import previously exported resume point from .nfo files. Defaults to false --&amp;gt;&lt;br /&gt;
    &amp;lt;dateadded&amp;gt;1&amp;lt;/dateadded&amp;gt; &amp;lt;!-- 0 results in using the current datetime when adding a video;&lt;br /&gt;
                                  1 (default) results in prefering to use the files mtime (if it&#039;s valid) and only using the file&#039;s ctime if the mtime isn&#039;t valid;&lt;br /&gt;
                                  2 results in using the newer datetime of the file&#039;s mtime and ctime --&amp;gt;&lt;br /&gt;
  &amp;lt;/videolibrary&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Extra artwork ====&lt;br /&gt;
&lt;br /&gt;
New for Kodi v18.&lt;br /&gt;
Configuration to expand the artwork automatically added by Kodi to media items in the library, either from local files or online scrapers.&lt;br /&gt;
&lt;br /&gt;
The original basic artwork types are still hardcoded so they don&#039;t need to be configured here (and can&#039;t be removed). &amp;quot;poster&amp;quot; and &amp;quot;fanart&amp;quot; for movies, movie sets, TV shows, seasons, and music videos; &amp;quot;banner&amp;quot; for TV shows and seasons; and &amp;quot;thumb&amp;quot; for episodes.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;videolibrary&amp;gt;&lt;br /&gt;
    &amp;lt;!-- ... combine with &amp;quot;videolibrary&amp;quot; settings above --&amp;gt;&lt;br /&gt;
    &amp;lt;!-- Additional artwork to add for TV shows --&amp;gt;&lt;br /&gt;
    &amp;lt;tvshowextraart&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;characterart&amp;lt;/arttype&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;clearart&amp;lt;/arttype&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;clearlogo&amp;lt;/arttype&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;landscape&amp;lt;/arttype&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;keyart&amp;lt;/arttype&amp;gt;&lt;br /&gt;
    &amp;lt;/tvshowextraart&amp;gt;&lt;br /&gt;
    &amp;lt;!-- Additional artwork to add for TV show seasons --&amp;gt;&lt;br /&gt;
    &amp;lt;tvseasonextraart&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;landscape&amp;lt;/arttype&amp;gt;&lt;br /&gt;
    &amp;lt;/tvseasonextraart&amp;gt;&lt;br /&gt;
    &amp;lt;!-- Additional artwork to add for TV show episodes --&amp;gt;&lt;br /&gt;
    &amp;lt;episodeextraart&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;fanart&amp;lt;/arttype&amp;gt;&lt;br /&gt;
    &amp;lt;/episodeextraart&amp;gt;&lt;br /&gt;
    &amp;lt;!-- Additional artwork to add for movies --&amp;gt;&lt;br /&gt;
    &amp;lt;movieextraart&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;banner&amp;lt;/arttype&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;clearart&amp;lt;/arttype&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;clearlogo&amp;lt;/arttype&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;discart&amp;lt;/arttype&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;landscape&amp;lt;/arttype&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;keyart&amp;lt;/arttype&amp;gt;&lt;br /&gt;
    &amp;lt;/movieextraart&amp;gt;&lt;br /&gt;
    &amp;lt;!-- Additional artwork to add for movie sets / collections --&amp;gt;&lt;br /&gt;
    &amp;lt;moviesetextraart&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;banner&amp;lt;/arttype&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;clearart&amp;lt;/arttype&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;clearlogo&amp;lt;/arttype&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;discart&amp;lt;/arttype&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;landscape&amp;lt;/arttype&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;keyart&amp;lt;/arttype&amp;gt;&lt;br /&gt;
    &amp;lt;/moviesetextraart&amp;gt;&lt;br /&gt;
    &amp;lt;!-- Additional artwork to add for musicvideos --&amp;gt;&lt;br /&gt;
    &amp;lt;musicvideoextraart&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;banner&amp;lt;/arttype&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;clearart&amp;lt;/arttype&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;clearlogo&amp;lt;/arttype&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;discart&amp;lt;/arttype&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;landscape&amp;lt;/arttype&amp;gt;&lt;br /&gt;
    &amp;lt;/musicvideoextraart&amp;gt;&lt;br /&gt;
  &amp;lt;/videolibrary&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== videoscanner ===&lt;br /&gt;
{{anchor|.3Cvideoscanner.3E}}&lt;br /&gt;
Options specific to the Video scanner&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;videoscanner&amp;gt;&lt;br /&gt;
    &amp;lt;ignoreerrors&amp;gt;true&amp;lt;/ignoreerrors&amp;gt; &amp;lt;!-- Set to true to silently ignore errors while scanning videos. This prevents the error dialogue box, so you don&#039;t have to keep hitting &amp;quot;yes&amp;quot; to keep scanning.--&amp;gt;&lt;br /&gt;
  &amp;lt;/videoscanner&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Library artwork ==&lt;br /&gt;
&lt;br /&gt;
{{note|Using &amp;lt;imageres&amp;gt;9999&amp;lt;/imageres&amp;gt; and &amp;lt;fanartres&amp;gt;9999&amp;lt;/fanartres&amp;gt; will allow caching artwork at original size.}}&lt;br /&gt;
&lt;br /&gt;
=== imageres ===&lt;br /&gt;
{{anchor|.3Cimageres.3E}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=&amp;quot;imageres description&amp;quot; /&amp;gt;Specify the maximum resolution that [[Artwork/Cache#Texture optimization| cached artwork]] (other than fanart / 16:9 images) should be resized to in pixels. The width is automatically calculated as being 16/9*height.  The image will be resized to fit within this size. e.g. an image that is 2000x500 will be cached at size 1280x320. An image that is 500x800 will be cached at size 450x720 using the default value of 720.&amp;lt;section end=&amp;quot;imageres description&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;imageres&amp;gt;720&amp;lt;/imageres&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== fanartres ===&lt;br /&gt;
{{anchor|.3Cfanartres.3E}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=&amp;quot;fanartres description&amp;quot; /&amp;gt;Specify the maximum resolution that [[Artwork/Cache#Texture optimization| cached fanart]] should be resized to in pixels. The width is automatically calculated as being 16/9*height. Only images that are exactly 16x9 and equal to or greater than this resolution will be cached at this size - all other images will be cached using &amp;lt;imageres&amp;gt;. The default value is 1080.&amp;lt;section end=&amp;quot;fanartres description&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;fanartres&amp;gt;1080&amp;lt;/fanartres&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== fanart ===&lt;br /&gt;
{{anchor|.3Cfanart.3E}}&lt;br /&gt;
A list of additional files to scan when searching for local fanart images.  (The defaults are fanart.jpg and fanart.png which can be removed.)&lt;br /&gt;
*Used for &#039;&#039;&#039;music only&#039;&#039;&#039;&lt;br /&gt;
*Cannot be used in conjunction with &#039;&#039;[[Advancedsettings.xml#Music_library_extra_artwork|2.6.5.1 Music library extra artwork]]&#039;&#039; to rename extra fanart.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;fanart&amp;gt;&lt;br /&gt;
  &amp;lt;remove&amp;gt;fanart.jpg&amp;lt;/remove&amp;gt;&lt;br /&gt;
  &amp;lt;add&amp;gt;backdrop.jpg&amp;lt;/add&amp;gt;&lt;br /&gt;
&amp;lt;/fanart&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== musicthumbs ===&lt;br /&gt;
{{anchor|.3Cmusicthumbs.3E}}&lt;br /&gt;
&amp;lt;section begin=&amp;quot;musicthumbs&amp;quot; /&amp;gt;A list of additional files to try when searching for music thumbnail images.  (The default is folder.jpg which can be removed.)&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;musicthumbs&amp;gt;&lt;br /&gt;
  &amp;lt;remove&amp;gt;folder.jpg&amp;lt;/remove&amp;gt;&lt;br /&gt;
  &amp;lt;add&amp;gt;thumb.jpg|cover.jpg&amp;lt;/add&amp;gt;&lt;br /&gt;
&amp;lt;/musicthumbs&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;section end=&amp;quot;musicthumbs&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== imagescalingalgorithm ===&lt;br /&gt;
Specify the image scaling algorithm for image resizing when [[Artwork/Cache#Texture optimization| caching artwork]] to the local texture cache.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;imagescalingalgorithm&amp;gt;bicubic&amp;lt;/imagescalingalgorithm&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[https://github.com/xbmc/xbmc/blob/1a8753d5cd93890dc6a9f9d4b2ce8848066ea5d0/xbmc/pictures/PictureScalingAlgorithm.cpp#L32-L43 Available image scaling algorithms]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=text enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
fast_bilinear&lt;br /&gt;
bilinear&lt;br /&gt;
bicubic&lt;br /&gt;
experimental&lt;br /&gt;
nearest_neighbor&lt;br /&gt;
averaging_area&lt;br /&gt;
bicublin&lt;br /&gt;
gaussian&lt;br /&gt;
sinc&lt;br /&gt;
lanczos&lt;br /&gt;
bicubic_spline&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Video and music library settings ==&lt;br /&gt;
&lt;br /&gt;
=== playlistasfolders ===&lt;br /&gt;
{{anchor|.3Cplaylistasfolders.3E}}&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Set to false to revert to the previous behaviour. When you select a playlist, its content is added to the list of elements to be played.&lt;br /&gt;
&lt;br /&gt;
:{{note|This setting will not affect smart playlists, they will always show as folders.}}&lt;br /&gt;
&lt;br /&gt;
;Example&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;playlistasfolders&amp;gt;true&amp;lt;/playlistasfolders&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== playlistretries ===&lt;br /&gt;
{{anchor|.3Cplaylistretries.3E}}&lt;br /&gt;
The number of retries attempted if a source is offline. With this control you can alter the number of consecutive failed items before a playlist fails.&lt;br /&gt;
&lt;br /&gt;
Default:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;playlistretries&amp;gt;100&amp;lt;/playlistretries&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== playlisttimeout ===&lt;br /&gt;
{{anchor|.3Cplaylisttimeout.3E}}&lt;br /&gt;
The timeout, in seconds, before item failure.&lt;br /&gt;
&lt;br /&gt;
Default:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;playlisttimeout&amp;gt;20&amp;lt;/playlisttimeout&amp;gt; &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== sorttokens ===&lt;br /&gt;
Allows you to specify additional tokens that will be ignored at the start of lines during sorting.&lt;br /&gt;
{{note|Sort tokens are case sensitive.}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;sorttokens&amp;gt;&lt;br /&gt;
  &amp;lt;token&amp;gt;the&amp;lt;/token&amp;gt;&lt;br /&gt;
&amp;lt;/sorttokens&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In the above example &amp;quot;the &amp;quot;, &amp;quot;the.&amp;quot; and &amp;quot;the_&amp;quot; will be ignored at the start of titles or names when sorting items, in both video and music libraries. A separator can also be specified, for example&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;sorttokens&amp;gt;&lt;br /&gt;
    &amp;lt;token separators=&amp;quot;&#039;&amp;quot;&amp;gt;L&amp;lt;/token&amp;gt;&lt;br /&gt;
&amp;lt;/sorttokens&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
In that case the value L&#039;, as in French movie name &#039;&#039;L&#039;argent&#039;&#039;, will be ignored and the item listed under &amp;quot;A&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== musicdatabase/videodatabase ===&lt;br /&gt;
{{anchor|.3Cmusicdatabase.3E/.3Cvideodatabase.3E|musicdatabase/videodatabase|database tags music/video/tv/epg/adsp}}&lt;br /&gt;
{{main|MySQL}}&lt;br /&gt;
&amp;lt;section begin=&amp;quot;videodatabase&amp;quot; /&amp;gt;&lt;br /&gt;
Allows advanced customization of the default database settings for music, video, TV, EPG, and ADSP databases.&lt;br /&gt;
&lt;br /&gt;
:{{note| &#039;&#039;&#039;It is HIGHLY recommended that you not attempt to place an sqlite3 database outside of kodi&#039;s path.  sqlite3 contains no filesystem abstraction, so this will plain break on any non-local (as far as Kodi is concerned) paths.  Use this for mysql only.&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Parent tags:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;videodatabase&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;musicdatabase&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;tvdatabase&amp;gt;&#039;&#039;&#039; - Highly experimental/unstable and no practical benefit for most users. &#039;&#039;&#039;Avoid using.&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;epgdatabase&amp;gt;&#039;&#039;&#039; - Highly experimental/unstable and no practical benefit for most users. &#039;&#039;&#039;Avoid using.&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;adspdatabase&amp;gt;&#039;&#039;&#039; - Highly experimental/unstable and no practical benefit for most users. &#039;&#039;&#039;Avoid using.&#039;&#039;&#039;&lt;br /&gt;
{{MySQL warning}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Child tags: &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;type&amp;gt;&lt;br /&gt;
: &#039;&#039;Required&#039;&#039; - Can be either &amp;quot;sqlite3&amp;quot; or &amp;quot;mysql&amp;quot; (default: sqlite3)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;host&amp;gt;&lt;br /&gt;
:&#039;&#039;Required&#039;&#039; - &lt;br /&gt;
* sqlite3: defines the relative path to the database file (eg. /usr/local/kodi/databases).&lt;br /&gt;
* mysql: defines the host of the mysql socket (eg. localhost, 192.168.0.1, etc)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;port&amp;gt;&lt;br /&gt;
: &#039;&#039;Optional&#039;&#039; -&lt;br /&gt;
* sqlite3: silently ignored&lt;br /&gt;
* mysql: defines the port of the mysql socket (default: 3306)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;name&amp;gt;&lt;br /&gt;
: &#039;&#039;Optional&#039;&#039; -&lt;br /&gt;
:by default &amp;quot;MyVideos&amp;quot;+DB number will be used.&lt;br /&gt;
* sqlite3: defines the name of the database file to read from, excluding the &amp;quot;.db&amp;quot; extension.&lt;br /&gt;
* mysql: defines the name of the database to use&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;user&amp;gt;&lt;br /&gt;
: &#039;&#039;Required for MySQL&#039;&#039; -&lt;br /&gt;
* sqlite3: silently ignored&lt;br /&gt;
* mysql: defines the user with privileged access to the database&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;pass&amp;gt;&lt;br /&gt;
: &#039;&#039;Required for MySQL&#039;&#039; -&lt;br /&gt;
* sqlite3: silently ignored&lt;br /&gt;
* mysql: defines the password for the user with privileged access to the database&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;compression&amp;gt;&lt;br /&gt;
: &#039;&#039;Optional&#039;&#039; - Defaults to false. Set to &amp;quot;true&amp;quot; to enable MySQL compression protocol. Performance benefit is going to be largely dependent on the network bandwidth, latency between database and clients and on the size of the result sets. [https://github.com/xbmc/xbmc/pull/6484]&lt;br /&gt;
: {{Note|Slower clients (such as the RPi and others) won&#039;t benefit from it as the zlib de-compression overhead is higher than the actual compression savings}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;key&amp;gt;&lt;br /&gt;
: &#039;&#039;Optional&#039;&#039; - SSL setting for MySQL [https://github.com/xbmc/xbmc/pull/2566]&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;cert&amp;gt;&lt;br /&gt;
: &#039;&#039;Optional&#039;&#039; - SSL setting for MySQL [https://github.com/xbmc/xbmc/pull/2566]&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;ca&amp;gt;&lt;br /&gt;
: &#039;&#039;Optional&#039;&#039; - SSL setting for MySQL [https://github.com/xbmc/xbmc/pull/2566]&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;capath&amp;gt;&lt;br /&gt;
: &#039;&#039;Optional&#039;&#039; - SSL setting for MySQL [https://github.com/xbmc/xbmc/pull/2566]&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;ciphers&amp;gt;&lt;br /&gt;
: &#039;&#039;Optional&#039;&#039; - SSL setting for MySQL [https://github.com/xbmc/xbmc/pull/2566]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Examples:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
1) Configure a database for MySQL.&lt;br /&gt;
:{{note| &#039;&#039;The &#039;&#039;&#039;&amp;lt;videodatabase&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;musicdatabase&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;tvdatabase&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;epgdatabase&amp;gt;&#039;&#039;&#039;, and &#039;&#039;&#039;&amp;lt;adspdatabase&amp;gt;&#039;&#039;&#039; tags are interchangeable here.&#039;&#039;}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;videodatabase&amp;gt;&lt;br /&gt;
  &amp;lt;type&amp;gt;mysql&amp;lt;/type&amp;gt;&lt;br /&gt;
  &amp;lt;host&amp;gt;192.168.0.10&amp;lt;/host&amp;gt;&lt;br /&gt;
  &amp;lt;name&amp;gt;kodi_video&amp;lt;/name&amp;gt;&lt;br /&gt;
  &amp;lt;user&amp;gt;kodi&amp;lt;/user&amp;gt;&lt;br /&gt;
  &amp;lt;pass&amp;gt;kodi&amp;lt;/pass&amp;gt;&lt;br /&gt;
&amp;lt;/videodatabase&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2) Configure a database for an sqlite database.&lt;br /&gt;
:{{note| &#039;&#039;The &#039;&#039;&#039;&amp;lt;videodatabase&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;musicdatabase&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;tvdatabase&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;epgdatabase&amp;gt;&#039;&#039;&#039;, and &#039;&#039;&#039;&amp;lt;adspdatabase&amp;gt;&#039;&#039;&#039; tags are interchangeable here.&#039;&#039;}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;musicdatabase&amp;gt;&lt;br /&gt;
  &amp;lt;type&amp;gt;sqlite3&amp;lt;/type&amp;gt;&lt;br /&gt;
  &amp;lt;host&amp;gt;/usr/local/share/kodi/databases&amp;lt;/host&amp;gt;&lt;br /&gt;
&amp;lt;/musicdatabase&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section end=&amp;quot;videodatabase&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== externalplayer ===&lt;br /&gt;
{{anchor|.3Cexternalplayer.3E}}&lt;br /&gt;
{{see|External players}}&lt;br /&gt;
&lt;br /&gt;
== Music settings ==&lt;br /&gt;
&lt;br /&gt;
=== musicextensions ===&lt;br /&gt;
{{anchor|.3Cmusicextensions.3E}}&lt;br /&gt;
&amp;lt;section begin=&amp;quot;musicextensions&amp;quot; /&amp;gt;&lt;br /&gt;
Default extensions for MUSIC:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.nsv .m4a .flac .aac .strm .pls .rm .rma .mpa .wav .wma .ogg .mp3 .mp2 .m3u .gdm .imf .m15 .sfx&lt;br /&gt;
.uni .ac3 .dts .cue .aif .aiff .wpl .xspf .ape .mac .mpc .mp+ .mpp .shn .zip .wv .dsp .xsp .xwav&lt;br /&gt;
.waa .wvs .wam .gcm .idsp .mpdsp .mss .spt .rsd .sap .cmc .cmr .dmc .mpt .mpd .rmt .tmc .tm8&lt;br /&gt;
.tm2 .oga .url .pxml .tta .rss .wtv .mka .tak .opus .dff .dsf .m4b .dtshd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is possible to add or remove extensions for Music, using the following XML tags. Useful if you keep, say, FLAC and mp3 versions of music in the same folder. The &amp;lt;remove&amp;gt; tag can be used to remove mp3 from being listed in the library, leaving only the higher quality FLAC being displayed.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;musicextensions&amp;gt;&lt;br /&gt;
   &amp;lt;add&amp;gt;.ex1|.ex2&amp;lt;/add&amp;gt;&lt;br /&gt;
   &amp;lt;remove&amp;gt;.ex3|.ex4&amp;lt;/remove&amp;gt;&lt;br /&gt;
 &amp;lt;/musicextensions&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section end=&amp;quot;musicextensions&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== cddbaddress ===&lt;br /&gt;
{{anchor|.3Ccddbaddress.3E}}&lt;br /&gt;
The address of the online CDDb database.  You may set this to another freedb mirror if there is a more suitable one.  &lt;br /&gt;
&lt;br /&gt;
Default: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;gt;&lt;br /&gt;
&amp;lt;cddbaddress&amp;gt;freedb.freedb.org&amp;lt;/cddbaddress&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== songinfoduration ===&lt;br /&gt;
{{anchor|.3Csonginfoduration.3E}}&lt;br /&gt;
This controls how long the song information will remain onscreen when the song changes during visualisations.  The valid range is &amp;quot;1&amp;quot; to &amp;quot;Indefinite (0)&amp;quot;, in seconds.  This does not include the duration of any transition effects. &lt;br /&gt;
&lt;br /&gt;
Default:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;songinfoduration&amp;gt;10&amp;lt;/songinfoduration&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== musicfilenamefilters ===&lt;br /&gt;
{{anchor|.3Cmusicfilenamefilters.3E}}&lt;br /&gt;
Contains filters to match music information (artist, title etc.) from a tag-less music filename.  The first &amp;lt;filter&amp;gt; to match completely is used. Matched items include:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
%A - Artist&lt;br /&gt;
%T - Title&lt;br /&gt;
%B - Album&lt;br /&gt;
%N - Track number&lt;br /&gt;
%S - Part of set (disk number)&lt;br /&gt;
%D - Duration&lt;br /&gt;
%G - Genre&lt;br /&gt;
%Y - Year&lt;br /&gt;
%R - Rating&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;musicfilenamefilters&amp;gt;&lt;br /&gt;
  &amp;lt;filter&amp;gt;%A - %T&amp;lt;/filter&amp;gt;&lt;br /&gt;
&amp;lt;/musicfilenamefilters&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== musiclibrary ===&lt;br /&gt;
Options specific to the Music Library&lt;br /&gt;
&amp;lt;section begin=&amp;quot;MusicLibrary&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot; line=&#039;line&#039;&amp;gt;&lt;br /&gt;
&amp;lt;musiclibrary&amp;gt;&lt;br /&gt;
    &amp;lt;allitemsonbottom&amp;gt;true&amp;lt;/allitemsonbottom&amp;gt;       &amp;lt;!-- sorts the &amp;quot;*All&amp;quot; items at the bottom of the list when in Ascending order --&amp;gt;&lt;br /&gt;
    &amp;lt;cleanonupdate&amp;gt;false&amp;lt;/cleanonupdate&amp;gt;            &amp;lt;!-- default set to false to prevent Kodi from removing items from the database while updating.  --&amp;gt;&lt;br /&gt;
    &amp;lt;recentlyaddeditems&amp;gt;35&amp;lt;/recentlyaddeditems&amp;gt;     &amp;lt;!-- number of recently added items. Defaults to 25 --&amp;gt;&lt;br /&gt;
    &amp;lt;albumformat&amp;gt;%B - %Y&amp;lt;/albumformat&amp;gt;              &amp;lt;!-- album label template, default is &amp;quot;%B&amp;quot; --&amp;gt;&lt;br /&gt;
    &amp;lt;prioritiseapetags&amp;gt;true&amp;lt;/prioritiseapetags&amp;gt;     &amp;lt;!-- prioritise APEv2 tags over ID3v1/2 tags, default is false. --&amp;gt;&lt;br /&gt;
    &amp;lt;itemseparator&amp;gt; / &amp;lt;/itemseparator&amp;gt;              &amp;lt;!-- separator used for multiple artists/genres in tags. Note, this is *space* *slash* *space* See Note below--&amp;gt;&lt;br /&gt;
    &amp;lt;artistseparators&amp;gt;                              &amp;lt;!-- separator used for multiple artists. Note that spaces are used for some separators. See Note below--&amp;gt;&lt;br /&gt;
        &amp;lt;separator&amp;gt;;&amp;lt;/separator&amp;gt;&lt;br /&gt;
        &amp;lt;separator&amp;gt;:&amp;lt;/separator&amp;gt;&lt;br /&gt;
        &amp;lt;separator&amp;gt;|&amp;lt;/separator&amp;gt;&lt;br /&gt;
        &amp;lt;separator&amp;gt; feat. &amp;lt;/separator&amp;gt;&lt;br /&gt;
        &amp;lt;separator&amp;gt; ft. &amp;lt;/separator&amp;gt;&lt;br /&gt;
    &amp;lt;/artistseparators&amp;gt;&lt;br /&gt;
    &amp;lt;dateadded&amp;gt;1&amp;lt;/dateadded&amp;gt;                        &amp;lt;!--0 results in using the current datetime when adding a song;&lt;br /&gt;
                                                        1 (default) results in prefering to use the files mtime (if it&#039;s valid) and only using the file&#039;s ctime if the mtime isn&#039;t valid;&lt;br /&gt;
                                                        2 results in using the newer datetime of the file&#039;s mtime and ctime   --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;!-- The following tags are available from v18 and later releases --&amp;gt;                                                    &lt;br /&gt;
    &amp;lt;useartistsortname&amp;gt;false&amp;lt;/useartistsortname&amp;gt;    &amp;lt;!-- When &amp;quot;true&amp;quot; the Artist Sort Name is used in sorting of songs, albums and artists. Artists can be sorted in surname. Default is &amp;quot;false&amp;quot; --&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
    &amp;lt;!-- New for v19 and later releases --&amp;gt;&lt;br /&gt;
    &amp;lt;useisodates&amp;gt;false&amp;lt;/useisodates&amp;gt;                &amp;lt;!-- When &amp;quot;true&amp;quot; all dates displayed in the music library will be in ISO 8601 format (YYYY-MM-DD or part thereof).&lt;br /&gt;
                                                         Defaults to &amp;quot;false&amp;quot; (use localized dates) --&amp;gt;  &lt;br /&gt;
&amp;lt;/musiclibrary&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
{{Note|Changing the &amp;lt;itemseparator&amp;gt; or &amp;lt;artistseparators&amp;gt; will only affect newly added items. A rescan won&#039;t change the existing ones. Remove the Source(s) or delete the Music DB and rebuild. This process should be made easier from v18 and up using &amp;lt;promptfulltagscan&amp;gt;}}&amp;lt;section end=&amp;quot;MusicLibrary&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Music library extra artwork ====&lt;br /&gt;
&lt;br /&gt;
New for Kodi v18.&lt;br /&gt;
Configuration to expand the artwork automatically added by Kodi to media items in the library, either from local files or online scrapers.&lt;br /&gt;
&lt;br /&gt;
The original basic artwork types are still hardcoded so they don&#039;t need to be configured here (and can&#039;t be removed). &amp;quot;thumb&amp;quot; for artists and albums, and &amp;quot;fanart&amp;quot; for artists.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;musiclibrary&amp;gt;&lt;br /&gt;
    &amp;lt;!-- ... combine with &amp;quot;musiclibrary&amp;quot; section above --&amp;gt;&lt;br /&gt;
    &amp;lt;!-- Additional artwork to add for artists --&amp;gt;&lt;br /&gt;
    &amp;lt;artistextraart&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;banner&amp;lt;/arttype&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;clearlogo&amp;lt;/arttype&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;clearart&amp;lt;/arttype&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;landscape&amp;lt;/arttype&amp;gt;&lt;br /&gt;
    &amp;lt;/artistextraart&amp;gt;&lt;br /&gt;
    &amp;lt;!-- Additional artwork to add for albums --&amp;gt;&lt;br /&gt;
    &amp;lt;albumextraart&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;discart&amp;lt;/arttype&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;spine&amp;lt;/arttype&amp;gt;&lt;br /&gt;
      &amp;lt;arttype&amp;gt;back&amp;lt;/arttype&amp;gt;&lt;br /&gt;
    &amp;lt;/albumextraart&amp;gt;&lt;br /&gt;
  &amp;lt;/musiclibrary&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Photos settings ==&lt;br /&gt;
&lt;br /&gt;
=== pictureextensions ===&lt;br /&gt;
{{anchor|.3Cpictureextensions.3E}}&lt;br /&gt;
A list of additional file-extensions to allow (&#039;&#039;&#039;add&#039;&#039;&#039;) or exclude (&#039;&#039;&#039;remove&#039;&#039;&#039;) in the My Pictures window.&lt;br /&gt;
&lt;br /&gt;
Default extensions for PICTURES:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.png .jpg .jpeg .bmp .gif .ico .tif .tiff .tga .pcx .cbz .zip .rss .webp .jp2 .apng&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Examples:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pictureextensions&amp;gt;&lt;br /&gt;
  &amp;lt;add&amp;gt;.ex1|.ex2&amp;lt;/add&amp;gt;&lt;br /&gt;
  &amp;lt;remove&amp;gt;.ex3|.ex4&amp;lt;/remove&amp;gt;&lt;br /&gt;
&amp;lt;/pictureextensions&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== pictureexcludes ===&lt;br /&gt;
{{anchor|.3Cpictureexcludes.3E}}&lt;br /&gt;
Matches filenames or folders which should be excluded from being displayed in My Pictures using a list of &#039;&#039;[[RegEx_tutorial|Regular Expressions]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pictureexcludes&amp;gt;  &amp;lt;!-- Regular expressions that if evaluated to true won&#039;t be displayed in My Pictures --&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;small&amp;lt;/regexp&amp;gt;&lt;br /&gt;
  &amp;lt;regexp&amp;gt;[-\._ ](sample|trailer)[-\._ ]&amp;lt;/regexp&amp;gt;&lt;br /&gt;
&amp;lt;/pictureexcludes&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== slideshow ===&lt;br /&gt;
{{anchor|.3Cslideshow.3E}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;slideshow&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Amount to pan images as a percentage of the screen --&amp;gt;&lt;br /&gt;
  &amp;lt;panamount&amp;gt;2.5&amp;lt;/panamount&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Amount to zoom images as a percentage of the screen --&amp;gt;&lt;br /&gt;
  &amp;lt;zoomamount&amp;gt;5.0&amp;lt;/zoomamount&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Amount to compensate (zoom) images to attempt to reduce black bars. --&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Results in cropping of the longer length of the image in order to reduce the black bars on the shorter length of the image.  --&amp;gt;&lt;br /&gt;
  &amp;lt;!-- Defaults to 20. --&amp;gt;&lt;br /&gt;
  &amp;lt;blackbarcompensation&amp;gt;20&amp;lt;/blackbarcompensation&amp;gt;  &lt;br /&gt;
&amp;lt;/slideshow&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Network settings ==&lt;br /&gt;
&lt;br /&gt;
=== ftp ===&lt;br /&gt;
{{anchor|.3Cftp.3DE}}&lt;br /&gt;
Specific settings if a ftp server is in use as a source&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ftp&amp;gt;&lt;br /&gt;
  &amp;lt;remotethumbs&amp;gt;true&amp;lt;/remotethumbs&amp;gt; &amp;lt;!-- enable extraction of flag and thumb for ftp --&amp;gt;&lt;br /&gt;
&amp;lt;/ftp&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== samba ===&lt;br /&gt;
{{anchor|.3Csamba.3E}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;samba&amp;gt;&lt;br /&gt;
  &amp;lt;doscodepage&amp;gt;&amp;lt;/doscodepage&amp;gt;  &amp;lt;!-- code page to use for filenames --&amp;gt;&lt;br /&gt;
  &amp;lt;clienttimeout&amp;gt;10&amp;lt;/clienttimeout&amp;gt;  &amp;lt;!-- timeout (in seconds) --&amp;gt;&lt;br /&gt;
  &amp;lt;statfiles&amp;gt;true&amp;lt;/statfiles&amp;gt;  &amp;lt;!-- Set to false to disable smb stat() on files to speed up listings of large directories (over slow links) --&amp;gt;&lt;br /&gt;
&amp;lt;/samba&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== hosts ===&lt;br /&gt;
{{anchor|.3Cfhosts.3E}}&lt;br /&gt;
Static dns entries which take precedence over your dns server.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;hosts&amp;gt;&lt;br /&gt;
  &amp;lt;entry name=&amp;quot;HOSTNAME&amp;quot;&amp;gt;IPADDRESS&amp;lt;/entry&amp;gt;&lt;br /&gt;
&amp;lt;/hosts&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== network ===&lt;br /&gt;
{{anchor|.3Cnetwork.3E}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;network&amp;gt;&lt;br /&gt;
  &amp;lt;curlclienttimeout&amp;gt;10&amp;lt;/curlclienttimeout&amp;gt;  &amp;lt;!-- Timeout in seconds for libcurl (http/ftp) connections --&amp;gt;&lt;br /&gt;
  &amp;lt;curllowspeedtime&amp;gt;20&amp;lt;/curllowspeedtime&amp;gt;  &amp;lt;!-- Time in seconds for libcurl to consider a connection lowspeed --&amp;gt;&lt;br /&gt;
  &amp;lt;curlretries&amp;gt;2&amp;lt;/curlretries&amp;gt;             &amp;lt;!-- Amount of retries for certain failed libcurl operations (e.g. timeout) --&amp;gt;&lt;br /&gt;
  &amp;lt;httpproxyusername&amp;gt;&amp;lt;/httpproxyusername&amp;gt;  &amp;lt;!-- username for Basic Proxy Authentication --&amp;gt;&lt;br /&gt;
  &amp;lt;httpproxypassword&amp;gt;&amp;lt;/httpproxypassword&amp;gt;  &amp;lt;!-- password for Basic Proxy Authentication --&amp;gt;&lt;br /&gt;
&amp;lt;/network&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note|In Kodi v17, the three buffer settings are removed from the &amp;lt;code&amp;gt;&amp;lt;network&amp;gt;&amp;lt;/code&amp;gt; tag and now placed under the new &amp;lt;code&amp;gt;&amp;lt;cache&amp;gt;&amp;lt;/code&amp;gt; tag. See &#039;&#039;&#039;[[#cache]]&#039;&#039;&#039; for full details.}}&lt;br /&gt;
&lt;br /&gt;
=== cache ===&lt;br /&gt;
{{see also|HOW-TO:Modify_the_video_cache}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;cache&amp;gt;&lt;br /&gt;
  &amp;lt;memorysize&amp;gt;0&amp;lt;/memorysize&amp;gt;  &amp;lt;!-- number of bytes used for buffering streams in memory &lt;br /&gt;
    When set to 0 the cache will be written to disk instead of RAM --&amp;gt;&lt;br /&gt;
  &amp;lt;buffermode&amp;gt;0&amp;lt;/buffermode&amp;gt;  &amp;lt;!-- Choose what to buffer:&lt;br /&gt;
     0) Buffer all internet filesystems (like &amp;quot;2&amp;quot; but additionally also ftp, webdav, etc.) (default)&lt;br /&gt;
     1) Buffer all filesystems (including local)&lt;br /&gt;
     2) Only buffer true internet filesystems (streams) (http, https, etc.)&lt;br /&gt;
     3) No buffer&lt;br /&gt;
     4) Buffer all network filesystems (incl. smb, nfs, etc.) --&amp;gt;&lt;br /&gt;
  &amp;lt;readfactor&amp;gt;4.0&amp;lt;/readfactor&amp;gt; &amp;lt;!-- this factor determines the max readrate in terms of readfactor * avg bitrate of a video file. &lt;br /&gt;
This can help on bad connections to keep the cache filled. It will also greatly speed up buffering. Default value 4.0. --&amp;gt;&lt;br /&gt;
&amp;lt;/cache&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== airtunesport ===&lt;br /&gt;
{{anchor|.3Cairtunesport.3E}}&amp;lt;section begin=&amp;quot;airtunesport&amp;quot; /&amp;gt;&lt;br /&gt;
This overwrites the defalt listening port of the AirTunes server (announced via zeroconf).&lt;br /&gt;
&amp;lt;section end=&amp;quot;airtunesport&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== airplayport ===&lt;br /&gt;
{{anchor|.3Cairplayport.3E}}&amp;lt;section begin=&amp;quot;airplayport&amp;quot; /&amp;gt;&lt;br /&gt;
This overwrites the default listening port of the AirPlay server (announced via zeroconf).&lt;br /&gt;
&amp;lt;section end=&amp;quot;airplayport&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== File system settings ==&lt;br /&gt;
&lt;br /&gt;
=== packagefoldersize ===&lt;br /&gt;
&amp;lt;section begin=&amp;quot;packagefoldersize&amp;quot; /&amp;gt;&lt;br /&gt;
{{anchor|.3Cpackagefoldersize.3E}}&lt;br /&gt;
{{xml setting&lt;br /&gt;
 | tag name = packagefoldersize&lt;br /&gt;
 | option type = numerical&lt;br /&gt;
 | option values = &lt;br /&gt;
 | default values = 200&lt;br /&gt;
 | platform = all&lt;br /&gt;
 | XBMC version = 12&lt;br /&gt;
 | description = The amount (in megabytes) of add-on zip packages saved from previous add-on installs. These packages are mainly used for the [[Add-ons|add-on]] rollback feature. Increasing the size should increase the amount of past versions saved. Defaults to 200 MB.&lt;br /&gt;
 | example = Example: &amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&amp;lt;packagefoldersize&amp;gt;200&amp;lt;/packagefoldersize&amp;gt; &amp;lt;!-- this example would keep up to 200MB of add-on packages. --&amp;gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;section end=&amp;quot;packagefoldersize&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== detectasudf ===&lt;br /&gt;
{{anchor|.3Cdetectasudf.3E}}&lt;br /&gt;
Set to true if you wish to detect joint ISO9660/UDF disks as UDF.  &lt;br /&gt;
&lt;br /&gt;
Default: False&lt;br /&gt;
&lt;br /&gt;
=== pathsubstitution ===&lt;br /&gt;
{{anchor|.3Cpathsubstitution.3E}}&lt;br /&gt;
{{main|Path substitution}}&lt;br /&gt;
&lt;br /&gt;
{{divbox|red||&#039;&#039;&#039;Note:&#039;&#039;&#039; Path substition for &amp;quot;sources&amp;quot; and profiles is broken, and will &#039;&#039;&#039;NOT&#039;&#039;&#039; be fixed.}}&lt;br /&gt;
&lt;br /&gt;
Path substitutions are for use for redirecting file paths.  These are processed in order, and are useful for substituting an absolute path on a PC with a path suitable for Kodi to handle.  &lt;br /&gt;
&lt;br /&gt;
Default: No path substitutions defined.  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pathsubstitution&amp;gt;&lt;br /&gt;
  &amp;lt;substitute&amp;gt;&lt;br /&gt;
    &amp;lt;from&amp;gt;G:\dvds\&amp;lt;/from&amp;gt;&lt;br /&gt;
    &amp;lt;to&amp;gt;smb://somecomputer/g-share/dvds/&amp;lt;/to&amp;gt; &amp;lt;!-- Note the difference between the usage of forward and backslashes --&amp;gt;&lt;br /&gt;
  &amp;lt;/substitute&amp;gt;&lt;br /&gt;
&amp;lt;/pathsubstitution&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Input control settings ==&lt;br /&gt;
&lt;br /&gt;
=== remotedelay ===&lt;br /&gt;
{{anchor|.3Cremotedelay.3E}}&lt;br /&gt;
The repeat delay for a LIRC remote control. A delay value between 1 and 20 before a remote button starts repeating on a long keypress (i.e. continuously sending button pushes while it&#039;s held down). &lt;br /&gt;
&lt;br /&gt;
Default: 3&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;remotedelay&amp;gt;10&amp;lt;/remotedelay&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== controllerdeadzone ===&lt;br /&gt;
{{anchor|.3Ccontrollerdeadzone.3E}}&lt;br /&gt;
This advanced settings has been removed. &lt;br /&gt;
Since v17, the [[Advancedsettings.xml#controllerdeadzone|&amp;amp;lt;controllerdeadzone&amp;amp;gt;]] advanced setting has been removed. Deadzones can now be configured by plugging in the controller and selecting it in Settings -&amp;gt; System settings -&amp;gt; Input -&amp;gt; Peripherals.&lt;br /&gt;
&lt;br /&gt;
=== enablemultimediakeys ===&lt;br /&gt;
{{anchor|.3Cenablemultimediakeys.3E}}&lt;br /&gt;
This setting only has any effect on Windows versions of Kodi, and only applies to builds from 28th May 2011 onwards.&lt;br /&gt;
In Windows the multimedia keys generate a WM_APPCOMMAND message in addition the keypress. Kodi processes both keypresses and the WM_APPCOMMAND messages, and the end result would be that the command is executed twice. To avoid this, by default multimedia keypresses are disabled. Although it should rarely be necessary, the enablemultimediakeys setting allows you to enable the multimedia keys.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;enablemultimediakeys&amp;gt;true&amp;lt;/enablemultimediakeys&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== seeksteps ===&lt;br /&gt;
{{Main|Skip steps}}&lt;br /&gt;
&lt;br /&gt;
This setting changes which increments are available in the settings GUI for additive seeking. Note that &amp;lt;code&amp;gt;&amp;lt;seeksteps&amp;gt;&amp;lt;/code&amp;gt; is not used to actually choose which seek steps are enabled.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Default:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;seeksteps&amp;gt;7, 15, 30, 60, 180, 300, 600, 900, 1800&amp;lt;/seeksteps&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{editor note|the defaults need to be updated for seeksteps.}}&lt;br /&gt;
&lt;br /&gt;
=== touchscreen ===&lt;br /&gt;
{{anchor|.3Ctouchscreen.3E}}&lt;br /&gt;
This setting allows you to move/align the origin of the touch screen with the origin of the display used. If touch input does not result in a correct movement of the mouse pointer, the behaviour can be corrected with an offset and a stretch/compress factor.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;touchscreen&amp;gt;&lt;br /&gt;
		&amp;lt;x_offset&amp;gt;0&amp;lt;/x_offset&amp;gt; &amp;lt;!-- set pixel x offset to align it to the used display--&amp;gt;&lt;br /&gt;
		&amp;lt;y_offset&amp;gt;0&amp;lt;/y_offset&amp;gt; &amp;lt;!-- set pixel y offset to align it to the used display--&amp;gt;&lt;br /&gt;
		&amp;lt;x_stretch_factor&amp;gt;1.0&amp;lt;/x_stretch_factor&amp;gt; &amp;lt;!-- stretch/compress the touch x axis--&amp;gt;&lt;br /&gt;
		&amp;lt;y_stretch_factor&amp;gt;1.0&amp;lt;/y_stretch_factor&amp;gt; &amp;lt;!-- stretch/compress the touch y axis--&amp;gt;&lt;br /&gt;
    &amp;lt;/touchscreen&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Other interface settings ==&lt;br /&gt;
&lt;br /&gt;
=== window ===&lt;br /&gt;
{{anchor|.3Cwindow.3E}}&lt;br /&gt;
{{note|This is a &amp;quot;hidden&amp;quot; guisettings.xml setting (defined by the mouse moving the window size), but it is mentioned here because it is a particularly useful override when used in advancedsettings.xml}}&lt;br /&gt;
This allows you to manually set the default size of Kodi&#039;s windowed mode.  If you resize the window, it will return to the set size when restarting.&lt;br /&gt;
&lt;br /&gt;
WIDTH and HEIGHT are the values for each dimension, in pixels.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;window&amp;gt;&lt;br /&gt;
    &amp;lt;width&amp;gt;WIDTH&amp;lt;/width&amp;gt;&lt;br /&gt;
    &amp;lt;height&amp;gt;HEIGHT&amp;lt;/height&amp;gt;&lt;br /&gt;
&amp;lt;/window&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== restrictcapsmask ===&lt;br /&gt;
{{anchor|.3Crestrictcapsmask.3E}}&lt;br /&gt;
Windows only. A bitmask to prevent Kodi from using detected texture capabilities of the GPU. This helps work around buggy hardware/drivers.&lt;br /&gt;
&lt;br /&gt;
1: prevent the use of compressed textures (DXT1, DXT3, DXT5)&lt;br /&gt;
2: prevent the use of non-power-of-two dimensions for textures&lt;br /&gt;
4: prevent the use of compressed textures with non-power-of-two dimensions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;restrictcapsmask&amp;gt;0&amp;lt;/restrictcapsmask&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== algorithmdirtyregions ===&lt;br /&gt;
{{anchor|.3Calgorithmdirtyregions.3E}}&lt;br /&gt;
{{see also|HOW-TO:Modify dirty regions}}&lt;br /&gt;
&amp;lt;section begin=&amp;quot;algorithmdirtyregions&amp;quot; /&amp;gt;{{note|Some GPU/hardware configurations will have some minor issues (such as a visual &amp;quot;flicker&amp;quot;). For those situations try mode 2 or use the default (mode 3, which requires no advancedsetting). Almost all ARM-based devices (such as [[Android]]) willl likely have flickering issues.}}&lt;br /&gt;
 &lt;br /&gt;
Enable dirty-region processing. Dirty regions are any parts of the screen that have changed since the last frame. By not re-rendering what hasn&#039;t changed the GUI can be sped up. Because all GPUs work differently, only Mode 3 is guaranteed to work for everyone without flickering issues. This mode will reduce CPU/GPU usage, but will not increase GUI speed.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
! value !! result !! description&lt;br /&gt;
|-&lt;br /&gt;
! 0&lt;br /&gt;
| Off&lt;br /&gt;
| The entire viewport is always rendered.&lt;br /&gt;
|-&lt;br /&gt;
! 1&lt;br /&gt;
|Union&lt;br /&gt;
|All dirty regions are grouped into the smallest possible rectangle. This is typically the fastest mode for slower GPUs due to only making one pass.&lt;br /&gt;
|-&lt;br /&gt;
! 2&lt;br /&gt;
| {{nowrap|Cost reduction}}&lt;br /&gt;
| Each dirty region is presented separately, in as many passes as there are regions.&lt;br /&gt;
|-&lt;br /&gt;
! 3&lt;br /&gt;
| {{nowrap|Whole Screen}}&lt;br /&gt;
| The entire screen is rendered if there are any dirty regions. This is a safe default for drivers that clear buffer contents (manifests as blinking or vibrating images). &#039;&#039;&#039;Default&#039;&#039;&#039;&lt;br /&gt;
|}&amp;lt;section end=&amp;quot;algorithmdirtyregions&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;gui&amp;gt;    &lt;br /&gt;
  &amp;lt;algorithmdirtyregions&amp;gt;1&amp;lt;/algorithmdirtyregions&amp;gt;&lt;br /&gt;
&amp;lt;/gui&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== visualizedirtyregions ===&lt;br /&gt;
{{anchor|.3Cvisualizedirtyregions.3E}}&lt;br /&gt;
{{see also|HOW-TO:Modify dirty regions}}&lt;br /&gt;
&amp;lt;section begin=&amp;quot;visualizedirtyregions&amp;quot; /&amp;gt;Enable dirty-region visualization. Paints a rectangle over marked controls.&lt;br /&gt;
&lt;br /&gt;
* true: on&lt;br /&gt;
* false: off &#039;&#039;&#039;(Default)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{{note|This is only a development mode and isn&#039;t of use to normal users.}}&lt;br /&gt;
&amp;lt;section end=&amp;quot;visualizedirtyregions&amp;quot; /&amp;gt;&lt;br /&gt;
Example: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;gui&amp;gt;    &lt;br /&gt;
  &amp;lt;visualizedirtyregions&amp;gt;true&amp;lt;/visualizedirtyregions&amp;gt;&lt;br /&gt;
&amp;lt;/gui&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== smartredraw ===&lt;br /&gt;
&lt;br /&gt;
{{note|This is an experimental feature and you might face issues using it. So please be aware of that.}}&lt;br /&gt;
&lt;br /&gt;
This new feature was introduced in Kodi 18 and if enabled, the GUI process call (and therefore the render call) is only done if anything has changed. The result will be a faster GUI and less load if Kodi plays a video&lt;br /&gt;
&lt;br /&gt;
* true: on&lt;br /&gt;
* false: off &#039;&#039;&#039;(Default)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;gui&amp;gt;    &lt;br /&gt;
  &amp;lt;smartredraw&amp;gt;true&amp;lt;/smartredraw&amp;gt;&lt;br /&gt;
&amp;lt;/gui&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== showexitbutton ===&lt;br /&gt;
{{anchor|.3Cshowexitbutton.3E}}&lt;br /&gt;
Setting to hide the exit button, useful for people running appliance based setups where exit would only confuse/complicate the user. Modifiable via the advancedsettings.xml by setting showexitbutton to false, default is true (show)&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;showexitbutton&amp;gt;true&amp;lt;/showexitbutton&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== fullscreen ===&lt;br /&gt;
{{anchor|.3Cfullscreen.3E}}&lt;br /&gt;
Starts Kodi in full screen (check resolutions!).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;fullscreen&amp;gt;false&amp;lt;/fullscreen&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== splash ===&lt;br /&gt;
{{anchor|.3Csplash.3E}}&lt;br /&gt;
Set to false if you wish to disable the startup splash image. Defaults to true.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;splash&amp;gt;true&amp;lt;/splash&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== cputempcommand ===&lt;br /&gt;
{{anchor|.3Ccputempcommand.3E}}&lt;br /&gt;
Provide a shell command Kodi will use to get CPU temperature. It should print out only &amp;quot;[temp as integer] [scale as one of &amp;quot;CcFf&amp;quot;]&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
;&amp;lt;u&amp;gt;For Nvidia and Raspberry Pi&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;cputempcommand&amp;gt;sed -e &#039;s/\([0-9]*\)[0-9]\{3\}.*/\1 C/&#039; /sys/class/thermal/thermal_zone0/temp&amp;lt;/cputempcommand&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
or&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;cputempcommand&amp;gt;echo &amp;quot;$(sensors -u | tail -n64 | grep temp1_input | awk &#039;{print $2 }&#039; |awk &#039;{printf(&amp;quot;%d\n&amp;quot;,$1 + 0.5);}&#039;) C&amp;quot;&amp;lt;/cputempcommand&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
;&amp;lt;u&amp;gt;For ATI/AMD&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;cputempcommand&amp;gt;sensors|sed -ne &amp;quot;s/temp1: \+[-+]\([0-9]\+\).*/\1 C/p&amp;quot;&amp;lt;/cputempcommand&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== gputempcommand ===&lt;br /&gt;
{{anchor|.3Cgputempcommand.3E}}&lt;br /&gt;
Provide a shell command Kodi will use to get GPU temperature. It should print out only &amp;quot;[temp as integer] [scale as one of &amp;quot;CcFf&amp;quot;]&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
;&amp;lt;u&amp;gt;For Nvidia&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;gputempcommand&amp;gt;echo &amp;quot;$(nvidia-settings -tq gpuCoreTemp) C&amp;quot;&amp;lt;/gputempcommand&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
or&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;gputempcommand&amp;gt;echo &amp;quot;$(nvidia-smi -q -d TEMPERATURE | grep Gpu | cut -c35-36) C&amp;quot;&amp;lt;/gputempcommand&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
;&amp;lt;u&amp;gt;For ATI/AMD&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;gputempcommand&amp;gt;/usr/bin/aticonfig --od-gettemperature | grep Temperature | cut -f 2 -d &amp;quot;-&amp;quot; | cut -f 1 -d &amp;quot;.&amp;quot; | sed -e &amp;quot;s, ,,&amp;quot; | sed &#039;s/$/ C/&#039;&amp;lt;/gputempcommand&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;u&amp;gt;For Raspberry Pi&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;gputempcommand&amp;gt;/opt/vc/bin/vcgencmd measure_temp | sed -e &amp;quot;s/temp=//&amp;quot; -e &amp;quot;s/\..*&#039;/ /&amp;quot;&amp;lt;/gputempcommand&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== glrectanglehack ===&lt;br /&gt;
{{anchor|.3Cglrectanglehack.3E}}&lt;br /&gt;
Problems with ghosting or videos which are only played back in the left upper quarter? The following ATI hack may solve it.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;glrectanglehack&amp;gt;yes&amp;lt;/glrectanglehack&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== alwaysontop ===&lt;br /&gt;
{{anchor|.3Calwaysontop.3E}}&lt;br /&gt;
Added in XBMC v9.11 (Windows OS only). Keeps Kodi always on top when windowed.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;alwaysontop&amp;gt;yes&amp;lt;/alwaysontop&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There is also a fake fullscreen GUI option in Kodi&#039;s settings.&lt;br /&gt;
&lt;br /&gt;
== Removed tags ==&lt;br /&gt;
{{anchor|Recently removed tags}}&lt;br /&gt;
* {{anchor|.3Cthumbsize.3E}}&#039;&#039;&#039;&amp;lt;thumbsize&amp;gt;&#039;&#039;&#039; - replaced by &amp;lt;[[#imageres|imageres]]&amp;gt; in v12 Frodo&lt;br /&gt;
* {{anchor|.3Cfanartheight.3E}}&#039;&#039;&#039;&amp;lt;fanartheight&amp;gt;&#039;&#039;&#039; - replaced by &amp;lt;[[#fanartres|fanartres]]&amp;gt; in v12 Frodo&lt;br /&gt;
* {{anchor|.3Cdvdthumbs.3E}}&#039;&#039;&#039;&amp;lt;dvdthumbs&amp;gt;&#039;&#039;&#039; - removed in v12 Frodo&lt;br /&gt;
* {{anchor|.3Cbusydialogdelayms.3E}}&#039;&#039;&#039;&amp;lt;busydialogdelayms&amp;gt;&#039;&#039;&#039; - removed in v12 Frodo&lt;br /&gt;
* {{anchor|.3Cbginfoloadermaxthreads.3E}}&#039;&#039;&#039;&amp;lt;bginfoloadermaxthreads&amp;gt;&#039;&#039;&#039; - removed in v13 Gotham&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;showepginfoonselect&amp;gt;&#039;&#039;&#039; - replaced by a GUI setting in v13 Gotham&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;resample&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;forceDirectSound&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;audiophile&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;audiosinkbufferdurationmsec&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;allowtranscode44100&amp;gt;&#039;&#039;&#039;, and &#039;&#039;&#039;&amp;lt;streamsilence&amp;gt;&#039;&#039;&#039; - These were various sub-tags for &amp;lt;audio&amp;gt; that were removed in v13 Gotham and either replaced by GUI settings or were no longer needed.&lt;br /&gt;
* {{anchor|.3Cenableairtunesdebuglog.3E}}&#039;&#039;&#039;&amp;lt;enableairtunesdebuglog&amp;gt;&#039;&#039;&#039; - replaced by a GUI option in v14 Helix&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;videoDisableHi10pMultithreading&amp;gt;&#039;&#039;&#039; - renamed to &amp;lt;disableswmultithreading&amp;gt; in v14 Helix&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;hideallitems&amp;gt;&#039;&#039;&#039; - For both the &amp;lt;code&amp;gt;&amp;lt;videolibrary&amp;gt;&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;&amp;lt;musiclibrary&amp;gt;&amp;lt;/code&amp;gt; sections, this is replaced by a GUI option in v15 Isengard&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;SmallStepBackSeconds&amp;gt;&#039;&#039;&#039; - In v15 the &amp;lt;code&amp;gt;SmallStepBack&amp;lt;/code&amp;gt; [[Action_IDs]] has been replaced by &amp;lt;code&amp;gt;seek(-7)&amp;lt;/code&amp;gt; in default keymaps. See &#039;&#039;&#039;[[skip steps]]&#039;&#039;&#039; for details. When the original &amp;lt;code&amp;gt;SmallStepBack&amp;lt;/code&amp;gt; action ID is used it defaults to the first backwards [[skip steps|additive seeking value]].&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;timeseekforward&amp;gt;/&amp;lt;timeseekbackward&amp;gt;&#039;&#039;&#039; - In v15 these tags are replaced by GUI options via [[skip steps|additive seeking]], which is configured in the GUI. See &#039;&#039;&#039;[[skip steps]]&#039;&#039;&#039; for details.&lt;br /&gt;
* {{anchor|.3Ckaraoke.3E}}&#039;&#039;&#039;&amp;lt;karaoke&amp;gt;&#039;&#039;&#039; - In v16 all of the karaoke features in Kodi were removed.&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;useddsfanart&amp;gt;&#039;&#039;&#039; - removed in v17 Krypton.&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;cachemembuffersize&amp;gt;&#039;&#039;&#039; and &#039;&#039;&#039;&amp;lt;readbufferfactor&amp;gt;&#039;&#039;&#039; - In v17 &#039;&#039;&#039;&amp;lt;cachemembuffersize&amp;gt;&#039;&#039;&#039; is renamed to &#039;&#039;&#039;&amp;lt;memorysize&amp;gt;&#039;&#039;&#039; and &amp;lt;code&amp;gt;&amp;lt;readbufferfactor&amp;gt;&amp;lt;/code&amp;gt; is renamed to &amp;lt;code&amp;gt;&amp;lt;readfactor&amp;gt;&amp;lt;/code&amp;gt;. In addition, all three buffer related settings in &amp;lt;network&amp;gt; are moved out of &amp;lt;network&amp;gt; and into a new &amp;lt;cache&amp;gt; parent tag.&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;minvideocachelevel&amp;gt;&#039;&#039;&#039;, &#039;&#039;&#039;&amp;lt;minaudiocachelevel&amp;gt;&#039;&#039;&#039;, and &#039;&#039;&#039;&amp;lt;cacheindvdplayer&amp;gt;&#039;&#039;&#039; have been removed in v17.&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;useffmpegvda&amp;gt;&#039;&#039;&#039; - Tag was only used for development testing. Removed in v17.&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;nofliptimeout&amp;gt;&#039;&#039;&#039; - Removed in v17&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;blackbarcolour&amp;gt;&#039;&#039;&#039; - Removed in v17 (maybe?)&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;disableswmultithreading&amp;gt;&#039;&#039;&#039; - Removed in v17 (maybe?)&lt;br /&gt;
* {{anchor|.3Cmeasurerefreshrate.3E}}&#039;&#039;&#039;&amp;lt;measurerefreshrate&amp;gt;&#039;&#039;&#039; - Removed in v17 or v18?&lt;br /&gt;
* {{anchor|.3Cmyth.3E}}&#039;&#039;&#039;&amp;lt;myth&amp;gt;&#039;&#039;&#039; - Removed sometime between v16 to v18&lt;br /&gt;
* {{anchor|.3Ctuxbox.3E}}&#039;&#039;&#039;&amp;lt;tuxbox&amp;gt;&#039;&#039;&#039; - Removed&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;backgroundupdate&amp;gt;&#039;&#039;&#039; - Removed&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;hideemptyseries&amp;gt;&#039;&#039;&#039; - Replaced by a GUI option.&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;mymovies&amp;gt;&#039;&#039;&#039; and child tag &#039;&#039;&#039;&amp;lt;categoriestogenres&amp;gt;&#039;&#039;&#039; - Removed&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;albumssortbyartistthenyear&#039;&#039;&#039;&amp;gt; - Removed&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;albumformatright&amp;gt;&#039;&#039;&#039; - Removed&lt;br /&gt;
* {{anchor|.3Cremoterepeat.3E}}&#039;&#039;&#039;&amp;lt;remoterepeat&amp;gt;&#039;&#039;&#039; - Removed&lt;br /&gt;
* {{anchor|.3Callowd3d9ex.3E}}&#039;&#039;&#039;&amp;lt;allowd3d9ex&amp;gt;&#039;&#039;&#039; and {{anchor|.3Cforced3d9ex.3E}}&#039;&#039;&#039;&amp;lt;forced3d9ex&amp;gt;&#039;&#039;&#039; - Removed sometime between v16 to v18&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;lingertime&amp;gt;&#039;&#039;&#039; - Replaced by a GUI setting in v18&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;forcevaapienabled&amp;gt;&#039;&#039;&#039; - Removed in v18&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;promptfulltagscan&amp;gt;false&amp;lt;/promptfulltagscan&amp;gt;&#039;&#039;&#039; Removed in v18. Now automatically asked each time a scan is conducted.&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;controllerdeadzone&amp;gt;&#039;&#039;&#039; - Removed in v17&lt;br /&gt;
&lt;br /&gt;
== guisettings.xml settings ==&lt;br /&gt;
You can also define the settings normally defined in the GUI (and stored in guisettings.xml) in advancedsettings.xml.  Most guisettings.xml settings defined in advancedsettings.xml will override the guisettings.xml values, and the settings will be removed completely from the interface.&lt;br /&gt;
&lt;br /&gt;
The easiest way to include a guisettings.xml setting is to first change the setting in the interface to the value that you want, and then open the &#039;&#039;&#039;[[userdata]]/guisettings.xml&#039;&#039;&#039; file and find the XML entry that corresponds to that setting.&lt;br /&gt;
&lt;br /&gt;
Then just add that entry to the advancedsettings.xml file.&lt;br /&gt;
&lt;br /&gt;
For instance, to set the Font Character Set (found in the appearance setting, in the Look and Feel section), you&#039;d open up guisettings.xml and find:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=xml enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;lookandfeel&amp;gt;&lt;br /&gt;
    &amp;lt;charset&amp;gt;Hebrew (Windows)&amp;lt;/charset&amp;gt;&lt;br /&gt;
  &amp;lt;/lookandfeel&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Simply take that entry and place it in advancedsettings.xml.  The option in Kodi&#039;s interface for the character set will then no longer be visible, and Kodi will always use the Hebrew (Windows) character set.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Updated|17}}&lt;br /&gt;
{{DISPLAYTITLE:advancedsettings.xml}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Advanced topics]]&lt;br /&gt;
[[Category:Manual]]&lt;br /&gt;
[[Category:Settings]]&lt;/div&gt;</summary>
		<author><name>Black eagle</name></author>
	</entry>
</feed>