[ aws . mediaconnect ]

add-flow-outputs

Description

Adds outputs to an existing flow. You can create up to 50 outputs per flow.

See also: AWS API Documentation

See ‘aws help’ for descriptions of global parameters.

Synopsis

  add-flow-outputs
--flow-arn <value>
--outputs <value>
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]

Options

--flow-arn (string) The flow that you want to add outputs to.

--outputs (list) A list of outputs that you want to add.(structure)

The output that you want to add to this flow.

CidrAllowList -> (list)

The range of IP addresses that should be allowed to initiate output requests to this flow. These IP addresses should be in the form of a Classless Inter-Domain Routing (CIDR) block; for example, 10.0.0.0/16.

(string)

Description -> (string)

A description of the output. This description appears only on the AWS Elemental MediaConnect console and will not be seen by the end user.

Destination -> (string)

The IP address from which video will be sent to output destinations.

Encryption -> (structure)

The type of key used for the encryption. If no keyType is provided, the service will use the default setting (static-key).

Algorithm -> (string)

The type of algorithm that is used for the encryption (such as aes128, aes192, or aes256).

ConstantInitializationVector -> (string)

A 128-bit, 16-byte hex value represented by a 32-character string, to be used with the key for encrypting content. This parameter is not valid for static key encryption.

DeviceId -> (string)

The value of one of the devices that you configured with your digital rights management (DRM) platform key provider. This parameter is required for SPEKE encryption and is not valid for static key encryption.

KeyType -> (string)

The type of key that is used for the encryption. If no keyType is provided, the service will use the default setting (static-key).

Region -> (string)

The AWS Region that the API Gateway proxy endpoint was created in. This parameter is required for SPEKE encryption and is not valid for static key encryption.

ResourceId -> (string)

An identifier for the content. The service sends this value to the key server to identify the current endpoint. The resource ID is also known as the content ID. This parameter is required for SPEKE encryption and is not valid for static key encryption.

RoleArn -> (string)

The ARN of the role that you created during setup (when you set up AWS Elemental MediaConnect as a trusted entity).

SecretArn -> (string)

The ARN of the secret that you created in AWS Secrets Manager to store the encryption key. This parameter is required for static key encryption and is not valid for SPEKE encryption.

Url -> (string)

The URL from the API Gateway proxy that you set up to talk to your key server. This parameter is required for SPEKE encryption and is not valid for static key encryption.

MaxLatency -> (integer)

The maximum latency in milliseconds for Zixi-based streams.

Name -> (string)

The name of the output. This value must be unique within the current flow.

Port -> (integer)

The port to use when content is distributed to this output.

Protocol -> (string)

The protocol to use for the output.

RemoteId -> (string)

The remote ID for the Zixi-pull output stream.

SmoothingLatency -> (integer)

The smoothing latency in milliseconds for RIST, RTP, and RTP-FEC streams.

StreamId -> (string)

The stream ID that you want to use for this transport. This parameter applies only to Zixi-based streams.

VpcInterfaceAttachment -> (structure)

The name of the VPC interface attachment to use for this output.

VpcInterfaceName -> (string)

The name of the VPC interface to use for this output.

Shorthand Syntax:

CidrAllowList=string,string,Description=string,Destination=string,Encryption={Algorithm=string,ConstantInitializationVector=string,DeviceId=string,KeyType=string,Region=string,ResourceId=string,RoleArn=string,SecretArn=string,Url=string},MaxLatency=integer,Name=string,Port=integer,Protocol=string,RemoteId=string,SmoothingLatency=integer,StreamId=string,VpcInterfaceAttachment={VpcInterfaceName=string} ...

JSON Syntax:

