Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
We haven't tracked posts mentioning ion yet.
Tracking mentions began in Dec 2020.
Ask HN: Why is there no enterprise grade open-source zoom alternative?
6 projects | news.ycombinator.com | 25 May 2022
There's nothing particularly difficult on the server side — a quality SFU should be capable to handle on the order of 400 video flows per core, and there are quite a few high-quality free software SFUs available (Janus, Jitsi, ion-sfu, livekit, Galene). To give some perspective: we're using Galene for lectures, and our single-CPU server uses around 40% CPU usage in a room with 120 students (who keep their cameras switched off during the lecture, of course, and only occasionally switch them on to ask questions).
As the grandparent mentioned, the problem is the client side. Since there is no standard videoconferencing protocol, every free software project needs to develop their own clients. And it's difficult for a free software project to have the manpower and expertise to develop quality clients for the web, Android and iOS, so in effect what we currently have are mostly half-baked web clients.
There is some hope, though. The IETF have been working on standard protocols for ingress (https://datatracker.ietf.org/wg/wish/), and if their protocols get deployed, you'll be able to use the same streaming software (think OBS) or IP camera with multiple distinct videoconferencing servers. An interoperable interactive videoconferencing protocol is nowhere near, but as more people understand videoconferencing technology, there is some hope that people will get together and start working on multi-protocol clients (remember Pidgin?).
Full disclosure: I'm the author of Galene (https://galene.org), and I've been actively participating in the Pion community (https://github.com/pion/webrtc) and collaborating with the authors of ion-sfu (https://github.com/pion/ion-sfu) and LiveKit (https://github.com/livekit).
How to build ion-sfu's pub-from-disk example?
3 projects | reddit.com/r/golang | 3 Aug 2021
go get: module github.com/pion/[email protected] found (v1.10.8), but does not contain package github.com/pion/ion-sfu/cmd/server/grpc/proto
LiveKit – open-source infrastructure for real time audio and video
2 projects | news.ycombinator.com | 19 Jul 2021
Really appreciate that they have a Protocol project, really helps quickly get a sense of what's under the hood. It's just a bunch of protobuf messages, but that's a super helpful reference, and nice to not have it embedded in one of the various other projects: https://github.com/livekit/protocol
Notably using the well known extremely well reputed super battle hardened Pion sfu, ion: https://github.com/pion/ion-sfu
What are some alternatives?
Pion WebRTC - Pure Go implementation of the WebRTC API
kratos - Your ultimate Go microservices framework for the cloud-native era.
livekit - End to end stack for WebRTC. SFU media server and SDKs
peer-calls - Group peer to peer video calls for everyone written in Go and TypeScript
webcall - The telephone, a supernatural instrument before whose miracles we used to stand amazed, and which we now employ without giving it a thought, to summon our tailor or order an ice cream. --M.Proust
protocol - LiveKit protocol. Protobuf definitions for LiveKit's signaling protocol
rtp - A Go implementation of RTP
Ether1 - Official Go implementation of The Etho Protocol
0x-mesh - A peer-to-peer network for sharing 0x orders
ion-examples - DEPRECATED, we strongly suggest you use ion-sdk-go instead!