-
-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
libtorrent coupled with libVLC for video streaming #7666
Comments
Don't worry this is actually a popular use case!
These micro optimizations are fine but you're missing the big picture. A good start would be reading the documentation on streaming. But then you'd run into problems with (There is more background on this if you have the time: #6272 #6293 #4408 #6273 #7337) Though I'm thinking now, since your use case is streaming, are you sure about using libtorrent? As you can tell by these issues and the special incantations you have to go through, libtorrent is not ideal for the streaming use case (plus it is not really actively maintained anymore. And the 2.x releases have their own long running problems.) Have you tried anacrolix/torrent? Streaming is actually one of its documented use cases that it is optimized for, and though it is not as scalable as libtorrent 1.2 in terms of the number of torrents it can handle at a time, this doesn't matter for your use case of a streaming p2p video player. Plus it has a DLNA server written for it by the author, as well as many HTTP streaming servers using it, some by the author as well. |
@SemiAccurate Thank you for this post with interesting resources and references, I appreciate it. At this point I find it a bummer that there's no maintained C++ boiler plate on how to achieve streaming with libtorrent. I've been using the library for a while, it's quite fantastic, but implementing a video streamer has been a fairly empircal / mysterious process. Although, wen it works - and the peering is decent - the experience is substantial. Often felt like VLC resilient streaming approach and peer to peer were meant to be. Regarding your anacrolix torrent project, it seems written in go and too high level for what I'm trying to do. |
@3unjee Don't know if that would help you, but there are at least few OSS examples of streaming apps, that use libtorrent: You can easily start a webserver on a random port, that would proxy to a streaming, then point VLC to that port/endpoint to run the stream. |
Greetings,
I'm using libtorrent 2.x in conjunction with libVLC to achieve peer to peer streaming. I'm starting a local http server that feeds the pieces data to a libVLC instance while prioritizing them depending on the seeking point.
I'm aware that's not necessarily the default mode for the library. I was wondering if I could get recommendations on how to configure libtorrent in order to achieve the following:
At the moment I'm using the following:
I have multiplatform constraints and things should work well on broadband on a PC and 4G on a cellphone.
Thank you.
The text was updated successfully, but these errors were encountered: