HOW-TO install and use plugins in XBMC

XBMC features a Python Engine and the XBMC GUI interface has a built-in 'Add-on' support for displaying content listings that present to that GUI interface.

Plugins, unlike scripts, do not really provide new functionality to XBMC, instead they provide an easy way to present content listings in XBMC through the native GUI interface. Content is usually online sources like Internet audio and video streams, (like Internet TV-channels, and radio-station, or Podcasts), or pictures from websites such as Flickr and Picasa.

Note! As most plugins work by scraping a website they often stop working (partially or completely) when changes (redesign) are made to the content website by the owner. So if a third-party plugin does not work, please understand it is not usually due to a problem with XBMC, but rather that the website it scrapes has been altered, meaning someone will have to fix the plugin code to accomodate the changes, then you will have to get that updated version of the plugin. A list of working plugins may be found here.

=About XBMC Plugins= Plugins are a special type of source that is powered by a python script automatically run by XBMC in the background. A plugin source is typically used to represent the online content of a website as a hierarchical file-system, but it can also be used to represent non-online stored content (such as accessing files from third-party multimedia management software database, like for example iTunes).

Plugins present an easy way for normal XBMC users to add new content sources to XBMC themselves (using the easy to learn Python programming language, without knowledge of the more complex C/C++ programming language).

XBMC currently supports four types of plugin sources; video, music, pictures, and programs.

Python plugins versus scripts
Please do not confuse "Plugins" with "Scripts". Unlike the Scripts, Plugins are not meant to be directly invoked by the user. Instead, Plugins are automatically invoked when the user enters such a virtual folder. Do not try to run Plugins files from the scripts window as that will only give you a weird error message. Plugins, unlike Scripts, do not really provide new functionality to XBMC, instead what they do do is provide an easy way to present content listings in XBMC through the native GUI interface.

=Installing Plugins= Plugins may be manually installed by copying the needed files to the appropriate plugin directory, within their own folder. One may also use the SVN repo installer plugin, which should be already present in your XBMC installation, or a third party installer, such as the XBMC zone installer. The installation process using the above installers is automatic. A link to the SVN repo installer is available in your favourites menu.

What about Linux? The SVN Repo Installer is not included?
If you installed the basic xbmc and xbmc-common packages in Linux (even from the SVN PPA), the SVN Repo Installer plugin does not come included. The fastest way to install it is to download it from the Google Code Project page (search code.google.com for the xbmc-addons project). Download the zip file into your plugins/programs directory (see below for where this folder can be found on your installation)

Adding plugins sources in XBMC GUI
Plugin sources can automatically be added from within XBMC via the "Add Source" command accessible from the root folder of "Videos", "Music", "Pictures", and "Programs" section of XBMC. The actual file that is invoked by XBMC is "plugins\ \ \default.py" (this "default.py" file must be present for the plugin to show up in "Add Source" the dialog). Plugins will show up automatically in Library Mode.

You may also use "Video Plugins", in the video window root folder to view the plugins present in the XBMC video plugins folder, and the respective links in the music and pictures windows.


 * Start XBMC
 * Go into the "Video" section if you like to add a video-plugin, the "Music" section if you like to add a music-plugin, etc. In this example we chosen to install a video-plugin.
 * Select "Add Source"
 * Select "Browse"
 * Select "VideoPlugins"
 * Select the video plugin you want to add from the list and press enter.
 * Select "OK"
 * Select "OK"

Your installed plugin will now be displayed in the list of available sources.

Common user errors when trying to add a plugin
Do not try to add a plugin as a normal file by browsing your harddrive for the plugins folder. Instead, after choosing "Add Source", select "{Video|Music} Plugins" and then the plugin you want to add as a source.

You can even add subdirectories. For example, if you want only the comedy section of Apple Movie Trailers to show up as a source, browse to that virtual "subdirectory" of the Apple Movie Trailers Plugin.

Manually installing plugins
Video plugins are copied to the "/plugins/video/ directory, audio plugins (normally music) are copied to the "/plugins/music/ directory, picture plugins (normally digital photos and images) are copied to the "/plugins/pictures/ directory, and programs (third-party software launchers) are copied to the "/plugins/programs/ directory.