Add bittorrent download backend
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Dmedia |
Fix Released
|
High
|
Jason Gerard DeRose |
Bug Description
We want to be able to use bittorrent to download files. This will be very important for the player, but also for the editor.
It seems the python-bittorrent library would be a good bet as it's in main and is quite small:
http://
This will be built on top of FileStore, which probably needs a few API changes to support this elegantly (I'll file a bug for this). Right now we just need the downloader as a rather independent component, but later we will integrate the bittorrent downloader as one the the options dmedia-service will use for queued downloads.
Another thought - AFAIK, by default bittorrent will download chunks from random positions in the file, but this doesn't work nice for progressive download (watching as you download). Not sure if python-bittorent API makes it easy to control the order the chunks are downloaded, but that would be a totally bonus.
Lots of good information here:
Related branches
- Jason Gerard DeRose: Approve
- Paul Hummer (community): Needs Fixing
- Martin Owens (community): Approve
-
Diff: 571 lines (+463/-7)7 files modifieddebian/control (+2/-1)
dmedia/downloader.py (+52/-2)
dmedia/errors.py (+4/-0)
dmedia/filestore.py (+72/-1)
dmedia/tests/test_downloader.py (+134/-1)
dmedia/tests/test_filestore.py (+79/-2)
test-torrent.py (+120/-0)
Changed in dmedia: | |
status: | Triaged → In Progress |
assignee: | nobody → Jason Gerard DeRose (jderose) |
Changed in dmedia: | |
status: | In Progress → Fix Committed |
Changed in dmedia: | |
status: | Fix Committed → Fix Released |
I filed a bug for the FileStore changes that will need to be completed before this bug - lp:708500