<?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=Menakite</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=Menakite"/>
	<link rel="alternate" type="text/html" href="https://kodi.wiki/view/Special:Contributions/Menakite"/>
	<updated>2026-06-19T10:26:22Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://kodi.wiki/index.php?title=Media_flags&amp;diff=103129</id>
		<title>Media flags</title>
		<link rel="alternate" type="text/html" href="https://kodi.wiki/index.php?title=Media_flags&amp;diff=103129"/>
		<updated>2015-11-12T18:42:30Z</updated>

		<summary type="html">&lt;p&gt;Menakite: erm no, don&amp;#039;t suggest to edit the db - doesn&amp;#039;t even make sense&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Media flags&#039;&#039;&#039; are icons in Kodi that displays the meta-information from the media file of a movie, TV show or music title.&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
&amp;lt;gallery widths=450px heights=250px&amp;gt;&lt;br /&gt;
File:Posterwrapmediaflags.png|Media Flags in the movie library, Confluence skin: 1080, H.264, dts, 5.1, 1.85 and Blu-Ray Disc&lt;br /&gt;
File:media_flags_music.png|Media Flags in music-section&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
{{-}}&lt;br /&gt;
&lt;br /&gt;
== Flag types and where they come from ==&lt;br /&gt;
Kodi tries to read the meta information from the media file after it&#039;s been added to the [[Library]]. This meta-information can be queried by the built-in [[InfoLabels]] in order to display it in the skin.&amp;lt;br /&amp;gt;&lt;br /&gt;
Example-code for a resolution-flag in [[Confluence]] (Kodi&#039;s default skin):&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot; enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;control type=&amp;quot;image&amp;quot;&amp;gt;&lt;br /&gt;
	            &amp;lt;description&amp;gt;Video rez Image&amp;lt;/description&amp;gt;&lt;br /&gt;
		    &amp;lt;width&amp;gt;55&amp;lt;/width&amp;gt;&lt;br /&gt;
		    &amp;lt;height&amp;gt;35&amp;lt;/height&amp;gt;&lt;br /&gt;
		    &amp;lt;aspectratio align=&amp;quot;right&amp;quot;&amp;gt;keep&amp;lt;/aspectratio&amp;gt;&lt;br /&gt;
		    &amp;lt;texture&amp;gt;$INFO[ListItem.VideoResolution,flagging/video/,.png]&amp;lt;/texture&amp;gt;&lt;br /&gt;
		&amp;lt;/control&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Video flags ===&lt;br /&gt;
The category video flags provides images for the following properties:&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Resolution&lt;br /&gt;
! Format&lt;br /&gt;
! Aspect ratio&lt;br /&gt;
|-&lt;br /&gt;
|[[File:480.png|50px]] [[File:1080.png|50px]] [[File:720.png|50px]] [[File:1080 n.png|50px]] [[File:480-1.png|50px]] &#039;&#039;&#039;...&#039;&#039;&#039;&lt;br /&gt;
|[[File:Divx.png|80px]] [[File:Xvid.png|80px]] [[File:H264.png|80px]] [[File:Bluray.png|80px]] [[File:Dvd.png|80px]] [[File:Avc1.png|80px]] &#039;&#039;&#039;...&#039;&#039;&#039;&lt;br /&gt;
|[[File:1.33.png|50px]] [[File:1.66.png|50px]] [[File:2.20.png|50px]] [[File:2.35.png|50px]] &#039;&#039;&#039;...&#039;&#039;&#039;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
What exact kind of video flag is provided depends on the skin you are using. The above are just a few examples types.&lt;br /&gt;
&lt;br /&gt;
=== Audio flags ===&lt;br /&gt;
The category audio flags provides images for the following properties: e.g.&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Channels&lt;br /&gt;
! Formats&lt;br /&gt;
|-&lt;br /&gt;
|[[File:1.png|50px]] [[File:2.png|50px]] [[File:6.png|50px]] [[File:8.png|50px]] [[File:10.png|50px]] &#039;&#039;&#039;...&#039;&#039;&#039;&lt;br /&gt;
|[[File:Aac.png|80px]] [[File:Ac3.png|80px]] [[File:Mp3.png|80px]] [[File:Flac.png|80px]] [[File:Dts.png|80px]] [[File:Dtshd_ma.png|80px]] [[File:Truehd.png|80px]] [[File:Pcm_bluray.png|80px]] [[File:Cdda.png|80px]] &#039;&#039;&#039;...&#039;&#039;&#039;&lt;br /&gt;
|}&lt;br /&gt;
What exact kind of audio flag is provided depends on the skin you are using. The above are just a few examples types.&lt;br /&gt;
&lt;br /&gt;
=== Media source ===&lt;br /&gt;
{{see also|Add-on:Confluence#Media flags|Naming video files}}&lt;br /&gt;
Most skins have flags for the video source of a media file. This information is obtained from the the filename or the directory name.&lt;br /&gt;
Media can be flagged with following media source flags in Confluence:&lt;br /&gt;
{{#lst:Add-on:Confluence|flags}}&lt;br /&gt;
&lt;br /&gt;
As an alternative you can set your folder structure to fit the keywords above:&lt;br /&gt;
* &#039;&#039;&#039;C:\Videos\DVDR\Movie1...&#039;&#039;&#039;    on Windows&lt;br /&gt;
* &#039;&#039;&#039;/mnt/dev1/videos/bluray/movie1&#039;&#039;&#039;    on Linux&lt;br /&gt;
&lt;br /&gt;
What exact kind of source flag is provided depends on the skin you are using and its naming convention.&lt;br /&gt;
&lt;br /&gt;
=== Custom flags ===&lt;br /&gt;
Most skins also have the ability to show media flags from [[InfoLabels]] that come not from the media file itself. These pieces of information are provided by the scraper that was used to scan the file to the library and can be:&amp;lt;br /&amp;gt;&lt;br /&gt;
* Movie Studio: WarnerBros., 20th Century Fox, Universal ...&lt;br /&gt;
* TV Channel/Network: HBO, ABC, FOX ...&lt;br /&gt;
* Rating: MPAA, FSK, UK-Rating ...&lt;br /&gt;
&lt;br /&gt;
=== Special notes ===&lt;br /&gt;
* Some file types (e.g. .iso) have to be played one time, before the media flags appear in the database&amp;lt;br /&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;
* [http://forum.kodi.tv/showthread.php?tid=184403&amp;amp;pid=1615348#pid1615348 Add custom flag] Forum post&lt;br /&gt;
&lt;br /&gt;
{{Isengard updated}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Skin development]]&lt;/div&gt;</summary>
		<author><name>Menakite</name></author>
	</entry>
	<entry>
		<id>https://kodi.wiki/index.php?title=Add-on_rules&amp;diff=87604</id>
		<title>Add-on rules</title>
		<link rel="alternate" type="text/html" href="https://kodi.wiki/index.php?title=Add-on_rules&amp;diff=87604"/>
		<updated>2015-03-05T19:13:04Z</updated>

		<summary type="html">&lt;p&gt;Menakite: /* General requirements */ +note for skins/Default - https://github.com/Razzeee/script.trakt/issues/152#issuecomment-77424059&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{mininav|[[Development]]|[[Add-on development]]}}&lt;br /&gt;
&lt;br /&gt;
=== Repository Submission Guidelines - Please Read Before Submitting Your Addon ===&lt;br /&gt;
&lt;br /&gt;
Because maintaining such a large repository is a large task, we have set some guidelines for inclusion. Please ensure that these guidelines are met before submitting request to be added.&lt;br /&gt;
In order to be considered for the official repository, the following guidelines must be met:&lt;br /&gt;
* All add-ons must be developed as described on the [[Add-on development]] page.&lt;br /&gt;
* You &#039;&#039;must&#039;&#039; include a license file (named LICENSE.txt). We recommend the [http://creativecommons.org/choose/non-web-popup?license_code=by-sa&amp;amp;jurisdiction=&amp;amp;version=3.0&amp;amp;lang=en CC-BY-SA 3.0] for skins and the [http://www.gnu.org/licenses/gpl-howto.html GPL v2+] for others, but most copy left licenses will suffice. Please investigate which license suits your needs and you fully understand the contents.&lt;br /&gt;
* All files must be free and legal to distribute.&lt;br /&gt;
* The add-on must not violate any known copyright laws - if in doubt, let us know and we&#039;ll look into it for you.&lt;br /&gt;
* All source files must be included. No pre-compiled files will be allowed.&lt;br /&gt;
* You acknowledge that you are the maintainer of your add-on.&lt;br /&gt;
* Team-Kodi reserves the right to update or remove it at any time as we deem necessary.&lt;br /&gt;
* If a new stable XBMC is going to be released no new submissions are accepted to the repository for the previous version. This will start from when the first [http://en.wikipedia.org/wiki/Release_candidate#Release_candidate release candidate (RC)] of the new version is released. Only fixes and updates will be accepted and processed for the previous version (e.g. if the current stable is 13.x, no updates are allowed for 11.x any more).  [[Submitting Add-ons#Allowed submissions|Allowed submissions]]&lt;br /&gt;
* Add-ons that contain advertising will not be allowed&lt;br /&gt;
* All service providing modules must be used by at least one other add-on in official repository.&lt;br /&gt;
&lt;br /&gt;
=== Updates ===&lt;br /&gt;
Keep in mind that add-ons in the official repository should be considered &#039;&#039;stable&#039;&#039;. This means that they should be well-tested before you submit them for inclusion.&lt;br /&gt;
Because they are for stable users, they should avoid being updated too often. Too often is of course subjective. If your add-on is in rapid development, and features are constantly being added, hold off until you have hit a good stopping point and &#039;&#039;tested&#039;&#039; the current version.&lt;br /&gt;
&lt;br /&gt;
This means that you should &#039;&#039;not&#039;&#039; submit a request every time you change your code. If you are submitting updates more than once per week something is wrong. Once or twice per month is probably a better goal, barring unforeseen conditions (like a content source changing its paths). With good reasons provided we will of course make exceptions as we strive to prove the best user experience.&lt;br /&gt;
&lt;br /&gt;
=== General requirements ===&lt;br /&gt;
Here&#039;s a list of what basic sanity checks are done by repository maintainer on each submission.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Basic file checks:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* all strings used by add-ons must be localized, no hard-coded language strings should ever be used&lt;br /&gt;
* all paths should be treated as case-sensitive, so that they work on all OSs and file systems.&lt;br /&gt;
* all paths and files should be lower-case due to the previous point&lt;br /&gt;
** exceptions are README, COPYING, LICENSE.txt that should be upper-case and the &amp;quot;Default&amp;quot; directory in &amp;lt;tt&amp;gt;resources/skins&amp;lt;/tt&amp;gt;, for add-ons that need it.&lt;br /&gt;
* exception are the translation Language folders with should be first letter capitalised.&lt;br /&gt;
* the following file-types are not allowed: .so .dll .pyo .exe .xbt .xpr Thumbs.db and so on&amp;lt;any binary files&amp;gt;&lt;br /&gt;
* all text files should use UNIX end-of-line&lt;br /&gt;
* all .xml files must pass xml validation&lt;br /&gt;
* all .xml files must have xml declaration as header&lt;br /&gt;
* all .xml/.txt must have unix style EOL&#039;s&lt;br /&gt;
* don&#039;t use a BOM at the start of your files&lt;br /&gt;
* file permissions: files should not be marked as executable&lt;br /&gt;
* filenames must have correct encoding (for skins: check your studio logos for corrupt filenames)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Things that must be included:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*  [[Add-on structure#addon.xml|addon.xml]] must contain correct and valid info / version&lt;br /&gt;
*  [[Add-on structure#icon.png|icon.png]] must be present (256x256)&lt;br /&gt;
*  [[Add-on structure#fanart.jpg|fanart.jpg]] must be present (1280x720 or 1920x1080)&lt;br /&gt;
*  [[Add-on structure#LICENSE.txt|LICENCE.txt]] must be present&lt;br /&gt;
*  [[Add-on structure#changelog.txt|changelog.txt]] must be present&lt;br /&gt;
*: start with last changes at top of the file&lt;br /&gt;
{{See also|Add-on_structure}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Things that can&#039;t be included:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* no .xbt files (these will be generated by our repository)&lt;br /&gt;
* no other add-ons included  (skinners: if you need a script, submit it separately and depend on it)&lt;br /&gt;
* don&#039;t include unneeded files (.pdf, .doc, thumbs.db, etc...)&lt;br /&gt;
* no licensed fonts / background images / anything&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Requirements for skins ====&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Basic checks:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* The file size must be sane. There is no hard limit, but a 100mb skin is pushing it.&lt;br /&gt;
* No mods. Mods are great, and pop up frequently in the forums. But they are only confusing to non-forum-goers. This can be vague, each is evaluated on its own merit. By naming your &amp;quot;mod&amp;quot; different and make it substantial different enough, we will of course take it in consideration.&lt;br /&gt;
* Due to a bug in TexturePacker, all graphics files should have a resolution of at least 4x4.&lt;br /&gt;
* themes must be in a subfolder of the themes/ folder in the skin root (eg. skin.foo/themes/blue/&amp;lt;files&amp;gt;). The .xbt file will be created by our repo backend.&lt;br /&gt;
* If you want to have some images outside of Textures.xbt, then make sure you place those images outside of the media/ folder and reference them using special://skin/backdrops/* or similar.  This is most useful for backgrounds - it keeps the size of the packed textures down.  Any images you have in the media/ folder will be placed in Textures.xbt in the official repository.&lt;br /&gt;
* The amount of extra add-on dependencies must be kept to a bare minimum. Only add dependencies that have direct interactions with the skin.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Things that must be included:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* _screenshots folder must be present, containing max. 10 .jpg screenshots (1280x720) with a reasonable file size.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Code checks:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* all labels must be localized&lt;br /&gt;
* code should be case-sensitive&lt;br /&gt;
* skins should not create warning/errors in the logfile, this can be a lot of things:&lt;br /&gt;
:* invalid includes&lt;br /&gt;
:* undefined actions&lt;br /&gt;
:* unable to evaluate condition&lt;br /&gt;
:* undefined vars&lt;br /&gt;
:* can&#039;t focus &#039;id&#039;&lt;br /&gt;
&lt;br /&gt;
{{Note|This of course also applies to script add-ons that use skin files}}&lt;br /&gt;
&lt;br /&gt;
==== Optional support ====&lt;br /&gt;
&lt;br /&gt;
This is optional and should not block inclusion in official repo.&lt;br /&gt;
&lt;br /&gt;
* mouse support&lt;br /&gt;
* touchscreen support&lt;br /&gt;
* karaoke dialogs&lt;br /&gt;
* peripheral dialogs&lt;br /&gt;
* pvr support&lt;br /&gt;
&lt;br /&gt;
=== Requirements for scripts and plugins ===&lt;br /&gt;
&lt;br /&gt;
* all special:// paths should be translated using xbmc.translatePath(&amp;quot;special://foo/bar&amp;quot;)&lt;br /&gt;
* direct access to the XBMC database is &#039;&#039;&#039;not&#039;&#039;&#039; allowed. You must use [[JSON RPC]] for this.&lt;br /&gt;
* directly using analytics (Google Analytics for example) from within add-ons is not allowed. This should be handled server side by using user-agent.&lt;br /&gt;
* add-ons should store all their data in their own subfolder inside the addon_data directory. Access (read/write/delete) to any other files in settings folders is not allowed. Access (read/write/delete) to other all other files/directories must be opt-in by the user, and be clear for the user to understand what is being accessed. &#039;&#039;Exceptions to this rule may be granted in specific cases only. Please contact Team XBMC&#039;s add-on repository maintainers via the add-on mailing list if your add-on needs access to such files.&#039;&#039;&lt;br /&gt;
** xbmc.translatePath(_xbmcaddon.Addon().getAddonInfo(&#039;path&#039;)).decode(&#039;utf-8&#039;) should be used for files included with the add-on&lt;br /&gt;
** xbmc.translatePath(_xbmcaddon.Addon().getAddonInfo(&#039;profile&#039;)).decode(&#039;utf-8&#039;) should be used for storing add-on related files&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Things that shouldn&#039;t be included:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* _screenshots folder (only in remote cases it could have some added value)&lt;br /&gt;
&lt;br /&gt;
=== Requirements for scrapers ===&lt;br /&gt;
* scraper must return the following minimum information: movie title, year, plot, cast, poster, fanart&lt;br /&gt;
* use &#039;chain function&#039; for calling functions in common scrapers&lt;br /&gt;
* remove the deprecated XML tags from the scraper header in case you use a scraper editor made for pre-Dharma versions of XBMC&lt;br /&gt;
&lt;br /&gt;
[[Category:Add-on development]]&lt;br /&gt;
[[Category:Team Kodi specific notes]]&lt;/div&gt;</summary>
		<author><name>Menakite</name></author>
	</entry>
	<entry>
		<id>https://kodi.wiki/index.php?title=Texture_Cache_Maintenance_utility&amp;diff=85037</id>
		<title>Texture Cache Maintenance utility</title>
		<link rel="alternate" type="text/html" href="https://kodi.wiki/index.php?title=Texture_Cache_Maintenance_utility&amp;diff=85037"/>
		<updated>2015-02-11T21:21:33Z</updated>

		<summary type="html">&lt;p&gt;Menakite: follow redirects with curl&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{mininav| [[Supplemental tools]] }}&lt;br /&gt;
{{forum link2|1=For the most up to date information and help, see &#039;&#039;[http://forum.xbmc.org/showthread.php?tid=158373 Texture Cache Maintenance utility]&#039;&#039; on the Kodi forums.}}&lt;br /&gt;
&amp;lt;section begin=&amp;quot;intro&amp;quot; /&amp;gt;Texture Cache Maintenance utility is a python script created by MillhouseVH, that can do a number of artwork related maintenance on the XBMC library. The script can be used to pre-generate thumbnails, clean up old thumbnail files, find corrupted files, and much more. The script can work on any OS that can run Python 2.6 or higher.&amp;lt;section end=&amp;quot;intro&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== From the author ==&lt;br /&gt;
It&#039;s annoying having to delete the entire Textures13.db+Thumbnails folder to try and correct scraping errors and/or corrupted images that just never go away, so I&#039;ve written a very trivial Python script that can be used to interrogate the texture cache database, and can also be used to remove - with absolute precision - those database rows and cached files that relate to problematic artwork.&lt;br /&gt;
&lt;br /&gt;
The script has been tested with local installations of XBMC Frodo on OpenELEC R-Pi and Ubuntu 12.10, and also Windows with Python 2.7.3 running against a remote Frodo installation of XBMC. A separate properties file can be used to specify non-default configurations (see property file details at the end of this post).&lt;br /&gt;
&lt;br /&gt;
This is not an addon, and it requires that the webserver is enabled in XBMC on port 8080 (unless another port is specified in the properties file). It also assumes you are comfortable working at the command line (ssh in Linux, a large CMD window may also work OK for Windows users).&lt;br /&gt;
&lt;br /&gt;
== Summary of features ==&lt;br /&gt;
&lt;br /&gt;
* [c, C] Automatically re-cache missing artwork, with option to force download of existing artwork (remove first, then re-cache). Can use multiple threads (default is 2)&lt;br /&gt;
* [nc] Identify those items that require caching (and would be cached by &#039;&#039;&#039;c&#039;&#039;&#039; option)&lt;br /&gt;
* [lc, lnc] Same as &#039;&#039;&#039;c&#039;&#039;&#039; and &#039;&#039;&#039;nc&#039;&#039;&#039;, but only considers those media (movies, tvshows/episodes) added since the modification timestamp of the file identified by the property &#039;&#039;lastrunfile&#039;&#039;&lt;br /&gt;
* [p, P] Prune texture cache by removing accumulated cruft such as image previews, previously deleted movies/tv shows/music and whose artwork remains in the texture cache even after cleaning the database. Essentially, remove any cached file that is no longer associated with an entry in the media library, or an addon.&lt;br /&gt;
* [s, S] Search texture cache for specific files and view database content, can help explain reason for incorrect artwork. &#039;&#039;&#039;S&#039;&#039;&#039; will return only those database results for items that no longer exist in the filesystem.&lt;br /&gt;
* [x, X] Extract rows from texture cache database, with optional SQL filter. &#039;&#039;&#039;X&#039;&#039;&#039; will return only those database results for items that no longer exist in the filesystem.&lt;br /&gt;
* [d] Delete specific database rows and corresponding files from the texture cache using database row identifier (see &#039;&#039;&#039;s&#039;&#039;&#039;/&#039;&#039;&#039;S&#039;&#039;&#039;)&lt;br /&gt;
* [r, R] Reverse query cache, identifying any &amp;quot;orphaned&amp;quot; files no longer referenced by texture cache database, with option to auto-delete files&lt;br /&gt;
* [j, J, jd, Jd] Query media library using JSON API, and export content as JSON (and suitable for further external processing)&lt;br /&gt;
* [qa] Perform QA check on media library recently added items, identifying missing properties (eg. plot, mpaa certificate, artwork etc.). Default QA period is previous 30 days. Add property &#039;&#039;qa.file = yes&#039;&#039; to verify file exists during QA. Add additional QA fields using &#039;&#039;qa.art.*&#039;&#039;, &#039;&#039;qa.blank.*&#039;&#039; and &#039;&#039;qa.zero.*&#039;&#039; properties.&lt;br /&gt;
* [qax] Like the &#039;&#039;&#039;qa&#039;&#039;&#039; option, but performs a remove and then rescan of any media found to fail the QA tests&lt;br /&gt;
* [ascan, vscan] Initiate audio/video library scan, either entire library or a specific path (see &#039;&#039;&#039;sources&#039;&#039;&#039;). The exit status is the number of items added during each scan, ie. 0 or +n.&lt;br /&gt;
* [watched] Backup and restore movie and tvshow watched lists to a text file. Watched list will be restored keeping more recent playcount, lastplayed and resume points unless property &#039;&#039;&#039;watched.overwrite=yes&#039;&#039;&#039; is specified, in which case the watched list will be restored exactly as per the backup.&lt;br /&gt;
* [missing] Locate media files missing from the specified media library and source label, eg. &#039;&#039;missing movies &amp;quot;My Movies&amp;quot;&#039;&#039;&lt;br /&gt;
* [aclean, vclean] Clean audio/video library&lt;br /&gt;
* [directory] Obtain directory listing for a specific path (see &#039;&#039;&#039;sources&#039;&#039;&#039;)&lt;br /&gt;
* [sources] List of sources for a specific media class (video, music, pictures, files, programs)&lt;br /&gt;
* [status] Display status of client - ScreenSaver active, IsIdle (default period 600 seconds, or user specified) and active Player type (audio or video), plus title of any media currently being played.&lt;br /&gt;
* [monitor] Display client event notifications as they occur&lt;br /&gt;
* [power] Set power state of client - suspend, hibernate, shutdown or reboot&lt;br /&gt;
* [wake] Use Wake Over LAN to wake a suspended/hibernating remote client. Specify the MAC address of the remote client in the &#039;&#039;&#039;network.mac&#039;&#039;&#039; property (ie. &#039;&#039;&#039;network.mac=xx:xx:xx:xx:xx:xx&#039;&#039;&#039;). When the client is no longer required, suspend or hibernate it with the relevant &#039;&#039;&#039;power&#039;&#039;&#039; option&lt;br /&gt;
* [exec, execw] Execute the specified addon, with optional parameters. eg. &#039;&#039;exec script.artwork.downloader silent=true mediatype=tvshow&#039;&#039;. Use execw to wait, but this rarely has any effect (possibly not implemented by JSON?)&lt;br /&gt;
&lt;br /&gt;
== Installation instructions ==&lt;br /&gt;
&lt;br /&gt;
Download the single Python file required from [https://github.com/MilhouseVH/texturecache.py github]. A default properties file is available on github, rename this to texturecache.cfg in order to use it.&lt;br /&gt;
&lt;br /&gt;
To download the script at the command line:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
wget https://raw.github.com/MilhouseVH/texturecache.py/master/texturecache.py&lt;br /&gt;
chmod +x ./texturecache.py&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you get a certificate error, try adding &amp;quot;--no-check-certificate&amp;quot; to the wget command line.&lt;br /&gt;
&lt;br /&gt;
and for anyone on OpenELEC which has a pretty basic wget that doesn&#039;t support https downloads, use curl instead:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
curl -L https://raw.github.com/MilhouseVH/texturecache.py/master/texturecache.py -o texturecache.py&lt;br /&gt;
chmod +x ./texturecache.py&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ATV2 (iOS) users&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Python 2.6+ is required to run this script, and although Python can be installed on iOS using &amp;quot;apt-get install python&amp;quot;, the version installed (typically v2.5.1 - check with &amp;quot;python --version&amp;quot;) is very old and lacks language features required by the script. It is possible to install a more recent [http://code.google.com/p/yangapp/downloads/detail?name=python_2.7.3-3_iphoneos-arm.deb&amp;amp;can=2&amp;amp;q= Python 2.7.3 package] as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ssh root@YOUR.ATV2.IP.ADDRESS&lt;br /&gt;
rm -f python*.deb&lt;br /&gt;
wget http://yangapp.googlecode.com/files/python_2.7.3-3_iphoneos-arm.deb&lt;br /&gt;
dpkg -i python*.deb&lt;br /&gt;
rm python*.deb&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Example usage ==&lt;br /&gt;
&lt;br /&gt;
Let&#039;s say the poster image for my &amp;quot;Dr. No&amp;quot; movie is corrupted, and I want to delete it so that XBMC will automatically re-cache it (hopefully correctly) next time it is displayed:&lt;br /&gt;
&lt;br /&gt;
1) Execute: &#039;&#039;&#039;./texturecache.py s &amp;quot;Dr. No&amp;quot;&#039;&#039;&#039; to search for my Dr. No related artwork&lt;br /&gt;
&lt;br /&gt;
2) Several rows should be returned, relating to different cached artwork - one row will be for the poster, the other fanart, and there may also be rows for other image types too (logo, clearart etc.). This is what I get:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
000226|5/596edd13.jpg|0720|1280|0011|2013-03-05 02:07:40|2013-03-04 21:27:37|nfs://192.168.0.3/mnt/share/media/Video/Movies/James Bond/Dr. No (1962)[DVDRip]-fanart.jpg&lt;br /&gt;
000227|6/6f3d0d94.jpg|0512|0364|0003|2013-03-05 02:07:40|2013-03-04 22:26:38|nfs://192.168.0.3/mnt/share/media/Video/Movies/James Bond/Dr. No (1962)[DVDRip].tbn&lt;br /&gt;
Matching row ids: 226 227&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3) Since I want to remove only the poster (.tbn) I can execute &#039;&#039;&#039;./texturecache.py d 227&#039;&#039;&#039; and both the database row and cached poster image will be deleted. If I wanted to remove both images, I would simply execute &#039;&#039;&#039;./texturecache.py d 226 227&#039;&#039;&#039; and the two rows and their corresponding cached images will be removed.&lt;br /&gt;
&lt;br /&gt;
Alternatively, &#039;&#039;&#039;./texturecache.py C movies &amp;quot;Dr. No&amp;quot;&#039;&#039;&#039; would achieve the same result including re-caching the deleted items.&lt;br /&gt;
&lt;br /&gt;
== Format of &amp;quot;dumped&amp;quot; records ==&lt;br /&gt;
&lt;br /&gt;
When displaying rows from the database, the following fields (columns) are shown:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
rowid, cachedurl, height, width, usecount, lastusetime, lasthashcheck, url&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Additional usage examples ==&lt;br /&gt;
&lt;br /&gt;
To view your most recently accessed artwork:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
./texturecache.py x | sort -t&amp;quot;|&amp;quot; -k6&lt;br /&gt;
-- or --&lt;br /&gt;
./texturecache.py x &amp;quot;order by lastusetime asc&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
or your top 10 accessed artwork...&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
./texturecache.py x | sort -t&amp;quot;|&amp;quot; -k5r | head -10&lt;br /&gt;
-- or --&lt;br /&gt;
./texturecache.py x &amp;quot;order by usecount desc&amp;quot; 2&amp;gt;/dev/null | head -10&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Use texturecache.py to identify artwork for deletion, then cutting and pasting the matched ids into the &amp;quot;d&amp;quot; option or via a script:&lt;br /&gt;
&lt;br /&gt;
For example, to delete those small remote thumbnails you might have viewed when downloading artwork (and which still clutter up your cache):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
./texturecache.py s &amp;quot;size=thumb&amp;quot;&lt;br /&gt;
&amp;lt;then cut &amp;amp; paste the ids as an argument to ./texturecache.py d&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and the same, but automatically:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
IDS=$(./texturecache.py s &amp;quot;size=thumb&amp;quot; 2&amp;gt;&amp;amp;1 1&amp;gt;/dev/null | cut -b19-)&lt;br /&gt;
[ -n &amp;quot;$IDS&amp;quot; ] &amp;amp;&amp;amp; ./texturecache.py d $IDS&lt;br /&gt;
-- or --&lt;br /&gt;
./texturecache.py P&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Delete any artwork that has not been accessed since a particular date:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
./texturecache.py x &amp;quot;where lastusetime &amp;lt;= &#039;2013-03-05&#039;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
or hasn&#039;t been accessed more than once:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
./texturecache.py x &amp;quot;where usecount &amp;lt;= 1&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Query the media library returning JSON results:&lt;br /&gt;
&lt;br /&gt;
First, just the default fields for a particular class (movies), filtering for a specific item (Avatar):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
./texturecache.py j movies &amp;quot;Avatar&amp;quot;&lt;br /&gt;
[&lt;br /&gt;
  {&lt;br /&gt;
    &amp;quot;movieid&amp;quot;: 22,&lt;br /&gt;
    &amp;quot;title&amp;quot;: &amp;quot;Avatar&amp;quot;,&lt;br /&gt;
    &amp;quot;art&amp;quot;: {&lt;br /&gt;
      &amp;quot;fanart&amp;quot;: &amp;quot;image://nfs%3a%2f%2f192.168.0.3%2fmnt%2fshare%2fmedia%2fVideo%2fMovies%2fAvatar%20(2009)%5bDVDRip%5d-fanart.jpg/&amp;quot;,&lt;br /&gt;
      &amp;quot;discart&amp;quot;: &amp;quot;image://http%3a%2f%2fassets.fanart.tv%2ffanart%2fmovies%2f19995%2fmoviedisc%2favatar-4eea31049147b.png/&amp;quot;,&lt;br /&gt;
      &amp;quot;poster&amp;quot;: &amp;quot;image://nfs%3a%2f%2f192.168.0.3%2fmnt%2fshare%2fmedia%2fVideo%2fMovies%2fAvatar%20(2009)%5bDVDRip%5d.tbn/&amp;quot;,&lt;br /&gt;
      &amp;quot;clearart&amp;quot;: &amp;quot;image://http%3a%2f%2fassets.fanart.tv%2ffanart%2fmovies%2f19995%2fmovieart%2favatar-4f803992128b8.png/&amp;quot;,&lt;br /&gt;
      &amp;quot;clearlogo&amp;quot;: &amp;quot;image://http%3a%2f%2fassets.fanart.tv%2ffanart%2fmovies%2f19995%2fhdmovielogo%2favatar-503e0262ba196.png/&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;label&amp;quot;: &amp;quot;Avatar&amp;quot;&lt;br /&gt;
  }&lt;br /&gt;
]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
With &amp;quot;extrajson.movies  = trailer, streamdetails, file&amp;quot; in the properties file, the same query but returning the extra fields too:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
./texturecache.py J movies &amp;quot;Avatar&amp;quot;&lt;br /&gt;
[&lt;br /&gt;
  {&lt;br /&gt;
    &amp;quot;movieid&amp;quot;: 22,&lt;br /&gt;
    &amp;quot;title&amp;quot;: &amp;quot;Avatar&amp;quot;,&lt;br /&gt;
    &amp;quot;label&amp;quot;: &amp;quot;Avatar&amp;quot;,&lt;br /&gt;
    &amp;quot;file&amp;quot;: &amp;quot;nfs://192.168.0.3/mnt/share/media/Video/Movies/Avatar (2009)[DVDRip].m4v&amp;quot;,&lt;br /&gt;
    &amp;quot;art&amp;quot;: {&lt;br /&gt;
      &amp;quot;fanart&amp;quot;: &amp;quot;image://nfs%3a%2f%2f192.168.0.3%2fmnt%2fshare%2fmedia%2fVideo%2fMovies%2fAvatar%20(2009)%5bDVDRip%5d-fanart.jpg/&amp;quot;,&lt;br /&gt;
      &amp;quot;discart&amp;quot;: &amp;quot;image://http%3a%2f%2fassets.fanart.tv%2ffanart%2fmovies%2f19995%2fmoviedisc%2favatar-4eea31049147b.png/&amp;quot;,&lt;br /&gt;
      &amp;quot;poster&amp;quot;: &amp;quot;image://nfs%3a%2f%2f192.168.0.3%2fmnt%2fshare%2fmedia%2fVideo%2fMovies%2fAvatar%20(2009)%5bDVDRip%5d.tbn/&amp;quot;,&lt;br /&gt;
      &amp;quot;clearart&amp;quot;: &amp;quot;image://http%3a%2f%2fassets.fanart.tv%2ffanart%2fmovies%2f19995%2fmovieart%2favatar-4f803992128b8.png/&amp;quot;,&lt;br /&gt;
      &amp;quot;clearlogo&amp;quot;: &amp;quot;image://http%3a%2f%2fassets.fanart.tv%2ffanart%2fmovies%2f19995%2fhdmovielogo%2favatar-503e0262ba196.png/&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;trailer&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;streamdetails&amp;quot;: {&lt;br /&gt;
      &amp;quot;video&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
          &amp;quot;duration&amp;quot;: 9305,&lt;br /&gt;
          &amp;quot;width&amp;quot;: 720,&lt;br /&gt;
          &amp;quot;codec&amp;quot;: &amp;quot;avc1&amp;quot;,&lt;br /&gt;
          &amp;quot;aspect&amp;quot;: 1.7779999971389771,&lt;br /&gt;
          &amp;quot;height&amp;quot;: 576&lt;br /&gt;
        }&lt;br /&gt;
      ],&lt;br /&gt;
      &amp;quot;audio&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
          &amp;quot;channels&amp;quot;: 6,&lt;br /&gt;
          &amp;quot;codec&amp;quot;: &amp;quot;aac&amp;quot;,&lt;br /&gt;
          &amp;quot;language&amp;quot;: &amp;quot;eng&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
      ],&lt;br /&gt;
      &amp;quot;subtitle&amp;quot;: []&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Optional Properties File ==&lt;br /&gt;
&lt;br /&gt;
By default the script will run fine on distributions where the .xbmc/userdata folder is within the users Home folder (ie. userdata=~/.xbmc/userdata). To override this default, specify a properties file with a different value for the userdata property.&lt;br /&gt;
&lt;br /&gt;
The properties file should be called &#039;&#039;&#039;texturecache.cfg&#039;&#039;&#039;, and be in the same directory as the texturecache.py script. What follows is an example properties file with the default values shown:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sep = |&lt;br /&gt;
userdata = ~/.xbmc/userdata&lt;br /&gt;
dbfile = Database/Textures13.db&lt;br /&gt;
thumbnails = Thumbnails&lt;br /&gt;
xbmc.host = localhost&lt;br /&gt;
webserver.port = 8080&lt;br /&gt;
webserver.username =&lt;br /&gt;
webserver.password =&lt;br /&gt;
rpc.port = 9090&lt;br /&gt;
download.threads = 2&lt;br /&gt;
extrajson.albums =&lt;br /&gt;
extrajson.artists =&lt;br /&gt;
extrajson.songs =&lt;br /&gt;
extrajson.movies =&lt;br /&gt;
extrajson.sets =&lt;br /&gt;
extrajson.tvshows.tvshow =&lt;br /&gt;
extrajson.tvshows.season =&lt;br /&gt;
extrajson.tvshows.episode =&lt;br /&gt;
qaperiod = 30&lt;br /&gt;
qa.file = no&lt;br /&gt;
qa.fail.urls = image://video, image://music&lt;br /&gt;
qa.warn.urls =&lt;br /&gt;
cache.castthumb = no&lt;br /&gt;
cache.hideallitems = no&lt;br /&gt;
cache.ignore.types = image://video&lt;br /&gt;
logfile =&lt;br /&gt;
logfile.verbose = no&lt;br /&gt;
checkupdate = yes&lt;br /&gt;
lastrunfile =&lt;br /&gt;
orphan.limit.check = yes&lt;br /&gt;
nonmedia.filetypes =&lt;br /&gt;
watched.overwrite = no&lt;br /&gt;
network.mac =&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The dbfile and thumbbnails properties represent folders that are both relative to the userdata property.&lt;br /&gt;
&lt;br /&gt;
Specify webserver.username and webserver.password if you require webserver authentication.&lt;br /&gt;
&lt;br /&gt;
extrajson.* properties allow the specification of additional JSON audio/video fields to be returned by the J query option.&lt;br /&gt;
&lt;br /&gt;
Cast thumbnails will not be updated by default, so specify cache.castthumb = yes if you require cast artwork to be re-cached.&lt;br /&gt;
&lt;br /&gt;
Ignore specific URLs when pre-loading the cache (c/C options), by specifying comma delimited regex patterns for the cache.ignore.types property. Default value is image://video. Set to None to process all URLs. Any matching URL will not be cached (c/C), nor will it be deleted when forcing a reload (option C).&lt;br /&gt;
&lt;br /&gt;
Specify a filename for the logfile property, to log detailed processing information.&lt;br /&gt;
== Notes ==&lt;br /&gt;
See [https://github.com/MilhouseVH/texturecache.py github] for full changelog and further details in [https://github.com/MilhouseVH/texturecache.py/blob/master/README.md README].&lt;br /&gt;
&lt;br /&gt;
Run the script without arguments for usage and current configuration information.&lt;br /&gt;
&lt;br /&gt;
[[Category:Supplemental tools]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Mac OS X]]&lt;br /&gt;
[[Category:IOS]]&lt;/div&gt;</summary>
		<author><name>Menakite</name></author>
	</entry>
	<entry>
		<id>https://kodi.wiki/index.php?title=XBian&amp;diff=84782</id>
		<title>XBian</title>
		<link rel="alternate" type="text/html" href="https://kodi.wiki/index.php?title=XBian&amp;diff=84782"/>
		<updated>2015-02-07T17:23:05Z</updated>

		<summary type="html">&lt;p&gt;Menakite: fix links&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;section begin=&amp;quot;intro&amp;quot; /&amp;gt;XBian is a small, fast and lightweight media center distro for the [[Raspberry Pi]], based on a minimal Raspbian image. Their slogan is “XBMC on Raspberry Pi, the bleeding edge” as their main focus is delivering the fastest XBMC solution for the Raspberry Pi. It has a fast userinterface and is often even able to playback DTS encoded audio without any problems.&amp;lt;section end=&amp;quot;intro&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
More about [http://xbian.org XBian] can be found in their [http://xbian.org/community/what-is-xbian/ About us] and the [http://xbian.org/why-xbian/ Why XBian?]-page&lt;br /&gt;
&lt;br /&gt;
== Main features ==&lt;br /&gt;
* Fits on 1GB SD cards&lt;br /&gt;
* Very smooth UI&lt;br /&gt;
* Low RAM usage and low CPU usage&lt;br /&gt;
* Auto-mount USB&lt;br /&gt;
* Toggle between 1080p,720p,540p &amp;amp; 480p GUI&lt;br /&gt;
* Support for AFP, NFS, AirPlay, CEC, Lirc, PVR&lt;br /&gt;
* 1080p/DTS smooth playback &lt;br /&gt;
* Easy configuration&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
XBian can be installed using the Windows Installer or manually ([http://xbian.org/getting-started/ instructions here]). For existing installation it provides updates over the internet, so users can upgrade their installation.&lt;br /&gt;
&lt;br /&gt;
* [http://xbian.org/getxbian/ Download page with Installers]&lt;br /&gt;
* [http://xbian.org/getting-started/ Getting Started]&lt;br /&gt;
&lt;br /&gt;
== Using Xbian ==&lt;br /&gt;
* [http://xbian.org/getting-started/ Getting Started]&lt;br /&gt;
* [http://xbian.org/faq/ FAQ]&lt;br /&gt;
* [http://forum.xbian.org Forum]&lt;br /&gt;
&lt;br /&gt;
== XBian Wiki ==&lt;br /&gt;
* [http://wiki.xbian.org/ XBian Wiki for Users]&lt;br /&gt;
* [https://github.com/xbianonpi/xbian/wiki XBian Wiki for Developers]&lt;br /&gt;
&lt;br /&gt;
The Wikis will get better and better by time. It&#039;s just opened.&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
* [[Raspberry Pi]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Raspberry Pi]]&lt;br /&gt;
[[Category:Embedded distro]]&lt;/div&gt;</summary>
		<author><name>Menakite</name></author>
	</entry>
	<entry>
		<id>https://kodi.wiki/index.php?title=Raspberry_Pi&amp;diff=84781</id>
		<title>Raspberry Pi</title>
		<link rel="alternate" type="text/html" href="https://kodi.wiki/index.php?title=Raspberry_Pi&amp;diff=84781"/>
		<updated>2015-02-07T17:15:55Z</updated>

		<summary type="html">&lt;p&gt;Menakite: /* Installing Kodi */ fix links to xbian.org&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{mininav|[[Devices]]}}&lt;br /&gt;
&lt;br /&gt;
{{divbox|orange|| {{center| {{larger| Yes, Kodi works on the &#039;&#039;&#039;[[Raspberry Pi 2]]!&#039;&#039;&#039; }} }} }}&lt;br /&gt;
&lt;br /&gt;
[[File:Single-board computer Raspberry Pi.jpg|320px|right]]&lt;br /&gt;
&lt;br /&gt;
{{forum link2|1=For more info and help, check out the [http://forum.xbmc.org/forumdisplay.php?fid=166 XBMC Raspberry Pi support forum]}}&lt;br /&gt;
&amp;lt;section begin=&amp;quot;intro&amp;quot; /&amp;gt;The &#039;&#039;&#039;Raspberry Pi&#039;&#039;&#039; is an ARM powered, credit card sized computer developed in the UK by the Raspberry Pi Foundation for educational and hobbyist purposes. The low power computer is mass produced at very low prices and the high number of units sold gives it massive community support. As an XBMC HTPC, the Pi supports full 1080P video playback, supports most major codecs, most if not all XBMC add-ons, and a reasonably responsive GUI.&amp;lt;section end=&amp;quot;intro&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Installing Kodi ==&lt;br /&gt;
{{Main|HOW-TO:Install Kodi on Raspberry Pi}}&lt;br /&gt;
&amp;lt;section begin=&amp;quot;install&amp;quot;/&amp;gt;The easiest way to install Kodi on an R-Pi is to use one of these pre-made OS/Kodi packages:&lt;br /&gt;
&amp;lt;div class=&amp;quot;plainlinks&amp;quot;&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;[[OpenELEC]] -&#039;&#039;&#039; [http://wiki.openelec.tv/index.php?title=Installing_OpenELEC_on_Raspberry_Pi Installing] • [http://wiki.openelec.tv/index.php?title=Raspberry_Pi_FAQ FAQ] • [http://openelec.tv/forum/124-raspberry-pi Help forum] • [[HOW-TO:Install XBMC on Raspberry Pi with USB drive|USB drive install]]&lt;br /&gt;
* &#039;&#039;&#039;[[Raspbmc]] -&#039;&#039;&#039; Installing: [http://www.raspbmc.com/wiki/user/windows-installation/ Windows], [http://www.raspbmc.com/wiki/user/os-x-linux-installation/ Mac OS X, Linux] • [http://www.raspbmc.com/wiki/user/frequently-asked-questions/ FAQ] • [http://www.raspbmc.com/wiki/user/ User guide] - [http://forum.stmlabs.com/forumdisplay.php?fid=7 Help forum]&lt;br /&gt;
* &#039;&#039;&#039;[[XBian]] -&#039;&#039;&#039; [http://xbian.org/getxbian/ Installing] • [http://xbian.org/faq/ FAQ] • [http://xbian.org/getting-started/ Starters guide] • [http://forum.xbian.org/ Forum] &lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;section end=&amp;quot;install&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Frequently Asked Questions ==&lt;br /&gt;
{{see|Raspberry Pi FAQ}}&lt;br /&gt;
&lt;br /&gt;
== Maximizing performance ==&lt;br /&gt;
&amp;lt;section begin=&amp;quot;performance&amp;quot; /&amp;gt;&lt;br /&gt;
* Use a lightweight skin such as the default Confluence, Amber, Quartz, Bellow, or xTV-SAF.&lt;br /&gt;
&lt;br /&gt;
* Turn off RSS feeds and any scrolling text options for your skin.&lt;br /&gt;
&lt;br /&gt;
* Use an SD card with good rewrite speeds. The class of the SD card doesn&#039;t always mean it will be faster, as that speed listing is for sustained reading and writing. For {{kodi}} random read/write speeds are more important. &#039;&#039;&#039;&#039;&#039;[http://swag.raspberrypi.org/products/noobs-8gb-sd-card The class 4/6 Samsung SD cards sold on the Raspberry Pi Store] (the ones with NOOBS on them) typically have much better performance than most class 10 cards.&#039;&#039;&#039;&#039;&#039; For more information about SD card speeds, check out this excellent thread on the R-Pi forum: &#039;&#039;&#039; http://www.raspberrypi.org/forums/viewtopic.php?p=53159 &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* You can also try to use a combination of SD and fast USB drive for your {{kodi}} install, but recent improvements to the software make it so that even just using a good SD card is about as fast as using a fast USB drive.&lt;br /&gt;
&lt;br /&gt;
* Avoid using wifi. If you do use wifi, use a wifi adapter that contains two antenna (either internally or externally). Otherwise, stick to wired ethernet, local USB drives, or ethernet-over-power devices (like Homeplug, etc).&lt;br /&gt;
&lt;br /&gt;
* If you are using wifi and it seems just on the edge of being fast enough, check out &#039;&#039;&#039;[[HOW-TO:Modify the video cache]]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* Try using &#039;&#039;&#039;[[NFS]]&#039;&#039;&#039; file shares instead of SMB file shares.&lt;br /&gt;
&lt;br /&gt;
* Try mounting network shares through OS rather than Kodi. This allows more tweaking of filesystem options, like chosing UDP and larger block sizes. See [http://forum.osmc.tv/showthread.php?tid=6825 This raspbmc thread for details]&lt;br /&gt;
&lt;br /&gt;
* Overclock. Most Pi&#039;s can handle a significant overclock, as long as they have a good power supply. There is no universal setting that will work for everyone (except for the default speed that you get without overclocking). Try various overclocking settings and run {{kodi}} for a while and see if it&#039;s stable. If one group of overclocking settings causes crashes, try a group of settings that are lower than that. For more information about this check out this forum thread: &#039;&#039;&#039; http://forum.xbmc.org/showthread.php?tid=199272 &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Extract thumbnail and video information&amp;quot; from &#039;&#039;&#039;[[Settings/Video#File lists|file lists settings]]&#039;&#039;&#039; is disabled by default on the Pi as it improves browsing performance.&lt;br /&gt;
&lt;br /&gt;
* For smoother video playback enable &amp;quot;Adjust display refresh rate to match video&amp;quot; from &#039;&#039;&#039;[[Settings/Video#Playback|playback settings]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* When using dvdplayer &amp;quot;Sync playback to display&amp;quot; and &amp;quot;adjust PLL&amp;quot; for sync method are recommended. See &#039;&#039;&#039;[[Settings/Video#Playback|playback settings]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Make sure the video is using H.264 (up to High Profile. Hi10P will not work) or MPEG-4, or, if a codec was purchased and enabled, MPEG-2 or VC-1.&lt;br /&gt;
&lt;br /&gt;
* Passthrough is recommended as it lowers CPU usage for DTS and AC3. Use &#039;&#039;&#039;[[Settings/System#Audio output|audio passthrough]]&#039;&#039;&#039; if your TV/receiver supports it.&lt;br /&gt;
&lt;br /&gt;
* To determine which audio passthrough formats your HDMI-connected TV supports, you can log in to your chosen distribution, via SSH, and run this command: &amp;lt;code&amp;gt;/opt/vc/bin/tvservice a&amp;lt;/code&amp;gt; (on OpenELEC: &amp;lt;code&amp;gt;tvservice -a&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
* Feeling adventurous? Check out the latest OpenELEC test builds, which often have even more speed improvements. Just remember that these builds can often be unstable: &#039;&#039;&#039; http://forum.xbmc.org/showthread.php?tid=192380 &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Some additional advanced tips for speeding up boot times. {{editor note|Some of this can likely be broken up into individual bullet points for this list, but I haven&#039;t examined any of this in detail yet. I&#039;m not sure which ones only improve boot time and which ones improve actual performance once already booted. If anyone wants to take a whack at this, please do.}} http://forum.xbmc.org/showthread.php?tid=201354&lt;br /&gt;
&lt;br /&gt;
* For locally connected drives containing videos and music, the format of the drive can have an impact on read and write speeds. For example, NTFS tends to be much slower on any Linux-based system than the more native EXOFS formats (ext2, ext3, etc).&lt;br /&gt;
&lt;br /&gt;
* If you use [[MySQL]] then you will want to make sure your images are pre-cached using the &#039;&#039;&#039;[[Texture Cache Maintenance utility]] tool&#039;&#039;&#039;. Local libraries typically don&#039;t need this as their images are cached when videos are scanned in. Using MySQL can improve performance as the database queries are handled by another machine.&lt;br /&gt;
&lt;br /&gt;
* Organizing your movies in single folders for each movie, rather than all movies in one folder, is recommended. The individual folders reduce the time it takes for {{kodi}} to look for supporting media like external subtitles, making browsing, scanning and starting playback a little faster. You might also want to consider pre-scraping the meta data using a &#039;&#039;&#039;[[Library manager]]&#039;&#039;&#039; to reduce the time it takes to scan in both movies and TV shows.&lt;br /&gt;
&amp;lt;section end=&amp;quot;performance&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Remote controls ==&lt;br /&gt;
[[File:gpioir.png|right|250px|thumb|Wiring instructions for a TSOP4838 GPIO IR sensor.]]&lt;br /&gt;
;GPIO IR receiver&lt;br /&gt;
:Don&#039;t have a CEC TV or a smartphone remote? For less than a dollar/euro, you can add an IR receiver to your Raspberry Pi that works with most MCE and Apple remotes (and a few others). Most {{kodi}} install options for the Pi should work with the GPIO IR out of the box, or by enabling a setting from within {{kodi}}. Go to a local electronics store or search on ebay for &amp;quot;&amp;lt;code&amp;gt;TSOP4838&amp;lt;/code&amp;gt;&amp;quot; and use some simple jumper wires (or solder the pins directly, if you wish). {{smaller|&#039;&#039;(We need a link to a good, up to date GPIO IR guide. Most of the links I found are outdated and contain instructions for additional configurations that are no longer required. If you find a good link/guide, please add it to the wiki.)&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
;[[CEC]]&lt;br /&gt;
:If your TV supports &#039;&#039;&#039;[[CEC]]&#039;&#039;&#039; then you should be able to use the remote control that came with your TV to control {{kodi}}. The remote control signals are sent over the HDMI cable and most often don&#039;t require any further settings or configuration.&lt;br /&gt;
&lt;br /&gt;
;[[MCE remotes]]&lt;br /&gt;
:Various &#039;&#039;&#039;MCE&#039;&#039;&#039; USB receivers and remotes will work on the Pi.&lt;br /&gt;
&lt;br /&gt;
;[[Keyboards]] and mice&lt;br /&gt;
:Any &#039;&#039;&#039;[[Keyboard]]&#039;&#039;&#039; such as wired, wireless, bluetooth. This includes remotes that are seen as keyboards, such as Rii remotes, the Mele F10-Pro remote, or the (very awesome) &#039;&#039;&#039;[[Flirc]]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
;[[Smartphone/tablet remotes]]&lt;br /&gt;
:Use your smartphone or tablet as a remote control.&lt;br /&gt;
&lt;br /&gt;
;[[Web interface]]s&lt;br /&gt;
:Control {{kodi}} from anything that has a web browser.&lt;br /&gt;
{{-}}&lt;br /&gt;
&lt;br /&gt;
== How good is it, really? ==&lt;br /&gt;
See for yourself: https://www.youtube.com/watch?v=ErWF2sYgJec&amp;lt;br /&amp;gt;&lt;br /&gt;
{{youtube|ErWF2sYgJec}}&lt;br /&gt;
&lt;br /&gt;
== Further reading ==&lt;br /&gt;
* [http://raspberrypi.org RaspberryPi.org]&lt;br /&gt;
* [http://elinux.org/RaspberryPiBoard Raspberry Pi Hub Wiki]&lt;br /&gt;
* [http://lea-linux.org/documentations/Raspberry_Pi Raspberry Pi French Wiki]&lt;br /&gt;
* [[Wikipedia:Raspberry Pi]]&lt;br /&gt;
&lt;br /&gt;
==Random notes==&lt;br /&gt;
{{large|&#039;&#039;Feel free to place various notes, tips, and links here. As this section of the wiki gets more organized, those notes will be properly sorted. Consider this like a dumping ground for when you&#039;re not sure where to put something.&#039;&#039;}}&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Gotham updated}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:HTPC]]&lt;br /&gt;
[[Category:Raspberry Pi]]&lt;br /&gt;
[[Category:Broadcom]]&lt;br /&gt;
[[Category:ARM]]&lt;/div&gt;</summary>
		<author><name>Menakite</name></author>
	</entry>
</feed>