• Stars
    star
    160
  • Rank 234,703 (Top 5 %)
  • Language
    Go
  • License
    MIT License
  • Created over 4 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

An implementation of the BitTorrent protocol that is optimised for streaming media.
Storrent
========

Storrent is a BitTorrent implementation that is optimised for streaming
media: it allows you to watch a movie or to listen to music from a Torrent
without downloading it entirely.

Storrent works entirely in RAM: except for the DHT bootstrap database, it
will never write anything to disk.  It requires a fair amount of memory
(1GB will do, 4GB is better).


Installation
------------

    git clone https://github.com/jech/storrent
    cd storrent
    CGO_ENABLED=1 go build

This will yield a binary called `storrent` or `storrent.exe`.

Running
-------

    ./storrent &
      
Now go to

    http://localhost:8088
    
and add a magnet link or a link to a torrent file.  Wait a few seconds,
then hit reload; you should see a link to a playlist which you may
download and feed to your favourite media player.


Command-line options
--------------------

    storrent -help
    
By default, storrent takes 1/2 of the total RAM on your machine.  You may
tune this with the `-mem` command-line flag:

    storrent -mem $((4 * 1024 * 1024)) &

By default, storrent attempts to open ports in your NAT box or firewall
using NAT-PMP, or, failing that, uPNP.  You may disable port mapping with
the `-portmap` flag:

    storrent -portmap=off

I usually run storrent in a slightly more paranoid mode than the default:

    storrent -force-encryption -dht-passive

For privacy reasons, storrent doesn't use trackers or webseeds by default;
you may enable them on a torrent-by-torrent basis in the user interface.
Should you wish to override the default, do:

    storrent -use-trackers -use-webseeds


Author
------

Juliusz Chroboczek <https://www.irif.fr/~jch/>