Membrane Stream Plugin

Hex.pmAPI DocsCircleCI

This repository contains Membrane Stream Plugin. It allows you to record a native stream of Membrane Buffers into a binary format and replay it. This capability might be useful for creating snapshots of the stream at a given point in the pipeline for usage in tests, or for communication between two parts of the pipeline without using BEAM clusters.

Format used by Membrane Stream Plugin features:

As of version 1, Membrane Stream Format supports buffers, stream formats and events. Dynamic pads are not supported.

It is part of Membrane Multimedia Framework.

Installation

The package can be installed by adding membrane_stream_plugin to your list of dependencies in mix.exs:

def deps do
[
{:membrane_stream_plugin, "~> 0.3.0"}
]
end

Usage

For usage example, please refer to examples/split_pipeline.exs. To run it, simply execute:

$ elixir examples/split_pipeline.exs

The example demonstrates a simple pipeline playing the H264 file using SDL Player, split in half using Membrane Stream Plugin capabilities.

Credits

This plugin has been built thanks to the support from dscout and Software Mansion.

dscoutSoftware Mansion

Copyright 2022, Software Mansion

Software Mansion

Licensed under the Apache License, Version 2.0