Comments (3)
I would like active candidates. Currently I am only using libdatachannel as a 'client' only (with OBS).
Some broadcaster want TCP (over UDP). They would rather see backpressure then packet loss. If the stream falls behind real-time that is better then packet loss. You also have the connectivity issues. Users that don't support UDP at all etc..
I prefer ICE-TCP/ICE-TLS over TURN because it reduces the complexity of what I have to deploy. TURN is somewhat expensive to run. You have to maintain another service, and deal with the extra CPU+Network usage. It isn't intractable but I have had more success with ICE-TCP/ICE-TLS personally.
from libjuice.
The libjuice library is designed under the assumption that there is only one UDP socket to make the code simpler. I think integrating TCP candidates would require significant architectural changes.
I'm a bit dubious about ICE-TCP in general, are you talking about active, passive, or simultaneous open? For what use case would you need them?
On a related note someone started implementing TURN TCP a long time ago but bailed out.
from libjuice.
I see, I'd gladly accept a PR for ICE-TCP active candidates provided the feature is disabled by default and must be enabled via an agent config flag.
from libjuice.
Related Issues (20)
- Re-licensing under MPL 2.0 HOT 5
- juice_server_add_credentials How to use it correctly? It has no effect HOT 5
- How does libjuice do multiple connections HOT 1
- Call the libjuice library, call the library in cpp, the memory occupies 4M, call the library in pure C, the memory occupies 2.5M,Why? HOT 2
- Can libjuice support candidates re-gathering? HOT 2
- On MacOS, with M1/2 Apple Silicon, there's a risk of the receiving threads running at very low performance
- double deallocation when allocation fails HOT 1
- usage clarification HOT 5
- Failed to compile on embedded arm architecture platform HOT 2
- Add single-threaded mode HOT 11
- STUN message send failed / STUN local ufrag check failed. HOT 4
- STUN Freshness Issue Leads to Disconnects HOT 4
- STUN security considerations - STUN over DTLS ? HOT 2
- Building juice-static on Windows results in a static library that looks to be compiled for a dynamically linked C runtime HOT 2
- Integrate into `asio::io_service` on C++ application HOT 1
- io_uring and libjuice HOT 2
- Misalignment issue during STUN data reading HOT 3
- Confusion in the examples
- Switching networking libraries after connection established? HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from libjuice.