DominikWolek

DominikWolek

Membrane Core Team

Announcing our new Jellyfish Organization

Our WebRTC implementation is growing. Its core is the Membrane RTC Engine, which is a SFU library that comes with four client SDKs — in Kotlin, Swift, React and TypeScript. On top of that, we have built an exemplary, open-source video conferencing system that is available online. All of these things are slowly being pushed to production.

In the meantime, interest in our WebRTC implementation has significantly increased.. More and more questions are asked on our Discord server, and a growing number of new contributors are willing to add new features and implement missing parts of the WebRTC standard. We have also seen an increase in people trying to use the Membrane RTC Engine in their applications.

Although keeping all WebRTC-related repositories in the membraneframework organization allows us to easily show the new domain Membrane is able to handle, it also has several drawbacks. First of all, it’s hard for newcomers to discover all related pieces, as there are about 100 repositories in the whole membraneframework organization. Their nature is also different, as they are mostly plugins that cannot be used on their own. Another drawback is that we cannot directly compare our WebRTC implementation to similar solutions, as Membrane itself is a framework. Therefore, we decided that it’s a good time to separate all WebRTC-related repositories to a new organization.

To start off, the organization is going to be called Jellyfish. Establishing the final branding might take us some time, but because there is so much exciting work ahead of us, we don’t want to wait any longer.

The work we are talking about is the new standalone media server. It can be thought of as a multimedia bridge meant for creating different types of multimedia systems. For example, it will be a perfect choice for a real-time video conferencing system, a broadcasting solution or both at the same time. The unique feature of our media server is the ability to combine different multimedia protocols. For example, one can stream video from its CCTV camera via RTSP to the server, convert it to WebRTC and send to its web application. In general, there are no limitations.

At the beginning, our standalone server is going to be focused on WebRTC and HLS, but we are planning to add more protocols in the future (RTMP, RTSP, etc.). The server will be provided as both precompiled binaries and Docker images, so that it will be easy to install and run on your OS (except Windows ofc :)).

Last but not least, all the knowledge on how the media server works (particularly how to implement server side WebRTC features like simulcast or how to convert WebRTC to HLS), will be published on GitHub as an open book everyone can contribute to.

Where Next?

Popular in Questions Top

9mm
I am constructing a JSON object (map) and I need to conditionally set a field. I’m trying to write proper elixir-way code… and I’m at a l...
New
chrisalley
ExUnit now has describe blocks which is a welcome addition coming from RSpec. In the docs, it states that nested hierarchies of describe ...
New
electic
Hi, I am new to Elixir. I am trying to use the DateTime component to insert a date into MySQL however the there seems to be no way to fo...
New
myronmarston
The Elixir Typespec docs show the following syntax for keyword lists in typespecs: # ... | [key: type] # keyword lists...
New
LegitStack
I’m trying to make a websocket server in Phoenix or raw Elixir. I heard about gun, I think I could use cowboy, but since I’m not that sma...
New
Emily
I have VueJS GUIs with the project generated using Webpack. I have Elixir modules that will need to be used by the VueJS GUIs. I forese...
New
nobody
Hi! In PHP: $_SERVER[‘SERVER_ADDR’] - in Elixir? Searched the docs for ip address and the web, no good results. Thanks!
New
earth10
Hi, I’m just starting to build a side-project with Elixir and Phoenix and doing some basic test with Elixir alone. What strikes me is th...
New
jononomo
For some reason my phoenix channels are working for me in my local dev environment, but as soon as I deploy via Docker, I get a 403 error...
New
svb
Hi! Currently I want to submit a form by pressing the Enter key. However, since my input field is of type “textarea” this is just adds a...
New

Other popular topics Top

sorentwo
Hello! tl;dr Announcing Oban, an Ecto based job processing library with a focus on reliability and historical observability. After spen...
985 43487 311
New
Darmani72
If I have a post route which an argument: post /my_post_route/:my_param1, MyController.my_post_handler How would get the post params ...
New
jerry
Good day to you all. I have been struggling to get a query involving like and ilike to work. Can anyone assist me on this, please? pro...
New
freewebwithme
Using vs code and installed ElixirLS: support and debugger. And I got an error popped up on start up says Failed to run ‘elixir’ comma...
New
Emily
I have VueJS GUIs with the project generated using Webpack. I have Elixir modules that will need to be used by the VueJS GUIs. I forese...
New
vonH
When I run the Plug and I recompile I wind up having to use Ctrl C to quit iex and start again. Witht the help of rlwrap I can use the cu...
New
saif
Hello everyone, Long time lurker first time poster here. I’ve recently begun working on Elixir full-time again! :raised_hands: It’s been...
New
romenigld
I am trying to run a deploy with docker and I successfully runned with this command: docker build -t romenigld/blog-prod . but when I t...
New
Qqwy
Update: How to use the Blogs & Podcasts section You can post links to your blog posts or podcasts either in one of the Official Blog...
3271 127089 1222
New
jononomo
For some reason my phoenix channels are working for me in my local dev environment, but as soon as I deploy via Docker, I get a 403 error...
New

We're in Beta

About us Mission Statement