This section covers advanced topics for power users and those not afraid to break things.
- Advancedsettings.xml - The advancedsettings.xml file, which does not exist by default, can be created by a user in their userdata folder.
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 "advancedsettings.xml". These advanced settings can be used to tweak various things such as episode naming patterns, special network ports, special behaviors, and more.
- Autoexec.py - autoexec.py is an optional python script that users can create in their userdata folders that will be executed when Kodi starts up.
- Auto wake on lan - Starting in v13, Kodi can automatically issue a 'wake-on-lan' packet to MySQL or a file sharing server right before it needs to connect to it.
- Dirty regions - Dirty regions is an advanced setting and interface rendering method that can help speed up the GUI in Kodi and decrease the demand on your CPU and GPU. Dirty regions has no effect during video playback unless there are GUI elements (on screen buttons) visible. Using dirty regions requires Kodi v11 (Eden) or higher.
- Edit decision list - An edit decision list (EDL) contains information about edits that should be made to the video during playback. Edit decision list information is contained in a separate file to the video that is read by Kodi just before the video is played. Examples of use include can be to skip commercials, cut out content inappropriate for children, or skip over the half hour acid trip in 2001: A Space Odyssey .
- External players - While the built in video and audio players are capable, out of the box, to handle a huge variety of content, users might find themselves in need of using a different playback software but still using Kodi for scraping and organizing content. Reasons might include improved post-processing abilities, DRM restricted media that requires a specific player (such as encrypted Blu-ray discs), special player-specific features, etc. Kodi has a powerful tool to achieve this, the external player. The current method involves the configuration of a playercorefactory.xml file.
- Import-export library - Kodi has the option to Export and Import the library databases. These options may be used for a number of reasons including the following more popular ones:
- Perform database backup and recovery (This is not the only method for backup and recovery)
- Reorganization of data or eliminate database fragmentation (export, clean/remove database, re-import)
- Move data between Kodi databases on different platforms (eg Widows to Linux)
- Path substitution - Path substitutions are settings in advancedsettings.xml to force Kodi to use different 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. Path subs work for most file and folder paths. Path subs work across local and network paths, across different network protocols, and can even be used with some of the special protocol.
- Special protocol - The "Special Protocol" is Kodi's solution to platform dependent directories. Common directory names are assigned a special://[name] path which is passed around inside Kodi and then translated to the platform specific path before the operating system sees it. This helps keep most of the platform mess centralized in the code.
- userdata folder - The userdata folder is where all of your settings and customizations are stored.
- HOW-TO:Change data location for Android - HOW-TO:Change data location for Android
- HOW-TO:Install Kodi for Universal Windows Platform - HOW-TO:Install Kodi for Universal Windows Platform
- HOW-TO:Install languages offline - HOW-TO:Install languages offline
- HOW-TO:Modify automatic watch and resume points - HOW-TO:Modify automatic watch and resume points
- HOW-TO:Modify dirty regions - HOW-TO:Modify dirty regions
- HOW-TO:Modify the video cache - HOW-TO:Modify the video cache
- HOW-TO:Reduce disk space usage - HOW-TO:Reduce disk space usage
- HOW-TO:Remotely update library - HOW-TO:Remotely update library
- HOW-TO:Update SQL databases when files move - HOW-TO:Update SQL databases when files move