Membrane Matroska Plugin
View SourceMembrane plugin for muxing and demuxing files in the Matroska format.
It is part of Membrane Multimedia Framework.
- Both muxer and demuxer support tracks encoded with VP8, VP9, H264 and Opus.
- Opus tracks with more than 2 channels are not supported.
- Demuxing of files containing laced frames is not supported.
- Passing tag values is not supported
Installation
The package can be installed by adding membrane_matroska_plugin to your list of dependencies in mix.exs:
def deps do
[
{:membrane_matroska_plugin, "~> 0.6.1"}
]
endUsage
Membrane.Matroska.Muxer
Matroska muxer requires a sink that can handle Membrane.File.SeekEvent, e.g. Membrane.File.Sink.
For an example of muxing streams to a regular matroska file, refer to examples/muxer_h264.exs.
To run the example, you can use the following command:
elixir examples/muxer_h264.exs
### Membrane.Matroska.Demuxer
For an example of demuxing streams, refer to examples/demuxer_h264.exs.
To run the example, use the following command:
elixir examples/demuxer_h264.exs
You can expect demuxing_output folder to appear and contain an audio file 2.ogg and a video file 1.h264.
## Copyright and License
Copyright 2022, Software Mansion
Licensed under the Apache License, Version 2.0