Łukasz Kita

Software Mansion

Membrane

Concurrency, Functional Paradigm and Dynamic Flow Control in Multimedia Processing Pipelines

Cracking the code of multimedia processing is no easy feat, and achieving reliability and efficiency simultaneously only adds to the challenge! How to incorporate some verified programming approaches and create a tool, that can take that burden off of its users’ shoulders and let them play with their favorite codecs and containers? Throughout my talk, we will look under the hood of Membrane, an open-source multimedia processing framework, crafted in Elixir. Together we will reach the limitations of multimedia processing parallelization and wrap that processing into functional design patterns. I will also tell a few words on how to effortlessly integrate “offline” data sources and sinks with their “online” counterparts. The presentation will be enlivened by a live demonstration of Membrane using Elixir’s Livebook notebook. I will showcase the seamless fusion of preexisting Membrane components and the custom ones, resulting in a functional, elegant, and easily understandable solution.