Overview
HTTP API is the most direct way to configure and manage a Smelter server. This section will highlight the base element that you need to be familiar to leverage this API.
Routes
List of all HTTP routes can be found here.
Events
Smelter can deliver events in response to certain state changes. To receive them you need to establish WebSocket connection to this endpoint.
See events page to learn more.
Components
Components are a fundamental building blocks for configuring video composition. Some of them represent final elements that will be rendered on an output stream, and some are just a way to define a layout for their child components.
A scene is a component tree assigned to a specific Smelter output. It starts with a root component and includes are its children (both direct and indirect). Scene can be defined when:
Smelter supports following components:
Inputs
Inputs are a way of connecting external video and audio sources. They can consume media from static files, streams or connected devices. To use an input you need to register it first with a input register request. After registration, you can use InputStream component in the scene definition to include it in the composed output.
Outputs
Similar to inputs, outputs require registering them before they can be utilized. You can register an output by using output register request. Part of the register requests are fields video.initial
and audio.initial
that describe starting scene that can be latter updated with output update request
Resources
Other than inputs and outputs, Smelter supports a few other types of entities that also need to be registered.