top | item 8279640

Realtime streaming from torrents in the browser

138 points| 0x4139 | 11 years ago |iflix.io | reply

91 comments

order
[+] feross|11 years ago|reply
This is neat, but what we really need is BitTorrent over WebRTC, for actual decentralized BitTorrent in the browser. See http://webtorrent.io

The project's goal is to build a browser BitTorrent client that requires no install (no plugin/extension/etc.) and fully-interoperates with the regular BitTorrent network. We use WebRTC Data Channels for peer-to-peer transport.

WebTorrent is designed to match the BitTorrent protocol as closely as possible, so when the time comes, existing BitTorrent clients can easily add WebRTC support and swarm with web-based torrent clients, "bridging" the web and non-web worlds.

WebTorrent is already working as a node.js bittorrent client (just do `npm install webtorrent -g` and use the `webtorrent` command), and as a web-based client (though the docs for this latter part are currently very lacking -- this will improve in the coming days!).

[+] sktrdie|11 years ago|reply
Nice! Why not create a different protocol then if they're not yet compatible? Adoption for a browser-based p2p streaming tool should be seamless. If the only problem is BitTorrent integration, go your own way.

ps: your site seems down.

[+] atmosx|11 years ago|reply
So (in theory) I can upload this to my server and stream content from torrents straight out (since I'm on lousy ADSL while my VPS sits on ... well a way faster connection)?

If that's what these guys after, that's amazing :-)

[+] nimbusvid|11 years ago|reply
I created (and later closed) a similar service using mega.co.nz instead of torrents. The main problem I see with your approach is that you serve video from your server (and presumably do the torrent fetch server side). This opens you up to liability, makes you responsible for DMCA take downs and puts the workload on the server.

In contrast NimbusVid was entirely client side. The drawback was that the source data needed to be a web friendly seekable format; you couldn't play an arbitrary video file.

[+] higherpurpose|11 years ago|reply
This one is client-side:

http://www.popcornexpress.me/

It uses Bittorent's Torque plugin.

http://blog.bittorrent.com/2012/07/06/introducing-bittorrent...

Of course at that point you might as well install the real thing, rather than a plugin. It's a shame there isn't a standard web-based torrenting protocol. I imagine it's technically pretty hard to do, but even if it wasn't, now that MPAA is on W3C's board and owns it, and with Google, Microsoft and Apple also being in bed with them, there's slim to zero chance such a protocol will ever become reality.

[+] jbk|11 years ago|reply
> The drawback was that the source data needed to be a web friendly seekable format; you couldn't play an arbitrary video file.

Maybe I should revive the VLC web plugin and the torrent input plugin :)

[+] caractacus|11 years ago|reply
China is so far ahead of the west in real-time (and live) peer to peer streaming. Look at video systems like QVOD (now dying after state intervention), Xigua, JJVod: they all have a central tracker and use swarms of users to supply realtime video streaming. PopcornTime was a decent example of this but China's been doing it for years - it was live television streaming over p2p first with PPLive, PPS, Sopcast, etc and this then morphed into streaming of films and television. All use a slightly modified version of bittorrent. Most use bittorrent hashes to mark content.

I still can't understand why this has been Bram Cohen's main focus for the last few years and he still doesn't have a working prototype.

[+] toyg|11 years ago|reply
> he still doesn't have a working prototype

I suspect he still doesn't have a working prototype he can safely monetize. I don't think the wants to move to China.

[+] stefan_kendall3|11 years ago|reply
Guys I just broke into some guy's house that's known to be suuuuuper litigious. Check out all my selfies!
[+] alkimie2|11 years ago|reply
Just a couple of not-very-deep comments:

The service did nothing at all on Chrome with ad-block-plus installed.

On Firefox the service did show some very nice blue balls moving from left to right after I did a search on some common video content and selected it, but that was about it.

[+] TD-Linux|11 years ago|reply
What could possibly go wrong?
[+] cantbecool|11 years ago|reply
Awesome idea, but I don't see how this will last very long. I expect your host will pull the plug in a few days to a week, especially if you're opening yourself up to downloading and then hosting the content.

I run www.moviemagnet.net which surprisingly is hosted in the US, but hasn't been taken down yet.

[+] IMTDb|11 years ago|reply
Creator of http://tormovies.org and http://tv.tormovies.org here.

