[ aws . medialive ]

create-input

Description

Create an input

See also: AWS API Documentation

See ‘aws help’ for descriptions of global parameters.

Synopsis

  create-input
[--destinations <value>]
[--input-devices <value>]
[--input-security-groups <value>]
[--media-connect-flows <value>]
[--name <value>]
[--request-id <value>]
[--role-arn <value>]
[--sources <value>]
[--tags <value>]
[--type <value>]
[--vpc <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--cli-auto-prompt <value>]

Options

--destinations (list) Destination settings for PUSH type inputs.(structure)

Endpoint settings for a PUSH type input.

StreamName -> (string)

A unique name for the location the RTMP stream is being pushed to.

Shorthand Syntax:

StreamName=string ...

JSON Syntax:

[
  {
    "StreamName": "string"
  }
  ...
]

--input-devices (list) Settings for the devices.(structure)

Settings for an input device.

Id -> (string)

The unique ID for the device.

Shorthand Syntax:

Id=string ...

JSON Syntax:

[
  {
    "Id": "string"
  }
  ...
]

--input-security-groups (list) A list of security groups referenced by IDs to attach to the input.(string)

Placeholder documentation for __string

Syntax:

"string" "string" ...

--media-connect-flows (list) A list of the MediaConnect Flows that you want to use in this input. You can specify as few as one Flow and presently, as many as two. The only requirement is when you have more than one is that each Flow is in a separate Availability Zone as this ensures your EML input is redundant to AZ issues. (structure)

The settings for a MediaConnect Flow.

FlowArn -> (string)

The ARN of the MediaConnect Flow that you want to use as a source.

Shorthand Syntax:

FlowArn=string ...

JSON Syntax:

[
  {
    "FlowArn": "string"
  }
  ...
]

--name (string) Name of the input.

--request-id (string) Unique identifier of the request to ensure the request is handled exactly once in case of retries.

--role-arn (string) The Amazon Resource Name (ARN) of the role this input assumes during and after creation.

--sources (list) The source URLs for a PULL-type input. Every PULL type input needs exactly two source URLs for redundancy. Only specify sources for PULL type Inputs. Leave Destinations empty. (structure)

Settings for for a PULL type input.

PasswordParam -> (string)

The key used to extract the password from EC2 Parameter store.

Url -> (string)

This represents the customer’s source URL where stream is pulled from.

Username -> (string)

The username for the input source.

Shorthand Syntax:

PasswordParam=string,Url=string,Username=string ...

JSON Syntax:

[
  {
    "PasswordParam": "string",
    "Url": "string",
    "Username": "string"
  }
  ...
]

--tags (map) A collection of key-value pairs.key -> (string)

Placeholder documentation for __string

value -> (string)

Placeholder documentation for __string

Shorthand Syntax:

KeyName1=string,KeyName2=string

JSON Syntax:

{"string": "string"
  ...}

--type (string) Placeholder documentation for InputType

Possible values:

  • UDP_PUSH

  • RTP_PUSH

  • RTMP_PUSH

  • RTMP_PULL

  • URL_PULL

  • MP4_FILE

  • MEDIACONNECT

  • INPUT_DEVICE

  • AWS_CDI

--vpc (structure) Settings for a private VPC Input. When this property is specified, the input destination addresses will be created in a VPC rather than with public Internet addresses. This property requires setting the roleArn property on Input creation. Not compatible with the inputSecurityGroups property. SecurityGroupIds -> (list)

A list of up to 5 EC2 VPC security group IDs to attach to the Input VPC network interfaces. Requires subnetIds. If none are specified then the VPC default security group will be used.

(string)

Placeholder documentation for __string

SubnetIds -> (list)

A list of 2 VPC subnet IDs from the same VPC. Subnet IDs must be mapped to two unique availability zones (AZ).

(string)

Placeholder documentation for __string

Shorthand Syntax:

SecurityGroupIds=string,string,SubnetIds=string,string

JSON Syntax:

{
  "SecurityGroupIds": ["string", ...],
  "SubnetIds": ["string", ...]
}

--cli-input-json | --cli-input-yaml (string) Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. Similarly, if provided yaml-input it will print a sample input YAML that can be used with --cli-input-yaml. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.

--cli-auto-prompt (boolean) Automatically prompt for CLI input parameters.

See ‘aws help’ for descriptions of global parameters.

