Add-on:Simple Downloader for xbmc plugins

From Official Kodi Wiki
Jump to: navigation, search

Simple Downloader for xbmc plugins

See this add-on on the showcase

Author: TheCollective

Type: Services
Repo: repo v18 repo v17

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

1 Installing

To install this add-on you must do so from the Add-on manager from within Kodi by going to

  1. The home screen
  2. Add-ons
  3. Download
  4. Services
  5. Simple Downloader for xbmc plugins
  6. Install

2 Introduction

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

3 Features

  • 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

4 Testing/Status

Integration and unittests are run continously by Jenkins

5 Developers

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:

5.1 Setup

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.

5.2 Debugging

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.

5.3 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)

5.4 isRTMPInstalled()

Returns True if rtmpdump is installed

5.5 isVLCInstalled()

Returns True if vlc is installed

5.6 isMPlayerInstalled()

Returns True if mplayer is installed