←back to thread

86 points stargrave | 8 comments | | HN request time: 0.897s | source | bottom
1. lxgr ◴[] No.40087224[source]
> WebRTC-based solutions are insane bloated incredible monsters [...] They work mainly only if you use the same kind of software and codecs, for example Chromium[...]

That's just not true anymore these days. I've used WebRTC between Firefox, Safari, and Chrome without any issues.

> only if you use the same kind of software and codecs, for example Chromium, that requires dozens of gigabytes of disk space and much RAM, CPU time to build it.

There seem to be non-browser implementations [1] [2], although I can't vouch for their quality.

[1] https://liburtc.org/

[2] https://github.com/awslabs/amazon-kinesis-video-streams-webr...

replies(2): >>40087932 #>>40090115 #
2. Sean-Der ◴[] No.40087932[source]
libdatachannel[0] is exciting me the most for 'low footprint'. str0m[1] is especially exciting, but you have to be in a device/ecosystem that allows rust.

> only if you use the same kind of software and codecs

With WebRTC I can connect clients with varying support of H264, VP8, VP9, AV1, Opus, ulaw and alaw. WebRTC has plenty of flaws, but 'lack of negotiation' is one of them.

[0] https://github.com/paullouisageneau/libdatachannel

[1] https://github.com/algesten/str0m

replies(1): >>40088099 #
3. lxgr ◴[] No.40088099[source]
Oh, this looks great! Also thank you for Pion :)

Edit: Woah, I somehow completely missed that Pion does WebRTC media too (I've only seen it in a data channel project I've toyed around with in the past). Definitely add that to my list above, and I can somewhat vouch for it, it's cool!

replies(1): >>40092559 #
4. Karrot_Kream ◴[] No.40090115[source]
I'm generally not a person who rails at bloat, but WebRTC is definitely a package. It's a suite of SIP, SRTP, ICE, STUN, TURN, and codecs to do voice/video calls. This makes it versatile and seamless but yes also heavy and opinionated. A good example is just how few blessed ways there are to use WebRTC outside of the browser.
replies(1): >>40090196 #
5. Sean-Der ◴[] No.40090196[source]
What makes something a 'blessed way'? Are you looking for community support, large corporate users etc..? Not being snarky, curious about how people see the space. Lots of implementations exist and I have used most of them for different projects, not all these projects went to production though.

* https://github.com/elixir-webrtc (Elixir)

* https://github.com/pion/webrtc (Golang)

* https://github.com/webrtc-rs/webrtc (Rust)

* https://github.com/algesten/str0m (Rust)

* https://github.com/sepfy/libpeer (C/Embedded)

* https://github.com/awslabs/amazon-kinesis-video-streams-webr... (C/Embedded)

* https://github.com/paullouisageneau/libdatachannel (C++)

* https://webrtc.googlesource.com/src/ (C++)

* https://github.com/shinyoshiaki/werift-webrtc (Typescript)

* https://github.com/sipsorcery-org/sipsorcery (C#)

* https://github.com/aiortc/aiortc (Python)

* GStreamer’s webrtcbin (C)

replies(1): >>40090790 #
6. Karrot_Kream ◴[] No.40090790{3}[source]
> Are you looking for community support, large corporate users etc..?

Lots of documentation and demonstrations. And honestly, probably a bit better SEO or maybe searching on my part. For some reason GStreamer's webrtcbin totally flew under my radar.

Also not trying to be snarky/negative about WebRTC. I think it's fantastic at what it does. But as a tinkerer, I want something with more tinkering surface area. Not to detract from the great work on WebRTC and how accessible it's made low-latency streaming.

replies(1): >>40090915 #
7. lxgr ◴[] No.40090915{4}[source]
WebRTC actually feels exceptionally tinkerable to me, with human(-ish) readable SDP offers, public RFCs, various implementations, and importantly it being accessible from JavaScript playgrounds right within the browser!

I've learned a lot about it over the years by following https://webrtchacks.com/, which does just that, i.e. taking apart various open and closed VoIP implementations (WebRTC or otherwise) and seeing how they work.

8. Sean-Der ◴[] No.40092559{3}[source]
Thank you so much for using it. I feel so honored(and surprised) that people use it. I totally stumbled into a successful project.

If I ever can be helpful with your projects reach out!