Can I watch 1080p torrents while downloading?

Most large torrent files (8-20 gb) take quite a while to download. Is there software for Mac OS X that allows me to watch them while downloading?


  • We need a torrent client that can download the movie file parts in order, not randomly.
  • We need a player that supports playing incomplete files.
  • We need a connection that is faster than the movie’s bitrate (and a torrent with enough peers obviously).

The torrent client

Previously I used BitThief. It is developed by a technology institute in Zurich. It didn’t have a polished GUI and took a little bit too much CPU while downloading.

There's new client I found thanks to @diimdeep. It is called qbittorrent and it is awesome.

3

You can see that while downloading it downloads as a normal torrent client – the parts are downloaded randomly:

5

But there is an option:

7

After that we can see that the rest of the file is being downloaded sequentially (blue – downloaded, green – requested):

9

The connection speed

How can we tell if the speed is good enough? By the estimated time of arrival (ETA):

11

If the movie is 1.5 hours and the ETA is 17 minutes, then the speed is sufficient.

The player

The player is and always has been mplayer (I don't know why the domain is Hungarian)

  • low cpu usage
  • plays almost anything (although very rarely it crashes and burns)
  • lots of options (boosting volume, control of cache on streams, indexing...)
  • arrow keys navigation (I can't live without that)
  • playing incomplete files (and reindexing them, which allows navigation)

I use MplayerX - a nice OSX gui. Download and associate movie files with mplayer (avi, mkg):

14

The final step is to to play the file after the downloading started:

16

That’s it.

18

Happy watching.


Yes. There are three requirements:

  1. A video player software that doesn't mind about incomplete video files
  2. A torrent client that lets you choose the order in which the pieces are downloaded
  3. A fast–enough broadband connection

# 3 is trivial. Although you could cope with slower connection, if you download enough buffer for playback.

# 1 is somewhat trivial. VLC can start the playback of a file if the file's headers are downloaded (first pieces of the file). Seeking is a bit limited and I don't remember correctly if VLC stops when encountering a (too long) gaps in video. On Windows I've used GOM Player, which was more laid-back with missing frames.

# 2 is counter-intuitive. While many clients allow you to prioritise the files, prioritising pieces is less common. This is simply because torrents are designed to transfer big sets of data fast. A large reason why torrents are faster or more efficient than an ordered transfer of a file is due to the fact that torrents pick the easy fruits - whatever parts of the file are available from the least loaded / closest source are what get downloaded first. Statistically, you should expect to be missing key parts of the beginning of the video until the transfer is almost complete.

The speed is achieved by initially splitting the file(s) to pieces, sending the pieces to the clients in the network and then all the clients will share and merge the different pieces. The operation is best described with an animation found in BitTorrent's Wikipedia article.

Unfortunately I can't recommend any torrent clients that give you the option to prioritise the pieces—if there even are any—as I've never really had the need.

Also note that BitTorrent isn't exactly designed for playback while downloading (QED), but for just sharing data. You might get better luck with on–demand video rental services available in your area, which usually use software and protocols specifically designed for HD-playback over the net.

Sadly that leaves out lots of great indie content. Maybe the best way to deal with the issue is to gain patience or plan more ahead :-)


http://www.qbittorrent.org at least can download sequentially