Can I put a "Watch Live" link to iflix.io which would stream the specified torrent (known by it's hash) next to each torrent download button ?

I love the concept, and I think it's wonderful especially for mobile device users...

The only fear I have, as other have noted is that I do really see how you will be able to scale if it takes off, and how you will be motivated to maintain it if it does not :/

Cheers anyway ! :)

[+] 0x4139|11 years ago|reply
sure thing dude, go ahead :), don't worry this is the least of my concerns, i hope it will take off ^^
[+] shmerl|11 years ago|reply
BitTorrent doesn't order file fragments by design. So how can you stream it without downloading the whole thing first (to the server at least)? Which defeats the purpose of streaming really.
[+] Macuyiko|11 years ago|reply
You can. BitTorrent doesn't order file fragments by design, but clients can choose to ignore this and request pieces in order. See Popcorn time and many other implementations out there.
[+] hayksaakian|11 years ago|reply
You use a client which request fragments in a specific order.

This is not something new.

[+] lukasm|11 years ago|reply
In FF: Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://ec2-54-68-78-110.us-west-2.compute.amazonaws.com/deta.... This can be fixed by moving the resource to the same domain or enabling CORS.

Chrome Failed to load resource: net::ERR_EMPTY_RESPONSE

in p0rn mode just shows the player and nothing is going on.

[+] malvosenior|11 years ago|reply
Haven't got this to work yet. I'd love to see a BT streaming solution not as a centralized service, but as a locally running app. Does such a thing exist?
[+] derefr|11 years ago|reply
My personal preferred suggestion: the Bittorrent Channel for Plex[0]. Plex is, effectively, a media indexing, library management, and transcoding daemon, that also provides plug-ins (Channels) to access virtual media items. In this setup, you have a streaming player (e.g. a Roku) and a PC running Plex--you access the torrent through the interface on the media player, and the PC will start downloading and transcoding the torrent and streaming the result to the media player.

[0] https://forums.plex.tv/index.php/topic/102253-rel-bittorrent...

[+] adrusi|11 years ago|reply
Not possible currently with web technologies because browsers don't let javascript connect to arbitrary TCP servers. The webtorrent project aims to make torrent clients compatible with WebRTC, so when that gets widespread adoption it should be possible.
[+] 0x4139|11 years ago|reply
the machine is a 10 dollar digital ocean droplet, it's curently at it's peak, this can be packed(and it will be) with node webkit
[+] m0dest|11 years ago|reply
Hosed. Getting timeouts for /details. 2 issues in general, though:

(1) The BitTorrent protocol is not hospitable to linear downloading.

(2) Pirated video content is extremely incompatible with browser-based playback... stuff like MKV and AVI containers, DTS/AC3 audio, multiple audio tracks, segmented RAR files.

If this works even for vanilla MP4 content, I will be super impressed - but the browser is the wrong place for this type of media app right now.

[+] rglullis|11 years ago|reply
Don't mean to hijack the thread, but has any of these stream-from-torrents-services developed any kind of "magnet link metadata database"? By metadata, I do not mean the common torrent metadata, but some kind of queryable index.

What I have in mind would be some kind of mapping between magnet link and themoviedb (or tvdb, musicbrainz id, etc). Seems like an obvious feature for me...

[+] benjymau5|11 years ago|reply
When I can get the page to load (which i assume is due to the HN DDOS of love) i still get "video format or mime type not supported" on Firefox 32.
[+] jpdelatorre|11 years ago|reply
There's another service that I use that exactly do the same thing and it works well. http://put.io
[+] 0x4139|11 years ago|reply
it's not the samething, iflix.io streams almost instantly (if it wasn't for the huge load)
[+] SimeVidas|11 years ago|reply
I can confirm that it works in Chrome. (I tried with a Korra episode. It started playing almost instantly, with a few image glitches here and there.)
[+] atmosx|11 years ago|reply
For me worked only for 'porn' which had a huge load of seeders. Not for anything meaningful (which doesn't have 2500 seeders...)
[+] ris|11 years ago|reply
Nicely done. A(nother) webapp that refuses to do anything unless you allow it to load facebook's javascript.
[+] 0x4139|11 years ago|reply
it's just react nothing more
[+] rotub|11 years ago|reply
Searched and started playing an episode of the Simpsons on my iPhone within a minute. Impressive!