Expand description

Workflow steps are individual actions that can be taken on media as part of a media pipeline.

Modules

This step utilizes ffmpeg to create an HLS playlist.

This workflow step utilizes ffmpeg to read video from an external source. The external source can be a remote RTMP server or a file on the file system. If ffmpeg closes (such as when the video file has been fully streamed) then the ffmpeg will restart until the workflow is removed.

This step utilizes the ffmpeg endpoint to send media to an external system, such as another RTMP server.

A workflow step that that utilizes the ffmpeg executable to transcode media streams. When a new stream comes into the step, it will coordinate with the RTMP server endpoint to provision a special app/stream key combination to push a video stream out and another app/stream key combination to receive the transcoded video stream back.

The RTMP Receive step registers with the RTMP server endpoint to allow publishers to connect with the specified port, application name, and stream key combination. Any media packets that RTMP publishers send in will be sent to the next steps.

The RTMP watch step registers with the RTMP server endpoint to allow for RTMP clients to connect and watch media streams based on the specified port, application name, and stream key combinations. When the workflow step is passed in media notifications it passes them to the RTMP endpoint for distribution for waiting clients.

The workflow forwarder step takes all media notifications it receives and sends them to the specified workflow, using the workflow media relay. All media notifications are also passed to subsequent steps.

Structs

Represents logic for a basic workflow step that exposes streams to an RTMP endpoint so that an external system can read the video stream. This exposes a read-only interface for media, which means the external system is not expected to push media back into the same workflow as the same identifiable stream. An example of this is providing media for ffmpeg to generate HLS feeds for.

Inputs to be passed in for execution of a workflow step.

Resulting outputs that come from executing a workflow step.

Enums

Various statuses of an individual step

Traits

Trait used to handle different external resources for a single stream

Allows creating a new external stream handler for any stream

Represents the result of a future for a workflow step. It is expected that the workflow step will downcast this result into a struct that it owns.

Represents a workflow step that can be executed

Type Definitions