Comments (3)
You can use Rust's FFI for that. Note that the high-level quinn
crate relies on tokio, which will be difficult to interoperate with from C/C++. Binding quinn-proto
and using it with an existing C/C++ event loop would make more sense, but is a complicated task in its own right. Additionally, quinn-proto
's interface is currently extremely unstable. While this is an interesting use-case that we'd like to support someday, it would be difficult to accomplish at present.
from quinn.
@Ralith Thanks for you reply. Actually I am trying to write an video streaming application. It pulls video stream from the camera and encodes it(this part is done in CPP) then it will send the encoded data to transport protocol(like QUINN). In this case, I can use the TOKIO event loop and pull encoding data from CPP library then send this data with QUINN. This would be easier compared to call QUINN from CPP, right?
from quinn.
So you have pulling video and encoding it in C++, and you want to use the transport code from Quinn in Rust. Now you have to write driver code that pushes the encoded video out over the transport. Clearly it's possible to write the driver in either C++ or Rust, but it's up to you which of those you'd prefer. You might consider which interface is more complex (the video encoding one or the network transport one) and use the language from that one, so you have less work to do in your bindings.
from quinn.
Related Issues (20)
- Rotation of Connection IDs HOT 5
- How to run insecure connection example? HOT 1
- Weird issue when transferring large file HOT 3
- `ACKs are delivered in order` panic when packets are reordered
- Allow a client to specify Initial Connection ID HOT 2
- Bundle flow control and ACK frames opportunistically
- RTT calculation of connection is pretty unreliable when _just_ using the library as is HOT 8
- `SendStream::stopped` suffers excessive delay in terminating with `ZeroRttRejected`
- Dropping `Endpoint` can cause unnecessary "Incoming dropped without passing to..." warnings
- Allow certificate access on Connecting HOT 5
- `SendStream::finish()` no longer errors when connection is closed HOT 2
- Allow disabling backtraces in panics HOT 3
- Consider adding an expect message to unwrap in packet_builder.rs HOT 6
- quinn is failing `zerortt` interop HOT 1
- Panic with tokio 1.39 HOT 8
- `handshakecorruption` crash HOT 5
- `recvmmsg` is disallowed by seccomp on Android x86 HOT 4
- how to use quinn to create an echo server and client? HOT 7
- Add echo server & client for examples HOT 1
- How to use empty cert connect my quic server using quinn? HOT 3
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 quinn.