Examples

To create an input

The following create-input example creates an HLS PULL input by passing in a JSON file that contains the parameters that apply to this type of input. The JSON for this example input specifies two sources (addresses) to the input, in order to support redundancy in the ingest. These addresses require passwords.

aws medialive create-input \
    --cli-input-jason file://input-hls-pull-news.json

Contents of input-hls-pull-news.json:

{
    "Name": "local_news",
    "RequestId": "cli000059",
    "Sources": [
            {
                    "Url": "https://203.0.113.13/newschannel/anytownusa.m3u8",
                    "Username": "examplecorp",
                    "PasswordParam": "/medialive/examplecorp1"
            },
       {
                    "Url": "https://198.51.100.54/fillervideos/oceanwaves.mp4",
                    "Username": "examplecorp",
                    "PasswordParam": "examplecorp2"
            }
    ],
    "Type": "URL_PULL"
}

Output:

The output repeats back the contents of the JSON file, plus the following values. All parameters are ordered alphabetically.

  • Arn for the input. The last part of the ARN is the unique input ID.

  • Attached Channels, which is always empty for a newly created input.

  • Destinations, which is empty in this example because it is used only with a PUSH input.

  • Id for the input, the same as the ID in the ARN.

  • MediaConnectFlows, which is empty in this example because it is used only with an input of type MediaConnect.

  • SecurityGroups, which is empty in this example because it is used only with a PUSH input.

  • State of this input.

  • Tags, which is empty (the default for this parameter).

For more information, see Creating an Input in the AWS Elemental MediaLive User Guide.

Output

Input -> (structure)

Placeholder documentation for Input

Arn -> (string)

The Unique ARN of the input (generated, immutable).

AttachedChannels -> (list)

A list of channel IDs that that input is attached to (currently an input can only be attached to one channel).

(string)

Placeholder documentation for __string

Destinations -> (list)

A list of the destinations of the input (PUSH-type).

(structure)

The settings for a PUSH type input.

Ip -> (string)

The system-generated static IP address of endpoint. It remains fixed for the lifetime of the input.

Port -> (string)

The port number for the input.

Url -> (string)

This represents the endpoint that the customer stream will be pushed to.

Vpc -> (structure)

The properties for a VPC type input destination.

AvailabilityZone -> (string)

The availability zone of the Input destination.

NetworkInterfaceId -> (string)

The network interface ID of the Input destination in the VPC.

Id -> (string)

The generated ID of the input (unique for user account, immutable).

InputClass -> (string)

STANDARD - MediaLive expects two sources to be connected to this input. If the channel is also STANDARD, both sources will be ingested. If the channel is SINGLE_PIPELINE, only the first source will be ingested; the second source will always be ignored, even if the first source fails. SINGLE_PIPELINE - You can connect only one source to this input. If the ChannelClass is also SINGLE_PIPELINE, this value is valid. If the ChannelClass is STANDARD, this value is not valid because the channel requires two sources in the input.

InputDevices -> (list)

Settings for the input devices.

(structure)

Settings for an input device.

Id -> (string)

The unique ID for the device.

InputSourceType -> (string)

Certain pull input sources can be dynamic, meaning that they can have their URL’s dynamically changes during input switch actions. Presently, this functionality only works with MP4_FILE inputs.

MediaConnectFlows -> (list)

A list of MediaConnect Flows for this input.

(structure)

The settings for a MediaConnect Flow.

FlowArn -> (string)

The unique ARN of the MediaConnect Flow being used as a source.

Name -> (string)

The user-assigned name (This is a mutable value).

RoleArn -> (string)

The Amazon Resource Name (ARN) of the role this input assumes during and after creation.

SecurityGroups -> (list)

A list of IDs for all the Input Security Groups attached to the input.

(string)

Placeholder documentation for __string

Sources -> (list)

A list of the sources of the input (PULL-type).

(structure)

The settings for a PULL type input.

PasswordParam -> (string)

The key used to extract the password from EC2 Parameter store.

Url -> (string)

This represents the customer’s source URL where stream is pulled from.

Username -> (string)

The username for the input source.

State -> (string)

Placeholder documentation for InputState

Tags -> (map)

A collection of key-value pairs.

key -> (string)

Placeholder documentation for __string

value -> (string)

Placeholder documentation for __string

Type -> (string)

Placeholder documentation for InputType