Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.
Sign upAdd WebRTC support to popular torrent clients #369
Comments
This comment has been minimized.
This comment has been minimized.
|
|
This comment has been minimized.
This comment has been minimized.
|
Hi @feross. So, how is the progress on this? |
This comment has been minimized.
This comment has been minimized.
|
@dcposch has done some exploration of getting webrtc support into libtorrent. It looks like it'll be doable! |
This comment has been minimized.
This comment has been minimized.
|
@feross seems to me that this should be the most important outstanding issue by far as it is really the only blocker for webtorrent gaining widespread use in the browser and fulfilling the original promise of the project. @feross @mafintosh One other extremely popular torrent client that isn't listed here would be peerflix, as it still sees ridiculous usage (although hard to quantify) via the various popcorn-time forks. If peerflix were augmented to support webrtc peers, that could potentially allow a popcorn-time in the browser use case to function very well. Product Hunters seem to agree that this would be a great development. It's also pretty clear that given the synergy between torrent-stream/peerflix and webtorrent in terms of environment and shared dependencies, making peerflix peers hybrid wouldn't be nearly as difficult as integrating webrtc support into the other, non-js-based torrent clients. |
This comment has been minimized.
This comment has been minimized.
|
Interesting...
Agreed. @jhiesey & i checked out how hard it would be to add webtorrent support to one of the native torrent libraries, eg libtorrent. It looks like the biggest hurdle is that there's no
|
This comment has been minimized.
This comment has been minimized.
|
Maybe this project could be helpful: https://github.com/xhs/librtcdc |
This comment has been minimized.
This comment has been minimized.
|
wow, that looks awesome. if i have time later i'll try it out |
This comment has been minimized.
This comment has been minimized.
|
@dcposch if it works well I want to look at making node bindings for it as well. |
This comment has been minimized.
This comment has been minimized.
|
Sorry if this is a stupid question, but: Webtorrent's docs/FAQ suggest that browser-based WebTorrent users can only communicate with other browser based clients and "hybrid" clients. "Hybrid" clients can communicate with either pool, bridging the swarms. Ultimately we don't want bridges, we want one swarm. But right now, what are the "bridges" or "hybrids"? Node-based WebTorrent users? Or something else? |
This comment has been minimized.
This comment has been minimized.
|
@cathalgarvey there is a node hybrid client : see https://github.com/feross/webtorrent-hybrid (also see webtorrent/webtorrent-hybrid#5 (comment)) |
This comment has been minimized.
This comment has been minimized.
|
@feross |
This comment has been minimized.
This comment has been minimized.
|
@devlo completely agreed; I know feross is aware of this, but there just hasn't been anyone who's stepped up and been able to make this integration happen. The piece that I'd recommend starting from would be communicating in C from libtorrent to https://github.com/feross/webtorrent-hybrid via webrtc probably using one of the C-based webrtc libraries listed above. |
This comment has been minimized.
This comment has been minimized.
|
See libtorrent#223 for some continued libtorrent discussion. |
This comment has been minimized.
This comment has been minimized.
|
https://wiki.vuze.com/w/WebTorrent it seems vuze has support now ! |
This comment has been minimized.
This comment has been minimized.
|
It seems to me that documenting the protocol adaptations/extensions would be the best way to encourage the developers of other clients to add support to their codebases. Ideally, I suppose this would come in the form of a BEP but even a draft specification would likely be welcomed by many. |
This comment has been minimized.
This comment has been minimized.
|
Duplicated, sorry! |
This comment has been minimized.
This comment has been minimized.
|
Someone created a ticket for Transmission. It may need some details though. |
This comment has been minimized.
This comment has been minimized.
|
If this were done for |
This comment has been minimized.
This comment has been minimized.
|
@feross I'm planning on assisting adding this into |
This comment has been minimized.
This comment has been minimized.
|
Great @dessalines! Cannot wait to see that coming! If I can give you some pointers:
There is a BEP we are working on in #881, it should give you some informations but be aware that some fields have been renamed for the future standard and read the comments (or look at the code). I am very interested in making libtorrent support webtorrent so ask if there is anything I can do for it. |
This comment has been minimized.
This comment has been minimized.
|
Any news about this? |
This comment has been minimized.
This comment has been minimized.
|
Here is the issue for rtorrent and libtorrent-rakshasa To avoid confusion, we should also use libtorrent-rasterbar instead of just libtorrent. |
This comment has been minimized.
This comment has been minimized.
|
@feross add on the list |
This comment has been minimized.
This comment has been minimized.
|
Vuze as a seedbox kind/not works http://hamishcampbell.com/index.php/2018/05/18/testing-peertube-webrtc-seedboxes/ |
This comment has been minimized.
This comment has been minimized.
|
From what I understand, as of today there is no client usable on a headless server right? |
This comment has been minimized.
This comment has been minimized.
|
Well... Any headless browser. :)
…On 10 June 2018 19:19:09 GMT+01:00, tuxayo ***@***.***> wrote:
From what I understand, as of today there is no client usable on a
headless server right?
--
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
#369 (comment)
--
Sent from my Android device with K-9 Mail. Please excuse my brevity.
|
This comment has been minimized.
This comment has been minimized.
|
webtorrent hybrid |
This comment has been minimized.
This comment has been minimized.
|
Request to add BiglyBT to the list. It can be seen as the continuation of Vuze as it's development has stalled. As for WebRTC support, I'm testing it but it seems to have NAT and/or UPnP issues for me. So I can't confirm yet if it's usable. edit 2018-06-23: I'm not sure that BiglyBT and Vuze can actually seed with WebRTC. I could barely seed when with WebTorrent desktop it seeds most of the time. |
This comment has been minimized.
This comment has been minimized.
Thanks for the heads up, I'll try that :) |
This comment has been minimized.
This comment has been minimized.
|
Is this dead? |
This comment has been minimized.
This comment has been minimized.
No. |
This comment has been minimized.
This comment has been minimized.
|
And implements webrtc without browser... Its possible? And this... https://github.com/pion/webrtc and https://github.com/thorst/RTC |
This comment has been minimized.
This comment has been minimized.
|
Yes, there’s discussion over at arvidn/libtorrent#223 about existing non‑browser WebRTC implementations and their pros and cons. The most favourable option currently appears to be @lgrahl’s RAWRTC. |
This comment has been minimized.
This comment has been minimized.
|
Anyone into Go may be able to pick up anacrolix/torrent#138. pion/webrtc should be in good shape to power a Go implementation. |
This comment has been minimized.
This comment has been minimized.
|
Libtorrent (which is written in C++) is the only one that matters. It powers qbittorrent, deluge, transmission, rtorrent. |
This comment has been minimized.
This comment has been minimized.
|
rTorrent uses its own BitTorrent implementation, which is also, confusingly, called LibTorrent. |
This comment has been minimized.
This comment has been minimized.
|
Any update? I really want to upload my videos to a seedbox and then stream to peertube, bitchute and web players, but it seems odd to have to do it trough a VPS and a freaking browser open. It's just too much bloat because I need to install X and so on. I don't trust peertube instances to keep hosting. |
This comment has been minimized.
This comment has been minimized.
|
Really interesting progress on integrating into libtorrent. arvidn/libtorrent#4123 |
This comment has been minimized.
This comment has been minimized.
|
I really hope this is still on-going. I would love to see something like rTorrent adopting WebRTC support. This will be a game changer. Been following this for a very long time but it seems no new clients added WebRTC for years :(. |
Meta issue to track progress on getting WebRTC support into popular torrent clients.