Add-on:Simple Downloader for xbmc plugins

From Official Kodi Wiki
Revision as of 17:19, 1 April 2013 by >NedBot (Addon-Bot Update)
Jump to navigation Jump to search

Simple Downloader for xbmc plugins
http://mirrors.xbmc.org/addons/frodo/script.module.simple.downloader/icon.png

See this add-on on the kodi.tv showcase

Author: TheCollective

Type: Services
Repo:

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

Installing

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

Introduction

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

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

Testing/Status

Integration and unittests are run continously by Jenkins

http://tc.tobiasussing.dk/jenkins/view/Simple%20Downloader/

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: http://forum.xbmc.org/showthread.php?t=116500

Setup

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

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

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.

Debugging

To enable debugging set the following values in your default.py

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": "http://server.com/video.mp4", "download_path": "/tmp" }
 downloader.download("myvideo.mp4", params)

A simple http download with a custom title.

 params = { "url": "http://server.com/video.mp4", "download_path": "/tmp", "Title": "my video" }
 downloader.download("myvideo.mp4", params)

A simple RTMP download

 params = {"url": "rtmp://edge01.fms.dutchview.nl/botr/bunny", "download_path": "/tmp", "Title": "bunny"}
 downloader.download("bunny.mp4", params)

A simple RTMP Live download

 video = {"url": "rtmp://aljazeeraflashlivefs.fplive.net:1935/aljazeeraflashlive-live/aljazeera_english_1", "download_path": "/tmp", "Title": "Live Download", "live": "true", "duration": "10"}
 downloader.download("aljazeera-10minutes.mp4", params)

isRTMPInstalled()

Returns True if rtmpdump is installed

isVLCInstalled()

Returns True if vlc is installed

isMPlayerInstalled()

Returns True if mplayer is installed