Create an input
See also: AWS API Documentation
See ‘aws help’ for descriptions of global parameters.
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>]
--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)
The different types of inputs that AWS Elemental MediaLive supports.
Possible values:
UDP_PUSH
RTP_PUSH
RTMP_PUSH
RTMP_PULL
URL_PULL
MP4_FILE
MEDIACONNECT
INPUT_DEVICE
AWS_CDI
TS_FILE
--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.
See ‘aws help’ for descriptions of global parameters.
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-json 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.
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.
InputPartnerIds -> (list)
A list of IDs for all Inputs which are partners of this one.
(string)
Placeholder documentation for __string
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 and TS_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)
The different types of inputs that AWS Elemental MediaLive supports.