ion-sfu
mediasoup
ion-sfu | mediasoup | |
---|---|---|
4 | 24 | |
903 | 5,904 | |
- | 1.0% | |
0.0 | 9.5 | |
10 months ago | 4 days ago | |
Go | C++ | |
MIT License | ISC License |
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.
ion-sfu
- Jitsi: More secure, more flexible, and completely free video conferencing
-
Ask HN: Why is there no enterprise grade open-source zoom alternative?
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?
go get: module github.com/pion/ion-sfu@upgrade 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
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
mediasoup
- WebRTC for the Curious
-
Implementing group video conference seems quite hard. Any tips on what I might be doing wrong ?
Given the financial restraint, i was avoiding paid API's like twilio. I started looking at mediasoup https://github.com/versatica/mediasoup, but while implementing the SFU server, its seems a lot more involved. For ex, TURN and STUN, peers negotiating different video codecs, adaptively changing the quality of video etc. Is it usually this difficult to implement a video conferencing apps ?
-
STUNner Kubernetes media gateway for WebRTC
This release ships lots of new features to the already comprehensive set of them. Currently, we offer several working tutorials on how to set up STUNner with widely used WebRTC media servers and other applications that use WebRTC in Kubernetes, such as: - LiveKit - Jitsi - mediasoup - n.eko - Kurento
-
Free - Self-hosted - WebRTC - alternative to Zoom, Teams, Google Meet - Real time video calls, chat, screen sharing, file sharing, collaborative whiteboard, dashboard, rooms scheduler and more!
Architecture WebRTC SFU (server with Selective Forwarding Unit). Can handle unlimited rooms without limits of time, each having 8+ users, potentially many as it is scalable. Routing is a multiparty topology, where each participant sends its media to the MiroTalk media server mediasoup and receives all other’s media from it. This version is Ideally suited for large group video conferences.
-
Free Secure WebRTC P2P/SFU/C2C Video Calls, Screen Sharing, File Sharing, Chat and more.
I started the MiroTalk P2P & MiroTalk SFU projects during the pandemic period (about 1+ year ago), not knowing anything about the WebRTC. Making often the video conferences with my colleagues and not wanting to depend on Zoom, Teams, Google Meet... I decided to do some research about how it works and from there MiroTalk was born :) I Giving to everyone the chance to have its own instance of MiroTalk, which can be customized as you like and run in any cloud, vps, server. If you're just starting out, I suggest you take a look at the MiroTalk C2C (New) code, which can be a good starting point to understand how the architecture WebRTC Mesh (P2P) works. Later you can also study how the WebRTC SFU (Selective Forwarding Units - I recommend mediasoup which I personally love) or MCU (Multipoint Control Unit) architecture works. I wish you all the best!
- Jitsi: More secure, more flexible, and completely free video conferencing
-
WebRTC 102: Understanding libWebrtc
The "Mediasoup" project provides a high level JavaScript/TypeScript interface to the WebRTC APIs. The core logic of this project is implemented in C++/Rust. Consider taking a look at the project if you want an easy-to-use library instead of the low-level libWebRTC APIs. A notable project to mention is the Pion/webrtc project which has a Golang implementation of the WebRTC API. Of course, we should mention the rust port WebRTC.rs. Let’s keep all the rustaceans happy too!
-
Germany Forces a Microsoft 365 Ban Due to Privacy Concerns
Indeed, maddening, especially as the wonderful https://mediasoup.org/ is developed here. Europe will never have great tech companies when the answer seems to be throwing €€€ away instead of investing locally
-
WebRTC P2P/SFU - Open Source - Alternative to Jitsi, Zoom, Google-Meet, Microsoft-Teams...
Hello thedominux, Thanks for your interest in MiroTalk ;) MiroTalk SFU code is: - JAVA-SCRIPT: 85.2% - HTML: 10.0% - CSS: 4.5% And has built in mediasoup server, more details about: https://mediasoup.org/
-
How to Build a Video Chat App: Types, Cost, & Must-Have Features
Mediasoup
What are some alternatives?
livekit-server - Scalable, high-performance WebRTC SFU. SDKs in JavaScript, React, React Native, Flutter, Swift, Kotlin, Unity/C#, Go, Ruby and Node. [Moved to: https://github.com/livekit/livekit]
Pion WebRTC - Pure Go implementation of the WebRTC API
peer-calls - Group peer to peer video calls for everyone written in Go and TypeScript
janus-gateway - Janus WebRTC Server
ion - Real-Distributed RTC System by pure Go and Flutter
jitsi - Jitsi is an audio/video and chat communicator that supports protocols such as SIP, XMPP/Jabber, IRC and many other useful features.
kratos - Your ultimate Go microservices framework for the cloud-native era.
peerjs - Simple peer-to-peer with WebRTC.
protocol - LiveKit protocol. Protobuf definitions for LiveKit's signaling protocol
webrtc-without-signaling-server - webrtc without signaling server. a stun server is still used if connecting over the internet.
Ether1 - Official Go implementation of The Etho Protocol
mirotalk - 🚀 WebRTC - P2P - Simple, Secure, Fast Real-Time Video Conferences Up to 4k and 60fps, compatible with all browsers and platforms.