Add-on:Simple Downloader for xbmc plugins

From Official Kodi Wiki
Jump to navigation Jump to search

Simple Downloader for xbmc plugins

See this add-on on the showcase

Author: TheCollective

Type: Services

Summary: Simple downloader for xbmc plugins.
Home icon grey.png   ▶ Add-ons ▶ Simple Downloader for xbmc plugins


This add-on is installed from the Add-on browser located in Kodi as follows:

  1. Settings
  2. Add-ons
  3. Install from repository
  4. Services
  5. Simple Downloader for xbmc plugins
  6. Install


This is a downloader developed and used with the YouTube and BlipTV addons.


  • One queue across all plugins
  • Requeing an existing item moves it to the front of the queue.
  • RTMP downloading if the rtmpdump binary is installed.
  • RTSP/mms downloading if the vlc or mplayer binary is installed.(And any other stream they accept)

Simple Downloader


Integration and unittests are run continously by Jenkins


This is a unified cross plugin http/rtmp downloader.

It is currently not possible to distribute the rtmpdump binary with this addon.

The user must make sure rtmpdump is installed in a system PATH for rtmp downloading to work.

Development and support thread:


To use the downloader edit your addon.xml like this.

   <import addon="xbmc.python" version="2.0"/>
   <import addon="script.module.simple.downloader" version="1.9.5"/> # Add this

And add the following to your py file.

 import SimpleDownloader as downloader
 downloader = downloader.SimpleDownloader()

You can now access the downloader through the "downloader" variable.


To enable debugging set the following values in your

dbg = True # Default

Or you can change it after import with.

downloader.dbg = True # Default

Whenever you debug your own code you should also debug in the cache. Otherwise you should remember to DISABLE it.

download(self, filename, dict = {})

Takes filename(string) and dictionary list with url and download_path.

The filename must be unique.

Input dictinary variables:

  • url(string): URL to download
  • Title(string): Title to give download. Use filename if not set.
  • download_path(string): Path to store file in
  • live(bool): Set to True when streaming rtmp live.
  • duration(int): Duration in minutes to download(For live streams).

Returns None

A simple http download

 params = { "url": "", "download_path": "/tmp" }"myvideo.mp4", params)

A simple http download with a custom title.

 params = { "url": "", "download_path": "/tmp", "Title": "my video" }"myvideo.mp4", params)

A simple RTMP download

 params = {"url": "rtmp://", "download_path": "/tmp", "Title": "bunny"}"bunny.mp4", params)

A simple RTMP Live download

 video = {"url": "rtmp://", "download_path": "/tmp", "Title": "Live Download", "live": "true", "duration": "10"}"aljazeera-10minutes.mp4", params)


Returns True if rtmpdump is installed


Returns True if vlc is installed


Returns True if mplayer is installed