Skip to content

Media Import

Sascha Montellese edited this page Mar 1, 2021 · 17 revisions

The following pages describe the architecture and design of the media import feature being developped by Montellese.

The idea and goal

The basic idea behind media import is to have a defined way of importing media items from external sources into the Kodi library. Right now the content part of Kodi is split into libraries and plugins. There are even plugins which completely re-write Kodi's library to display media items available on external sources. The problem with these approaches is that users either has to manually switch between his libraries and plugins in Kodi's user interface or has to choose between either using a local library or a library containing only media items imported from external sources. This is where media import comes into play to combine media items from different external sources in the existing Kodi libraries.

As an example media import would allow to

  • use Kodi to scan media items from a (local) filesystem into it's libraries
  • import existing media items from an Emby server in the local network into Kodi's libraries
  • import existing media items from a (local or remote) Plex Media Server into Kodi's libraries

And all of that without having to choose between one or the other.

Another example would be to use one Kodi installation as the "master" and other Kodi installations as "slaves" by directly importing media items from the Kodi "master" installation into the Kodi "slave" installations without the need of a central MySQL database. It would even be possible to choose a distributed approach where all Kodi installations contain media items in their local library and combine them with the media items from the other Kodi installations so that in the end all Kodi installations have all local and remote media items in their local libraries.

Glossary

The following terms are used throughout the documentation:

Term Description
Media type Type of media e.g. movie, tvshow, seasion, episode, ...
Media item Item with a specific media type
Library A library contains media items with their metadata in Kodi
Source / Provider A source where media items are stored and can be retrieved from
Import Belongs to a source / provider and limits the media items to a group of media types (e.g. movies or tvshows/seasons/episodes)
Importer An importer knows how to import media items from a specific source / provider

Use Cases

See Use Cases

Architecture and Design

See Architecture and Design

Media Importers

See Media Importers

Status and Progress

The media import feature has been in development since 2013 with periods of high and low (down to no) activity. Recently (in 2019) a lot of progress has been made.

Status and progress are periodically reported at the Kodi forum which also contains the latest test builds for several platforms.

Feature Requests and Bugs

Feature requests and bugs are tracked as Github issues.

Skin Support

To add support to your skin, you will need to make three (3) changes.

Add an entry point for Media Import to Settings.xml

<item>
  <label>$LOCALIZE[753]</label>
  <onclick>ActivateWindow(MediaSourceBrowser)</onclick>
  <icon>icons/settings/mediasources.png</icon>
</item>

753 is included in Kodi's strings.po as Media sources

At present there is no mediasources.png. If you have the skill to create one it would be appreciated!

Add MediaSourceBrowser.xml.

Add DialogMediaImportInfo.xml.