Supported input types and upstream systems - AWS Elemental MediaLive

Supported input types and upstream systems

The following table lists the input types and protocols that MediaLive supports. Descriptions of the push and pull terms follow this table.

MediaLive input type Use case Upstream system and supported protocol Live stream supported? VOD asset supported?
HLS

See HLS Inputs – Live versus file sources, after this table.

Pull an HLS stream or asset from an external endpoint using the HTTP protocol, with or without a secure connection. HTTP server or

HTTPS server

Yes Yes
HLS Pull an HLS stream or VOD asset from an AWS Elemental MediaStore container, using a secure connection. AWS Elemental MediaStore with a custom protocol Yes Yes
HLS Pull an HLS stream or VOD asset from an Amazon S3 bucket, with or without a secure connection. Amazon S3 over a custom protocol Yes

See HLS Inputs – HLS Live Input from Amazon S3, after this table.

Yes
Link Push a transport stream (TS) from an AWS Elemental Link device. AWS Elemental Link over an internal connection Yes No
MediaConnect Push a transport stream (TS) from a flow in AWS Elemental MediaConnect.

This input uses a MediaConnect flow ARN, not a URI.

AWS Elemental MediaConnect over an internal connection Yes No
MP4 Pull an MP4 file from an HTTP server, with or without a secure connection. HTTP server or

HTTPS server

No Yes, with .mp4 file extension only
MP4 Pull an MP4 file from an Amazon Simple Storage Service bucket, with or without a secure connection. See Amazon S3 Bucket Names following this table. Amazon S3 over a custom protocol No Yes, with .mp4 file extension only
RTMP Pull

See RTMP Inputs - Protocol, after this table.

Pull a stream from an external endpoint using the RTMP protocol. RTMP server over RTMP Pull Yes Yes
RTMP Push

See RTMP Inputs - Protocol.

Push a stream to a fixed endpoint on MediaLive using the RTMP protocol. RTMP server over RTMP Push Yes No
RTMP Push

See RTMP Inputs - Protocol.

Push a stream in your VPC to a fixed endpoint on MediaLive, using the RTMP protocol. Amazon VPC over RTMP within a private cloud Yes No
RTP Push a transport stream (TS) to a fixed endpoint on MediaLive, using the RTP protocol. RTP server over RTP Push Yes No
RTP Push a transport stream (TS) in your VPC to a fixed endpoint on MediaLive, using the RTP protocol. Amazon VPC over RTP within a private cloud Yes No

HLS Inputs – Live versus VOD sources

MediaLive considers an HLS input to be a live stream if the Buffer segments field has a value from 3 to 10, inclusive.

MediaLive considers the input to be a VOD asset if that field has a value of 11 or more, or 0, or undefined.

(To display this field in the Channel page, in General input settings for Network input settings, choose Network input. For HLS input settings, choose Hls input. The Buffer segments field appears.)

HLS Inputs – HLS Live Input from Amazon S3

We don't recommend Amazon S3 as a source for a live stream.

Inputs with Amazon S3 as the Upstream System – Bucket Names

With MediaLive, the bucket name can't use dot notation. For example, mycompany-videos is valid, but mycompany.videos isn't.

RTMP Inputs – Protocol

MediaLive doesn't support inputs using the RTMPS protocol.

Ingesting with an RTMP push input

An RTMP push input works as follows: the source attempts to deliver to an endpoint that is specified in the MediaLive input. There must be a handshake between the source and the MediaLive channel so that the source has information about the status of the input.

When the channel (that is connected to this input) is started, MediaLive responds to the handshake message and ingests it. When the channel is not running, MediaLive does not react; the source goes into a paused state.

A push input works only with a streaming source.

Ingesting with an RTP push input

An RTP push input works as follows: the source attempts to deliver to an endpoint that is specified in the MediaLive input. The source is unaware of whether the content is being ingested by the MediaLive channel.

When the channel (that is connected to this input) is started, MediaLive reacts to the source and ingests it. When the channel is not running, MediaLive does not react; the source continues to publish to the endpoint, but MediaLive ignores that action.

A push input works only with a streaming source.

Ingesting with a pull input

A pull input works as follows: the source continually publishes to an endpoint that is outside of MediaLive. When the channel (that is connected to the input) is running, MediaLive connects to the input and ingests the content.

When the channel is not running, MediaLive does not connect to the input. (There might be other applications that do connect.)

A pull input works with a streaming input (where the source is continually being published) or a VOD input (where the source is made available on the endpoint and then does not change).