mspanc

mspanc

Membrane Core Team

Membrane - a new framework for multimedia processing

I am pleased to announce an initial release of the Membrane Framework - an Elixir-based framework with special focus on processing multimedia streams.

It is heavily inspired by architecture of GStreamer but aims at providing implementation of way higher reliability and scalability as well as to avoid many of its shortcomings.

We have just released v0.1 which contains just small set of elements that can be used to do simple audio processing, but a great effort was put into its core in order to lay down a good architecture for developing it further. v0.2 is planned to be available in 2-3 months and it should support video processing including patterns for easily implementing hardware acceleration and tons of other improvements.

I hope in the long run we’re going to provide a seamless experience for developers involved in multimedia processing and another boost for the quickly growing Elixir community.

It is already being used in production in broadcasting software that aims at 24/7 availability for a few months.

More information:

PS. Just a few words about credits: it is a spin-off from RadioKit and it is now developed and professionally backed up by the Software Mansion.

Looking forward for feedback,

Founder,

Marcin Lewandowski

Most Liked

tomekzawada

tomekzawada

Membrane Core Team

Hi folks!

In case you were wondering how Membrane Farmework has evolved in 2019 so far, here is our latest Update on Q2 and Q3..

The most important news are of course new releases, including some breakthrough features such as

  • A/V stream synchronization
  • improved way to define pads
  • new testing API

and many more, not to mention new additional Packages.

All news regarding Membrane can be found on our Blog

Stay tuned for Q4 update soon!

Tomasz Zawada
membraneframework.org

12
Post #4
tomekzawada

tomekzawada

Membrane Core Team

Hi everyone!

Latest update on Membrane Framework for Q4 2019.

The biggest change is the introduction of bins which enables creating reusable modules and further optimizes your workflow with Membrane.

Be also sure to check the new packages.

Let us use this opportunity to wish you all the best in 2020! Enjoy exciting projects, new ventures, happy users and most of all - enjoy using Membrane!

Tomasz Zawada
membraneframework.org

mspanc

mspanc

Membrane Core Team

The summary is correct.

We have run into some issues with DTLS in latest Erlang and we have to rely on some hacks and external C code to make it work. We will consider backporting the changes to the erlang core but we don’t want to wait for the release and force users to use the most recent Erlang version so for some time we will probably stay as it is.

We started a while ago and these 2-3 months are essentialy time to assemble all these parts together, not to build this from scratch. Keep fingers crossed :slight_smile:

mspanc

mspanc

Membrane Core Team

We’re currently building a Twitch clone using Membrane. In such case, Membrane handles all server-side processing and recording of the live streams.

In the roadmap we have an apps for managing CCTV recordings (automatic analysis of the stream, cutting out the most interesting parts etc.).

mspanc

mspanc

Membrane Core Team

By the way, we’re currently working on an open-source toolkit that is based on Membrane and Janus and is kind of “starter kit” for creating a conference or webinar application.

It should handle all the hard things mentioned by @mat-hek and in the talk he referenced.

If you can wait 2-3 weeks you should be able to use it as a basis for you application.

Where Next?

Popular in Announcing Top

isaias-dias-machado
IEx’s h macro is great but it lacks a pager, so I built a small tool that caches documentation and lets you fuzzy search through it in yo...
New
jarlah
Testcontainers Testcontainers is an Elixir library that supports ExUnit tests, providing lightweight, throwaway instances of common datab...
New
Schultzer
Hey there, I wrote this low-level library recently, its goal is simply to lower the barrier between Elixir and SQL, and it does that by p...
New
mikehostetler
I’m falling in love with the Req Plugin pattern. It has limits, but when it works - it’s good. I ported over my Tesla based Fly Machines...
New
Zurga
Subscribe to events emitted by EctoWatch, and cache the changed row. Use the sync/3 function to update an in-memory row or list of rows u...
New
mikehostetler
Hey everyone! I’m excited to share ReqLLM - a new approach to LLM interactions in Elixir that I’ve been working on. After building agent...
New
bradley
I’ve been working with Claude Code extensively and absolutely love it. However, I’ve come across the challenge of managing configuration ...
New
rbino
Hey folks! I’m happy to introduce TigerBeetlex, an Elixir client for TigerBeetle, the financial transactions database. I’ve been working...
New
lostbean
Hello Elixir community! :wave: I’m excited to announce the first release of ReqCassette, a VCR-style record-and-replay library specifica...
New
sodapopcan
I’ve heard that if you’re not embarrassed by v1 of your product Vim plugin then you’ve released too late. I’ve been sitting on this the ...
New

Other popular topics Top

chrismccord
Phoenix 1.4.0 released Phoenix 1.4 is out! This release ships with exciting new features, most notably with HTTP2 support, improved deve...
688 30048 115
New
sergio_101
I am VERY much an elixir newbie. I have taken one elixir course and one phoenix course on Udemy. During that course, I saw the instructor...
New
_russellb
I want to try my hand at web scraping. What tools/libraries do I need to use. I’m hoping to turn this into something professional so don’...
New
malloryerik
Hi, this is for people who, like me, have had some friction using .html.heex templates in VSCode. The solution seems to be, in a hyphena...
New
lk-geimfari
What is most correct way to open, read and parse JSON file with poison? For example if we have example.json file in root of some projec...
New
mcarvalho
What is the difference between System.get_env and Application.get_env? For example, what are best practices to use one versus another.
New
mgjohns61585
Could someone help me? I'm making my first elixir program, number guessing game. I can't figure out how to convert the user's guess from ...
New
fayddelight
I tried installing elixir 1.11.2 erlang 23.3.4 via asdf in my zsh shell. Enabled the versions locally and globally. When I list them ...
New
fireproofsocks
Forgive me if this is obvious, but how does one delete a database record WITHOUT selecting it first? https://hexdocs.pm/ecto/Ecto.Repo.h...
New
TunkShif
This post is an instruction guide to help you setup your Neovim for Elixir development from scratch. It includes general information on h...
273 38985 115
New

We're in Beta

About us Mission Statement