denoland / deno

A modern runtime for JavaScript and TypeScript.
https://deno.com
MIT License
93.91k stars 5.22k forks source link

WebRTC Integrating #1612

Open xueqingxiao opened 5 years ago

xueqingxiao commented 5 years ago

Reference: WebRTC Native API samples client & server both side

balupton commented 5 years ago

Shouldn't this be in user land?

davidcallanan commented 4 years ago

@balupton Is WebRTC not part of the standard browser interface? How would one implement this in userland?

Sean-Der commented 3 years ago

I would check out https://github.com/shinyoshiaki/werift-webrtc. Long term you are going to have a pretty high burden using Google's WebRTC implementation via FFI. Also the security issues that have come with it.

I am happy to help also! If anyone wants to grok WebRTC more I wrote WebRTC for the Curious and work on Pion. Pion isn't relevant at all for deno, but happy to throw in stuff that I learned along the way writing it.

jcc10 commented 3 years ago

Shouldn't this be in user land?

...

@balupton Is WebRTC not part of the standard browser interface? How would one implement this in userland?

std/ws is a thing so it probably could be user-land, however if it is it should be a std user land since this can be considered a standard interface.

crowlKats commented 3 years ago

std/ws is a thing

std/ws is a server, not a client. for client we have the web WS API. WebRTC shouldnt be a module, but a built-in.

jcc10 commented 3 years ago

std/ws is a server, not a client.

Well originally it had both, but I do get and agree with your point.

I actually just dug through the source-code to check and I was under the incorrect assumption that the websocket client was some sort of ts shim that was just auto-included. So that's good to know.

regnaio commented 3 years ago

Why was the feat label replaced with cli and suggestion labels?

lucacasonato commented 3 years ago

Because we have not made a decision on if this will be implemented or not. feat label is only used for issues that we have decided should be implemented.

richardanaya commented 3 years ago

Maybe this will be of value one day: https://github.com/webrtc-rs/webrtc

lin7sh commented 3 years ago

webrtc is now a W3C standard recommendation , please consider integrate at least datachannel via usrsctp which is used by Chrome and almost all the others

Danue1 commented 3 years ago

Can we integrate this?

Sean-Der commented 3 years ago

@mko-io usrsctp is being replaced with dcnet in Chrome. Might be worth exploring if integrating that is easier!

rojvv commented 2 years ago

I'm waiting for it.

richardanaya commented 2 years ago

I'm excited for it!

PodaruDragos commented 2 years ago

Hey guys, I assume this is not a priority at all for Deno core ? It would be really nice to have this.

crowlKats commented 2 years ago

Yes, this isnt a priority. I am keeping an eye on this, and we probably would use the WebRTC crate, but this wont happen anytime soon as there are other priorities

PodaruDragos commented 2 years ago

Yes, this isnt a priority. I am keeping an eye on this, and we probably would use the WebRTC crate, but this wont happen anytime soon as there are other priorities

Cool, thanks for answering. I was just asking since webGPU was added, I thought this might be an api that is more "important" since it's already a standard.

chanphiromsok commented 2 years ago

any plan add mediasoup to denoland ?

drinkmorewaters commented 1 year ago

You're about to see WebRTC + AV1 replace RTMP + HLS, I think. The big companies are about to WHIP it into shape.

I've tested Cloudflare WebRTC Stream it's much lower latency than RTMP, feels like AV1 + WebRTC is coming.

Imagine being able to play a video from Deno serverside WebRTC (Rasberry Pi) to a Browser, would be spicy! Or open a port from an IP camera without RTSP/RTMP direct to a browser device with sub second latency and no HLS. Double Spicy!

PodaruDragos commented 1 year ago

@crowlKats my apologies for tagging you like this, more than 1 year has passed since I asked about some updates. I know if there were updates on this someone would have informed us.

I am asking this again not to sound demanding or rude, but this is such an exciting feature and it would be so cool to have a native way of building SFU's in deno. Were they any internal discussions about the potential inclusion in deno ?

crowlKats commented 1 year ago

No, there have been no discussions about this, as it is not a priority. Also, the involvement of this project is unknown, but likely quite complex.

benatkin commented 1 week ago

Some of the fun of WebRTC is better left out of Deno at the moment...

There's a webrtc: 'block' CSP in a spec but it hasn't made its way to browsers yet. Deno, not using CSPs, should probably have a similar off switch when this gets implemented. https://wpt.fyi/results/content-security-policy/webrtc?label=experimental&label=master&aligned