Outputs: add
URI
/v1/flows/
flowArn
/outputs
HTTP methods
POST
Operation ID: AddFlowOutputs
Adds outputs to an existing flow. You can create up to 50 outputs per flow.
Name | Type | Required | Description |
---|---|---|---|
flowArn | String | True | The Amazon Resource Name (ARN) of the flow. |
Status code | Response model | Description |
---|---|---|
201 | AddFlowOutputsResponse | MediaConnect created the new resource successfully. |
400 | ResponseError | The request that you submitted is not valid. |
403 | ResponseError | You don't have the required permissions to perform this operation. |
404 | ResponseError | MediaConnect did not find the resource that you specified in the request. |
420 | ResponseError | Your account already contains the maximum number of 20 flows per account, per Region. For more information, contact AWS Support. |
429 | ResponseError | You have exceeded the service request rate limit for your MediaConnect account. |
500 | ResponseError | MediaConnect can't fulfill your request because it encountered an unexpected condition. |
503 | ResponseError | MediaConnect is currently unavailable. Try again later. |
Schemas
Request bodies
{ "outputs": [ { "outputStatus": enum, "mediaStreamOutputConfigurations": [ { "encodingParameters": { "encoderProfile": enum, "compressionFactor": number }, "mediaStreamName": "string", "encodingName": enum, "destinationConfigurations": [ { "destinationIp": "string", "destinationPort": integer, "interface": { "name": "string" } } ] } ], "streamId": "string", "minLatency": integer, "destination": "string", "maxLatency": integer, "description": "string", "smoothingLatency": integer, "vpcInterfaceAttachment": { "vpcInterfaceName": "string" }, "remoteId": "string", "protocol": enum, "encryption": { "resourceId": "string", "roleArn": "string", "secretArn": "string", "constantInitializationVector": "string", "keyType": enum, "region": "string", "deviceId": "string", "url": "string", "algorithm": enum }, "port": integer, "senderControlPort": integer, "name": "string", "cidrAllowList": [ "string" ] } ] }
Response bodies
{ "outputs": [ { "outputStatus": enum, "listenerAddress": "string", "mediaStreamOutputConfigurations": [ { "encodingParameters": { "encoderProfile": enum, "compressionFactor": number }, "mediaStreamName": "string", "encodingName": enum, "destinationConfigurations": [ { "destinationIp": "string", "destinationPort": integer, "outboundIp": "string", "interface": { "name": "string" } } ] } ], "destination": "string", "description": "string", "entitlementArn": "string", "transport": { "streamId": "string", "minLatency": integer, "maxLatency": integer, "maxBitrate": integer, "sourceListenerPort": integer, "smoothingLatency": integer, "remoteId": "string", "sourceListenerAddress": "string", "senderIpAddress": "string", "protocol": enum, "senderControlPort": integer, "cidrAllowList": [ "string" ], "maxSyncBuffer": integer }, "vpcInterfaceAttachment": { "vpcInterfaceName": "string" }, "bridgeArn": "string", "outputArn": "string", "encryption": { "resourceId": "string", "roleArn": "string", "secretArn": "string", "constantInitializationVector": "string", "keyType": enum, "region": "string", "deviceId": "string", "url": "string", "algorithm": enum }, "port": integer, "bridgePorts": [ integer ], "name": "string", "dataTransferSubscriberFeePercent": integer, "mediaLiveInputArn": "string" } ], "flowArn": "string" }
{ "message": "string" }
Properties
AddFlowOutputsRequest
Adds outputs to an existing flow. You can create up to 50 outputs per flow.
Property | Type | Required | Description |
---|---|---|---|
outputs | Array of type AddOutputRequest | True | A list of outputs that you want to add. |
AddFlowOutputsResponse
The result of a successful AddOutput
request. The response includes
the details of the newly added outputs.
Property | Type | Required | Description |
---|---|---|---|
flowArn | string | True | The ARN of the flow that these outputs are associated with. |
outputs | Array of type Output | True | The details of the newly added outputs. |
AddOutputRequest
The output that you want to add to the flow.
Property | Type | Required | Description |
---|---|---|---|
cidrAllowList | Array of type string | False | The range of IP addresses that are allowed to initiate output requests to this flow. Format the IP addresses as a Classless Inter-Domain Routing (CIDR) block; for example, 10.0.0.0/16. |
description | string | False | A description of the output. This description is not visible outside of the current AWS account even if the account grants entitlements to other accounts. |
destination | string | False | The IP address from which MediaConnect sends video to output destinations. |
encryption | False | The encryption credentials that you want to use for the output. | |
maxLatency | integer Format: int64 | False | The maximum latency in milliseconds for Zixi-based streams. |
mediaStreamOutputConfigurations | Array of type MediaStreamOutputConfigurationRequest | False | The definition for each media stream that is associated with the output. |
minLatency | integer Format: int64 | False | The minimum latency in milliseconds for SRT-based streams. In streams that use the SRT protocol, this value that you set on your MediaConnect source or output represents the minimal potential latency of that connection. The latency of the stream is set to the highest number between the sender’s minimum latency and the receiver’s minimum latency. |
name | string | False | The name of the output. This value must be unique within the current flow. |
outputStatus | string Values: | False | An indication of whether the new output should be enabled or disabled as soon as it is created. If you don't specify the outputStatus field in your request, MediaConnect sets it to ENABLED. |
port | integer | False | The port to use when content is distributed to the output. |
protocol | string Values: | True | The protocol to use for the output. |
remoteId | string | False | The identifier that is assigned to the Zixi receiver. This parameter applies only to outputs that use Zixi pull. |
senderControlPort | integer Format: int32 | False | The port that the flow uses to send outbound requests to initiate connection with the sender. |
smoothingLatency | integer Format: int64 | False | The smoothing latency in milliseconds for RIST, RTP, and RTP-FEC streams. |
streamId | string | False | The stream ID that you want to use for this transport. This parameter applies only to Zixi and SRT caller-based streams. |
vpcInterfaceAttachment | False | The VPC interface that you want to send your output to. |
DestinationConfiguration
The definition of a media stream that is associated with the output.
Property | Type | Required | Description |
---|---|---|---|
destinationIp | string | True | The IP address where contents of the media stream will be sent. |
destinationPort | integer Format: int32 | True | The port to use when the content of the media stream is distributed to the output. |
interface | True | The VPC interface that is used for the media stream associated with the output. | |
outboundIp | string | True | The IP address that the receiver requires in order to establish a connection with the flow. This value is represented by the elastic network interface IP address of the VPC. This field applies only to outputs that use the CDI or ST 2110 JPEG XS or protocol. |
DestinationConfigurationRequest
The definition of a media stream that you want to associate with the output.
Property | Type | Required | Description |
---|---|---|---|
destinationIp | string | True | The IP address where you want MediaConnect to send contents of the media stream. |
destinationPort | integer Format: int32 | True | The port that you want MediaConnect to use when it distributes the media stream to the output. |
interface | True | The VPC interface that you want to use for the media stream associated with the output. |
EncodingParameters
A collection of parameters that determine how MediaConnect will convert the content. These fields only apply to outputs on flows that have a CDI source.
Property | Type | Required | Description |
---|---|---|---|
compressionFactor | number Format: float | True | A value that is used to calculate compression for an output. The bitrate of the output is calculated as follows: Output bitrate = (1 / compressionFactor) * (source bitrate) This property only applies to outputs that use the ST 2110 JPEG XS protocol, with a flow source that uses the CDI protocol. Valid values are in the range of 3.0 to 10.0, inclusive. |
encoderProfile | string Values: | True | A setting on the encoder that drives compression settings. This property only applies to video media streams associated with outputs that use the ST 2110 JPEG XS protocol, with a flow source that uses the CDI protocol. |
EncodingParametersRequest
A collection of parameters that determine how MediaConnect will convert the content. These fields only apply to outputs on flows that have a CDI source.
Property | Type | Required | Description |
---|---|---|---|
compressionFactor | number Format: float | True | A value that is used to calculate compression for an output. The bitrate of the output is calculated as follows: Output bitrate = (1 / compressionFactor) * (source bitrate) This property only applies to outputs that use the ST 2110 JPEG XS protocol, with a flow source that uses the CDI protocol. Valid values are in the range of 3.0 to 10.0, inclusive. |
encoderProfile | string Values: | True | A setting on the encoder that drives compression settings. This property only applies to video media streams associated with outputs that use the ST 2110 JPEG XS protocol, if at least one source on the flow uses the CDI protocol. |
Encryption
Information about the encryption of the flow.
Property | Type | Required | Description |
---|---|---|---|
algorithm | string Values: | False | The type of algorithm that is used for the encryption (such as aes128, aes192, or aes256). |
constantInitializationVector | string | False | 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 | False | 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 Values: | False | The type of key that is used for the encryption. If you don't specify a
|
region | string | False | 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 | False | 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 | True | The Amazon Resource Name (ARN) of the role that you created during setup (when you set up MediaConnect as a trusted entity). |
secretArn | string | False | The ARN of the secret that you created in AWS Secrets Manager to store the encryption key. |
url | string | False | 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. |
Interface
The VPC interface that you want to use for the media stream associated with the output.
Property | Type | Required | Description |
---|---|---|---|
name | string | True | The name of the VPC interface that you want to use for the media stream associated with the output. |
InterfaceRequest
The VPC interface that you want to designate where the media stream is coming from or going to.
Property | Type | Required | Description |
---|---|---|---|
name | string | True | The name of the VPC interface. |
MediaStreamOutputConfiguration
The media stream that is associated with the output, and the parameters for that association.
Property | Type | Required | Description |
---|---|---|---|
destinationConfigurations | Array of type DestinationConfiguration | False | The media streams that you want to associate with the output. |
encodingName | string Values: | True | The format that will be used to encode the data. For ancillary data streams, set the encoding name to For audio streams, set the encoding name to For video streams on sources or outputs that use the CDI protocol, set the
encoding name to For video streams on sources or outputs that use the ST 2110 JPEG XS protocol, set
the encoding name to |
encodingParameters | False | A collection of parameters that determine how MediaConnect will convert the content. These fields only apply to outputs on flows that have a CDI source. | |
mediaStreamName | string | True | A name that helps you distinguish one media stream from another. |
MediaStreamOutputConfigurationRequest
The media stream that you want to associate with the output, and the parameters for that association.
Property | Type | Required | Description |
---|---|---|---|
destinationConfigurations | Array of type DestinationConfigurationRequest | False | The media streams that you want to associate with the output. |
encodingName | string Values: | True | The format that will be used to encode the data. For ancillary data streams, set the encoding name to For audio streams, set the encoding name to For video, 2110 streams, set the encoding name to For video, JPEG XS streams, set the encoding name to |
encodingParameters | False | A collection of parameters that determine how MediaConnect will convert the content. These fields only apply to outputs on flows that have a CDI source. | |
mediaStreamName | string | True | The name of the media stream that is associated with the output. |
Output
The settings for an output.
Property | Type | Required | Description |
---|---|---|---|
bridgeArn | string | False | The ARN of the bridge that added this output. |
bridgePorts | Array of type integer | False | The bridge output ports currently in use. |
dataTransferSubscriberFeePercent | integer | False | The percentage of the entitlement data transfer fee that the subscriber is responsible for. |
description | string | False | A description of the output. This description is not visible outside of the current AWS account even if the account grants entitlements to other accounts. |
destination | string | False | The IP address where you want to send the output. This field applies only to outputs that use a push protocol, such as RIST or Zixi push. |
encryption | False | The encryption credentials that you want to use for the output. | |
entitlementArn | string | False | The ARN of the entitlement on the originator's flow. This value is relevant only on entitled flows. |
listenerAddress | string | False | The IP address that the receiver requires in order to establish a connection with the flow. For public networking, the ListenerAddress is represented by the elastic IP address of the flow. For private networking, the ListenerAddress is represented by the elastic network interface IP address of the VPC. This field applies only to outputs that use a pull protocol, such as Zixi pull or SRT listener. |
mediaLiveInputArn | string | False | The input ARN of the AWS Elemental MediaLive channel. This parameter is relevant only for outputs that were added by creating a MediaLive input. |
mediaStreamOutputConfigurations | Array of type MediaStreamOutputConfiguration | False | The configuration for each media stream that is associated with the output. |
name | string | True | The name of the output. This value must be unique within the current flow. |
outputArn | string | True | The ARN of the output. |
outputStatus | string Values: | False | An indication of whether the output is transmitting data or not. |
port | integer | False | The port to use when content is distributed to the output. |
transport | False | Attributes that are related to the transport stream. | |
vpcInterfaceAttachment | False | The VPC interface that you want to send your output to. |
ResponseError
An exception raised by MediaConnect when you submit a request that cannot be completed. For more information, see the error message and documentation for the operation.
Property | Type | Required | Description |
---|---|---|---|
message | string | True | The specific error message that MediaConnect returns to help you understand the reason that the request did not succeed. |
Transport
Attributes that are related to the transport stream.
Property | Type | Required | Description |
---|---|---|---|
cidrAllowList | Array of type string | False | The range of IP addresses that are allowed to initiate output requests to this flow. Format the IP addresses as a Classless Inter-Domain Routing (CIDR) block; for example, 10.0.0.0/16. |
maxBitrate | integer Format: int64 | False | The maximum bitrate for RIST, RTP, and RTP-FEC streams. |
maxLatency | integer Format: int64 | False | The maximum latency in milliseconds for a RIST source, a Zixi-based source, a Fujitsu-based source, or a Zixi-based output. |
maxSyncBuffer | integer Format: int32 | False | The size of the buffer (in milliseconds) to use to sync incoming source data. |
minLatency | integer Format: int64 | False | The minimum latency in milliseconds for SRT-based streams. In streams that use the SRT protocol, this value that you set on your MediaConnect source or output represents the minimal potential latency of that connection. The latency of the stream is set to the highest number between the sender’s minimum latency and the receiver’s minimum latency. |
protocol | string Values: | True | The protocol that is used by the source or output. |
remoteId | string | False | The identifier that is assigned to the Zixi receiver. This parameter applies only to outputs that use Zixi pull. |
senderControlPort | integer Format: int32 | False | The port that the flow uses to send outbound requests to initiate connection with the sender. |
senderIpAddress | string | False | The IP address that the flow communicates with to initiate connection with the sender. |
smoothingLatency | integer Format: int64 | False | The smoothing latency in milliseconds for RIST, RTP, and RTP-FEC streams. |
sourceListenerAddress | string | False | Source IP or domain name for SRT-caller protocol. |
sourceListenerPort | integer | False | Source port for SRT-caller protocol. |
streamId | string | False | The stream ID that you want to use for this transport. This parameter applies only to Zixi and SRT caller-based streams. |
VpcInterfaceAttachment
The VPC interface that you want to send your output to.
Property | Type | Required | Description |
---|---|---|---|
vpcInterfaceName | string | False | The name of the VPC interface that you want to send your output to. |
See also
For more information about using this API in one of the language-specific AWS SDKs and references, see the following: