# Membrane Smelter Plugin v0.12.2 - Table of Contents

> Smelter SDK for Membrane Multimedia Framework

## Pages

- [Membrane Smelter Plugin](readme.md)
- [LICENSE](license.md)

## Modules

- [Membrane.Smelter](Membrane.Smelter.md): Membrane SDK for [Smelter](https://github.com/software-mansion/smelter).
- [Membrane.Smelter.Context](Membrane.Smelter.Context.md): Context of Smelter. Specifies Smelter inputs and outputs.

- [Membrane.Smelter.Lifecycle](Membrane.Smelter.Lifecycle.md): Lifecycle of the input and output streams.

- Encoders
  - [Membrane.Smelter.Encoder.FFmpegH264](Membrane.Smelter.Encoder.FFmpegH264.md): Options for H264 encoder from FFmpeg.

  - [Membrane.Smelter.Encoder.Opus](Membrane.Smelter.Encoder.Opus.md): Options for OPUS encoder.

- Requests
  - [Membrane.Smelter.Request](Membrane.Smelter.Request.md): Notifications that can be sent to Smelter to trigger certain actions.
  - [Membrane.Smelter.Request.KeyframeRequest](Membrane.Smelter.Request.KeyframeRequest.md): Request to trigger additional keyframe generation for a specified output.

  - [Membrane.Smelter.Request.RegisterImage](Membrane.Smelter.Request.RegisterImage.md): Request to register an image.

  - [Membrane.Smelter.Request.RegisterShader](Membrane.Smelter.Request.RegisterShader.md): Request to register a shader instance.

  - [Membrane.Smelter.Request.UnregisterImage](Membrane.Smelter.Request.UnregisterImage.md): Request to unregister an image.

  - [Membrane.Smelter.Request.UnregisterInput](Membrane.Smelter.Request.UnregisterInput.md): Request to unregister an input stream. Unregister will happen automatically when you unlink the
pads.

  - [Membrane.Smelter.Request.UnregisterOutput](Membrane.Smelter.Request.UnregisterOutput.md): Request to unregister an output stream. Unregister will happen automatically when you unlink the
pads.

  - [Membrane.Smelter.Request.UnregisterShader](Membrane.Smelter.Request.UnregisterShader.md): Request to unregister a shader instance.

  - [Membrane.Smelter.Request.UpdateAudioOutput](Membrane.Smelter.Request.UpdateAudioOutput.md): Request to update configuration of an audio output. You can define what inputs and volume should
be used to produce the output.

  - [Membrane.Smelter.Request.UpdateVideoOutput](Membrane.Smelter.Request.UpdateVideoOutput.md): Request to update the scene definition that describes what should be rendered on a specified output.

## See Also

- [Membrane Framework AI Skill](https://hexdocs.pm/membrane_core/skill.md)
- [Membrane Core](https://hexdocs.pm/membrane_core/llms.txt)