[
  {
    "CidrAllowList": ["string", ...],
    "Description": "string",
    "Destination": "string",
    "Encryption": {
      "Algorithm": "aes128"|"aes192"|"aes256",
      "ConstantInitializationVector": "string",
      "DeviceId": "string",
      "KeyType": "speke"|"static-key",
      "Region": "string",
      "ResourceId": "string",
      "RoleArn": "string",
      "SecretArn": "string",
      "Url": "string"
    },
    "MaxLatency": integer,
    "Name": "string",
    "Port": integer,
    "Protocol": "zixi-push"|"rtp-fec"|"rtp"|"zixi-pull"|"rist",
    "RemoteId": "string",
    "SmoothingLatency": integer,
    "StreamId": "string",
    "VpcInterfaceAttachment": {
      "VpcInterfaceName": "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.

Examples

To add outputs to a flow

The following add-flow-outputs example adds outputs to the specified flow.

aws mediaconnect add-flow-outputs \
--flow-arn arn:aws:mediaconnect:us-east-1:111122223333:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:BaseballGame \
--outputs Description='NYC stream',Destination=192.0.2.12,Name=NYC,Port=3333,Protocol=rtp-fec,SmoothingLatency=100 Description='LA stream',Destination=203.0.113.9,Name=LA,Port=4444,Protocol=rtp-fec,SmoothingLatency=100

Output:

{
    "Outputs": [
        {
            "Port": 3333,
            "OutputArn": "arn:aws:mediaconnect:us-east-1:111122223333:output:2-3aBC45dEF67hiJ89-c34de5fG678h:NYC",
            "Name": "NYC",
            "Description": "NYC stream",
            "Destination": "192.0.2.12",
            "Transport": {
                "Protocol": "rtp-fec",
                "SmoothingLatency": 100
            }
        },
        {
            "Port": 4444,
            "OutputArn": "arn:aws:mediaconnect:us-east-1:111122223333:output:2-987655dEF67hiJ89-c34de5fG678h:LA",
            "Name": "LA",
            "Description": "LA stream",
            "Destination": "203.0.113.9",
            "Transport": {
                "Protocol": "rtp-fec",
                "SmoothingLatency": 100
            }
        }
    ],
    "FlowArn": "arn:aws:mediaconnect:us-east-1:111122223333:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:BaseballGame"
}

For more information, see Adding Outputs to a Flow in the AWS Elemental MediaConnect User Guide.

Output

FlowArn -> (string)

The ARN of the flow that these outputs were added to.

Outputs -> (list)

The details of the newly added outputs.

(structure)

The settings for an output.

DataTransferSubscriberFeePercent -> (integer)

Percentage from 0-100 of the data transfer cost to be billed to the subscriber.

Description -> (string)

A description of the output.

Destination -> (string)

The address where you want to send the output.

Encryption -> (structure)

The type of key used for the encryption. If no keyType is provided, the service will use the default setting (static-key).

Algorithm -> (string)

The type of algorithm that is used for the encryption (such as aes128, aes192, or aes256).

ConstantInitializationVector -> (string)

A 128-bit, 16-byte hex value represented by a 32-character string, to be used with the key for encrypting content. This parameter is not valid for static key encryption.

DeviceId -> (string)

The value of one of the devices that you configured with your digital rights management (DRM) platform key provider. This parameter is required for SPEKE encryption and is not valid for static key encryption.

KeyType -> (string)

The type of key that is used for the encryption. If no keyType is provided, the service will use the default setting (static-key).

Region -> (string)

The AWS Region that the API Gateway proxy endpoint was created in. This parameter is required for SPEKE encryption and is not valid for static key encryption.

ResourceId -> (string)

An identifier for the content. The service sends this value to the key server to identify the current endpoint. The resource ID is also known as the content ID. This parameter is required for SPEKE encryption and is not valid for static key encryption.

RoleArn -> (string)

The ARN of the role that you created during setup (when you set up AWS Elemental MediaConnect as a trusted entity).

SecretArn -> (string)

The ARN of the secret that you created in AWS Secrets Manager to store the encryption key. This parameter is required for static key encryption and is not valid for SPEKE encryption.

Url -> (string)

The URL from the API Gateway proxy that you set up to talk to your key server. This parameter is required for SPEKE encryption and is not valid for static key encryption.

EntitlementArn -> (string)

The ARN of the entitlement on the originator’’s flow. This value is relevant only on entitled flows.

MediaLiveInputArn -> (string)

The input ARN of the AWS Elemental MediaLive channel. This parameter is relevant only for outputs that were added by creating a MediaLive input.

Name -> (string)

The name of the output. This value must be unique within the current flow.

OutputArn -> (string)

The ARN of the output.

Port -> (integer)

The port to use when content is distributed to this output.

Transport -> (structure)

Attributes related to the transport stream that are used in the output.

CidrAllowList -> (list)

The range of IP addresses that should be allowed to initiate output requests to this flow. These IP addresses should be in the form of a Classless Inter-Domain Routing (CIDR) block; for example, 10.0.0.0/16.

(string)

MaxBitrate -> (integer)

The smoothing max bitrate for RIST, RTP, and RTP-FEC streams.

MaxLatency -> (integer)

The maximum latency in milliseconds. This parameter applies only to RIST-based and Zixi-based streams.

Protocol -> (string)

The protocol that is used by the source or output.

RemoteId -> (string)

The remote ID for the Zixi-pull stream.

SmoothingLatency -> (integer)

The smoothing latency in milliseconds for RIST, RTP, and RTP-FEC streams.

StreamId -> (string)

The stream ID that you want to use for this transport. This parameter applies only to Zixi-based streams.

VpcInterfaceAttachment -> (structure)

The name of the VPC interface attachment to use for this output.

VpcInterfaceName -> (string)

The name of the VPC interface to use for this output.