flows
Creates, updates, deletes, gets or lists a flows resource.
Overview
| Name | flows |
| Type | Resource |
| Id | aws.mediaconnect.flows |
Fields
The following fields are returned by SELECT queries:
- describe_flow
- list_flows
| Name | Datatype | Description |
|---|---|---|
flow | object | The flow that you requested a description of. |
messages | object | Any errors that apply currently to the flow. If there are no errors, MediaConnect will not include this field in the response. |
| Name | Datatype | Description |
|---|---|---|
availability_zone | string | The Availability Zone that the flow was created in. |
description | string | A description of the flow. |
flow_arn | string | The ARN of the flow. |
maintenance | object | The maintenance settings for the flow. |
name | string | The name of the flow. |
source_type | string | The type of source. This value is either owned (originated somewhere other than an MediaConnect flow owned by another Amazon Web Services account) or entitled (originated at a MediaConnect flow owned by another Amazon Web Services account). (OWNED, ENTITLED) |
status | string | The current status of the flow. (STANDBY, ACTIVE, UPDATING, DELETING, STARTING, STOPPING, ERROR) |
Methods
The following methods are available for this resource:
| Name | Accessible by | Required Params | Optional Params | Description |
|---|---|---|---|---|
describe_flow | select | flow_arn, region | Displays the details of a flow. The response includes the flow Amazon Resource Name (ARN), name, and Availability Zone, as well as details about the source, outputs, and entitlements. | |
list_flows | select | region | maxResults, nextToken | Displays a list of flows that are associated with this account. This request returns a paginated result. |
create_flow | insert | region | Creates a new flow. The request must include one source. The request optionally can include outputs (up to 50) and entitlements (up to 50). | |
add_flow_media_streams | update | flow_arn, region, MediaStreams | Adds media streams to an existing flow. After you add a media stream to a flow, you can associate it with a source and/or an output that uses the ST 2110 JPEG XS or CDI protocol. | |
add_flow_vpc_interfaces | update | flow_arn, region, VpcInterfaces | Adds VPC interfaces to a flow. | |
remove_flow_media_stream | update | flow_arn, media_stream_name, region | Removes a media stream from a flow. This action is only available if the media stream is not associated with a source or output. | |
remove_flow_output | update | flow_arn, output_arn, region | Removes an output from an existing flow. This request can be made only on an output that does not have an entitlement associated with it. If the output has an entitlement, you must revoke the entitlement instead. When an entitlement is revoked from a flow, the service automatically removes the associated output. | |
remove_flow_source | update | flow_arn, source_arn, region | Removes a source from an existing flow. This request can be made only if there is more than one source on the flow. | |
remove_flow_vpc_interface | update | flow_arn, vpc_interface_name, region | Removes a VPC Interface from an existing flow. This request can be made only on a VPC interface that does not have a Source or Output associated with it. If the VPC interface is referenced by a Source or Output, you must first delete or update the Source or Output to no longer reference the VPC interface. | |
update_flow | update | flow_arn, region | Updates an existing flow. Because UpdateFlowSources and UpdateFlow are separate operations, you can't change both the source type AND the flow size in a single request. If you have a MEDIUM flow and you want to change the flow source to NDI®: First, use the UpdateFlow operation to upgrade the flow size to LARGE. After that, you can then use the UpdateFlowSource operation to configure the NDI source. If you're switching from an NDI source to a transport stream (TS) source and want to downgrade the flow size: First, use the UpdateFlowSource operation to change the flow source type. After that, you can then use the UpdateFlow operation to downgrade the flow size to MEDIUM. | |
delete_flow | delete | flow_arn, region | Deletes a flow. Before you can delete a flow, you must stop the flow. | |
add_flow_outputs | exec | flow_arn, region | Adds outputs to an existing flow. You can create up to 50 outputs per flow. | |
add_flow_sources | exec | flow_arn, region | Adds sources to a flow. | |
update_flow_media_stream | exec | flow_arn, media_stream_name, region | Updates an existing media stream. | |
update_flow_output | exec | flow_arn, output_arn, region | Updates an existing flow output. | |
update_flow_source | exec | flow_arn, source_arn, region | Updates the source of a flow. Because UpdateFlowSources and UpdateFlow are separate operations, you can't change both the source type AND the flow size in a single request. If you have a MEDIUM flow and you want to change the flow source to NDI®: First, use the UpdateFlow operation to upgrade the flow size to LARGE. After that, you can then use the UpdateFlowSource operation to configure the NDI source. If you're switching from an NDI source to a transport stream (TS) source and want to downgrade the flow size: First, use the UpdateFlowSource operation to change the flow source type. After that, you can then use the UpdateFlow operation to downgrade the flow size to MEDIUM. | |
start_flow | exec | flow_arn, region | Starts a flow. | |
stop_flow | exec | flow_arn, region | Stops a flow. |
Parameters
Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.
| Name | Datatype | Description |
|---|---|---|
flow_arn | string | The Amazon Resource Name (ARN) of the flow that you want to stop. |
media_stream_name | string | The media stream that you updated. |
output_arn | string | The ARN of the output that you want to update. |
region | string | AWS region (default: us-east-1) |
source_arn | string | The ARN of the source that you want to update. |
vpc_interface_name | string | The name of the VPC interface that you want to remove. |
maxResults | integer | The maximum number of results to return per API request. For example, you submit a ListFlows request with MaxResults set at 5. Although 20 items match your request, the service returns no more than the first 5 items. (The service also returns a NextToken value that you can use to fetch the next batch of results.) The service might return fewer results than the MaxResults value. If MaxResults is not included in the request, the service defaults to pagination with a maximum of 10 results per page. |
nextToken | string | The token that identifies the batch of results that you want to see. For example, you submit a ListFlows request with MaxResults set at 5. The service returns the first batch of results (up to 5) and a NextToken value. To see the next batch of results, you can submit the ListFlows request a second time and specify the NextToken value. |
SELECT examples
- describe_flow
- list_flows
Displays the details of a flow. The response includes the flow Amazon Resource Name (ARN), name, and Availability Zone, as well as details about the source, outputs, and entitlements.
SELECT
flow,
messages
FROM aws.mediaconnect.flows
WHERE flow_arn = '{{ flow_arn }}' -- required
AND region = '{{ region }}' -- required
;
Displays a list of flows that are associated with this account. This request returns a paginated result.
SELECT
availability_zone,
description,
flow_arn,
maintenance,
name,
source_type,
status
FROM aws.mediaconnect.flows
WHERE region = '{{ region }}' -- required
AND maxResults = '{{ maxResults }}'
AND nextToken = '{{ nextToken }}'
;
INSERT examples
- create_flow
- Manifest
Creates a new flow. The request must include one source. The request optionally can include outputs (up to 50) and entitlements (up to 50).
INSERT INTO aws.mediaconnect.flows (
AvailabilityZone,
Entitlements,
MediaStreams,
Name,
Outputs,
Source,
SourceFailoverConfig,
Sources,
VpcInterfaces,
Maintenance,
SourceMonitoringConfig,
FlowSize,
NdiConfig,
EncodingConfig,
FlowTags,
region
)
SELECT
'{{ AvailabilityZone }}',
'{{ Entitlements }}',
'{{ MediaStreams }}',
'{{ Name }}',
'{{ Outputs }}',
'{{ Source }}',
'{{ SourceFailoverConfig }}',
'{{ Sources }}',
'{{ VpcInterfaces }}',
'{{ Maintenance }}',
'{{ SourceMonitoringConfig }}',
'{{ FlowSize }}',
'{{ NdiConfig }}',
'{{ EncodingConfig }}',
'{{ FlowTags }}',
'{{ region }}'
RETURNING
flow
;
# Description fields are for documentation purposes
- name: flows
props:
- name: region
value: "{{ region }}"
description: Required parameter for the flows resource.
- name: AvailabilityZone
value: "{{ AvailabilityZone }}"
- name: Entitlements
value:
- DataTransferSubscriberFeePercent: {{ DataTransferSubscriberFeePercent }}
Description: "{{ Description }}"
Encryption:
Algorithm: "{{ Algorithm }}"
ConstantInitializationVector: "{{ ConstantInitializationVector }}"
DeviceId: "{{ DeviceId }}"
KeyType: "{{ KeyType }}"
Region: "{{ Region }}"
ResourceId: "{{ ResourceId }}"
RoleArn: "{{ RoleArn }}"
SecretArn: "{{ SecretArn }}"
Url: "{{ Url }}"
EntitlementStatus: "{{ EntitlementStatus }}"
Name: "{{ Name }}"
Subscribers: "{{ Subscribers }}"
EntitlementTags: "{{ EntitlementTags }}"
- name: MediaStreams
value:
- Attributes:
Fmtp:
ChannelOrder: "{{ ChannelOrder }}"
Colorimetry: "{{ Colorimetry }}"
ExactFramerate: "{{ ExactFramerate }}"
Par: "{{ Par }}"
Range: "{{ Range }}"
ScanMode: "{{ ScanMode }}"
Tcs: "{{ Tcs }}"
Lang: "{{ Lang }}"
ClockRate: {{ ClockRate }}
Description: "{{ Description }}"
MediaStreamId: {{ MediaStreamId }}
MediaStreamName: "{{ MediaStreamName }}"
MediaStreamType: "{{ MediaStreamType }}"
VideoFormat: "{{ VideoFormat }}"
MediaStreamTags: "{{ MediaStreamTags }}"
- name: Name
value: "{{ Name }}"
- name: Outputs
value:
- CidrAllowList: "{{ CidrAllowList }}"
Description: "{{ Description }}"
Destination: "{{ Destination }}"
Encryption:
Algorithm: "{{ Algorithm }}"
ConstantInitializationVector: "{{ ConstantInitializationVector }}"
DeviceId: "{{ DeviceId }}"
KeyType: "{{ KeyType }}"
Region: "{{ Region }}"
ResourceId: "{{ ResourceId }}"
RoleArn: "{{ RoleArn }}"
SecretArn: "{{ SecretArn }}"
Url: "{{ Url }}"
MaxLatency: {{ MaxLatency }}
MediaStreamOutputConfigurations: "{{ MediaStreamOutputConfigurations }}"
MinLatency: {{ MinLatency }}
Name: "{{ Name }}"
Port: {{ Port }}
Protocol: "{{ Protocol }}"
RemoteId: "{{ RemoteId }}"
SenderControlPort: {{ SenderControlPort }}
SmoothingLatency: {{ SmoothingLatency }}
StreamId: "{{ StreamId }}"
VpcInterfaceAttachment:
VpcInterfaceName: "{{ VpcInterfaceName }}"
OutputStatus: "{{ OutputStatus }}"
NdiSpeedHqQuality: {{ NdiSpeedHqQuality }}
NdiProgramName: "{{ NdiProgramName }}"
OutputTags: "{{ OutputTags }}"
RouterIntegrationState: "{{ RouterIntegrationState }}"
RouterIntegrationTransitEncryption:
EncryptionKeyType: "{{ EncryptionKeyType }}"
EncryptionKeyConfiguration:
SecretsManager:
SecretArn: "{{ SecretArn }}"
RoleArn: "{{ RoleArn }}"
Automatic: "{{ Automatic }}"
NdiOutputTimecodeSource: "{{ NdiOutputTimecodeSource }}"
- name: Source
description: |
The settings for the source of the flow.
value:
Decryption:
Algorithm: "{{ Algorithm }}"
ConstantInitializationVector: "{{ ConstantInitializationVector }}"
DeviceId: "{{ DeviceId }}"
KeyType: "{{ KeyType }}"
Region: "{{ Region }}"
ResourceId: "{{ ResourceId }}"
RoleArn: "{{ RoleArn }}"
SecretArn: "{{ SecretArn }}"
Url: "{{ Url }}"
Description: "{{ Description }}"
EntitlementArn: "{{ EntitlementArn }}"
IngestPort: {{ IngestPort }}
MaxBitrate: {{ MaxBitrate }}
MaxLatency: {{ MaxLatency }}
MaxSyncBuffer: {{ MaxSyncBuffer }}
MediaStreamSourceConfigurations:
- EncodingName: "{{ EncodingName }}"
InputConfigurations: "{{ InputConfigurations }}"
MediaStreamName: "{{ MediaStreamName }}"
MinLatency: {{ MinLatency }}
Name: "{{ Name }}"
Protocol: "{{ Protocol }}"
SenderControlPort: {{ SenderControlPort }}
SenderIpAddress: "{{ SenderIpAddress }}"
SourceListenerAddress: "{{ SourceListenerAddress }}"
SourceListenerPort: {{ SourceListenerPort }}
StreamId: "{{ StreamId }}"
VpcInterfaceName: "{{ VpcInterfaceName }}"
WhitelistCidr: "{{ WhitelistCidr }}"
GatewayBridgeSource:
BridgeArn: "{{ BridgeArn }}"
VpcInterfaceAttachment:
VpcInterfaceName: "{{ VpcInterfaceName }}"
NdiSourceSettings:
SourceName: "{{ SourceName }}"
SourceTags: "{{ SourceTags }}"
RouterIntegrationState: "{{ RouterIntegrationState }}"
RouterIntegrationTransitDecryption:
EncryptionKeyType: "{{ EncryptionKeyType }}"
EncryptionKeyConfiguration:
SecretsManager:
SecretArn: "{{ SecretArn }}"
RoleArn: "{{ RoleArn }}"
Automatic: "{{ Automatic }}"
- name: SourceFailoverConfig
description: |
The settings for source failover.
value:
FailoverMode: "{{ FailoverMode }}"
RecoveryWindow: {{ RecoveryWindow }}
SourcePriority:
PrimarySource: "{{ PrimarySource }}"
State: "{{ State }}"
- name: Sources
value:
- Decryption:
Algorithm: "{{ Algorithm }}"
ConstantInitializationVector: "{{ ConstantInitializationVector }}"
DeviceId: "{{ DeviceId }}"
KeyType: "{{ KeyType }}"
Region: "{{ Region }}"
ResourceId: "{{ ResourceId }}"
RoleArn: "{{ RoleArn }}"
SecretArn: "{{ SecretArn }}"
Url: "{{ Url }}"
Description: "{{ Description }}"
EntitlementArn: "{{ EntitlementArn }}"
IngestPort: {{ IngestPort }}
MaxBitrate: {{ MaxBitrate }}
MaxLatency: {{ MaxLatency }}
MaxSyncBuffer: {{ MaxSyncBuffer }}
MediaStreamSourceConfigurations: "{{ MediaStreamSourceConfigurations }}"
MinLatency: {{ MinLatency }}
Name: "{{ Name }}"
Protocol: "{{ Protocol }}"
SenderControlPort: {{ SenderControlPort }}
SenderIpAddress: "{{ SenderIpAddress }}"
SourceListenerAddress: "{{ SourceListenerAddress }}"
SourceListenerPort: {{ SourceListenerPort }}
StreamId: "{{ StreamId }}"
VpcInterfaceName: "{{ VpcInterfaceName }}"
WhitelistCidr: "{{ WhitelistCidr }}"
GatewayBridgeSource:
BridgeArn: "{{ BridgeArn }}"
VpcInterfaceAttachment:
VpcInterfaceName: "{{ VpcInterfaceName }}"
NdiSourceSettings:
SourceName: "{{ SourceName }}"
SourceTags: "{{ SourceTags }}"
RouterIntegrationState: "{{ RouterIntegrationState }}"
RouterIntegrationTransitDecryption:
EncryptionKeyType: "{{ EncryptionKeyType }}"
EncryptionKeyConfiguration:
SecretsManager:
SecretArn: "{{ SecretArn }}"
RoleArn: "{{ RoleArn }}"
Automatic: "{{ Automatic }}"
- name: VpcInterfaces
value:
- Name: "{{ Name }}"
NetworkInterfaceType: "{{ NetworkInterfaceType }}"
RoleArn: "{{ RoleArn }}"
SecurityGroupIds: "{{ SecurityGroupIds }}"
SubnetId: "{{ SubnetId }}"
VpcInterfaceTags: "{{ VpcInterfaceTags }}"
- name: Maintenance
description: |
Create a maintenance setting for a flow.
value:
MaintenanceDay: "{{ MaintenanceDay }}"
MaintenanceStartHour: "{{ MaintenanceStartHour }}"
- name: SourceMonitoringConfig
description: |
The settings for source monitoring.
value:
ThumbnailState: "{{ ThumbnailState }}"
AudioMonitoringSettings:
- SilentAudio:
State: "{{ State }}"
ThresholdSeconds: {{ ThresholdSeconds }}
ContentQualityAnalysisState: "{{ ContentQualityAnalysisState }}"
VideoMonitoringSettings:
- BlackFrames:
State: "{{ State }}"
ThresholdSeconds: {{ ThresholdSeconds }}
FrozenFrames:
State: "{{ State }}"
ThresholdSeconds: {{ ThresholdSeconds }}
- name: FlowSize
value: "{{ FlowSize }}"
valid_values: ['MEDIUM', 'LARGE', 'LARGE_4X']
- name: NdiConfig
description: |
Specifies the configuration settings for NDI sources and outputs.
value:
NdiState: "{{ NdiState }}"
MachineName: "{{ MachineName }}"
NdiDiscoveryServers:
- DiscoveryServerAddress: "{{ DiscoveryServerAddress }}"
DiscoveryServerPort: {{ DiscoveryServerPort }}
VpcInterfaceAdapter: "{{ VpcInterfaceAdapter }}"
- name: EncodingConfig
description: |
The encoding configuration to apply to the NDI® source when transcoding it to a transport stream for downstream distribution. You can choose between several predefined encoding profiles based on common use cases.
value:
EncodingProfile: "{{ EncodingProfile }}"
VideoMaxBitrate: {{ VideoMaxBitrate }}
- name: FlowTags
value: "{{ FlowTags }}"
UPDATE examples
- add_flow_media_streams
- add_flow_vpc_interfaces
- remove_flow_media_stream
- remove_flow_output
- remove_flow_source
- remove_flow_vpc_interface
- update_flow
Adds media streams to an existing flow. After you add a media stream to a flow, you can associate it with a source and/or an output that uses the ST 2110 JPEG XS or CDI protocol.
UPDATE aws.mediaconnect.flows
SET
MediaStreams = '{{ MediaStreams }}'
WHERE
flow_arn = '{{ flow_arn }}' --required
AND region = '{{ region }}' --required
AND MediaStreams = '{{ MediaStreams }}' --required
RETURNING
flow_arn,
media_streams;
Adds VPC interfaces to a flow.
UPDATE aws.mediaconnect.flows
SET
VpcInterfaces = '{{ VpcInterfaces }}'
WHERE
flow_arn = '{{ flow_arn }}' --required
AND region = '{{ region }}' --required
AND VpcInterfaces = '{{ VpcInterfaces }}' --required
RETURNING
flow_arn,
vpc_interfaces;
Removes a media stream from a flow. This action is only available if the media stream is not associated with a source or output.
UPDATE aws.mediaconnect.flows
SET
-- No updatable properties
WHERE
flow_arn = '{{ flow_arn }}' --required
AND media_stream_name = '{{ media_stream_name }}' --required
AND region = '{{ region }}' --required
RETURNING
flow_arn,
media_stream_name;
Removes an output from an existing flow. This request can be made only on an output that does not have an entitlement associated with it. If the output has an entitlement, you must revoke the entitlement instead. When an entitlement is revoked from a flow, the service automatically removes the associated output.
UPDATE aws.mediaconnect.flows
SET
-- No updatable properties
WHERE
flow_arn = '{{ flow_arn }}' --required
AND output_arn = '{{ output_arn }}' --required
AND region = '{{ region }}' --required
RETURNING
flow_arn,
output_arn;
Removes a source from an existing flow. This request can be made only if there is more than one source on the flow.
UPDATE aws.mediaconnect.flows
SET
-- No updatable properties
WHERE
flow_arn = '{{ flow_arn }}' --required
AND source_arn = '{{ source_arn }}' --required
AND region = '{{ region }}' --required
RETURNING
flow_arn,
source_arn;
Removes a VPC Interface from an existing flow. This request can be made only on a VPC interface that does not have a Source or Output associated with it. If the VPC interface is referenced by a Source or Output, you must first delete or update the Source or Output to no longer reference the VPC interface.
UPDATE aws.mediaconnect.flows
SET
-- No updatable properties
WHERE
flow_arn = '{{ flow_arn }}' --required
AND vpc_interface_name = '{{ vpc_interface_name }}' --required
AND region = '{{ region }}' --required
RETURNING
flow_arn,
non_deleted_network_interface_ids,
vpc_interface_name;
Updates an existing flow. Because UpdateFlowSources and UpdateFlow are separate operations, you can't change both the source type AND the flow size in a single request. If you have a MEDIUM flow and you want to change the flow source to NDI®: First, use the UpdateFlow operation to upgrade the flow size to LARGE. After that, you can then use the UpdateFlowSource operation to configure the NDI source. If you're switching from an NDI source to a transport stream (TS) source and want to downgrade the flow size: First, use the UpdateFlowSource operation to change the flow source type. After that, you can then use the UpdateFlow operation to downgrade the flow size to MEDIUM.
UPDATE aws.mediaconnect.flows
SET
SourceFailoverConfig = '{{ SourceFailoverConfig }}',
Maintenance = '{{ Maintenance }}',
SourceMonitoringConfig = '{{ SourceMonitoringConfig }}',
NdiConfig = '{{ NdiConfig }}',
FlowSize = '{{ FlowSize }}',
EncodingConfig = '{{ EncodingConfig }}'
WHERE
flow_arn = '{{ flow_arn }}' --required
AND region = '{{ region }}' --required
RETURNING
flow;
DELETE examples
- delete_flow
Deletes a flow. Before you can delete a flow, you must stop the flow.
DELETE FROM aws.mediaconnect.flows
WHERE flow_arn = '{{ flow_arn }}' --required
AND region = '{{ region }}' --required
;
Lifecycle Methods
- add_flow_outputs
- add_flow_sources
- update_flow_media_stream
- update_flow_output
- update_flow_source
- start_flow
- stop_flow
Adds outputs to an existing flow. You can create up to 50 outputs per flow.
EXEC aws.mediaconnect.flows.add_flow_outputs
@flow_arn='{{ flow_arn }}' --required,
@region='{{ region }}' --required
@@json=
'{
"Outputs": "{{ Outputs }}"
}'
;
Adds sources to a flow.
EXEC aws.mediaconnect.flows.add_flow_sources
@flow_arn='{{ flow_arn }}' --required,
@region='{{ region }}' --required
@@json=
'{
"Sources": "{{ Sources }}"
}'
;
Updates an existing media stream.
EXEC aws.mediaconnect.flows.update_flow_media_stream
@flow_arn='{{ flow_arn }}' --required,
@media_stream_name='{{ media_stream_name }}' --required,
@region='{{ region }}' --required
@@json=
'{
"Attributes": "{{ Attributes }}",
"ClockRate": {{ ClockRate }},
"Description": "{{ Description }}",
"MediaStreamType": "{{ MediaStreamType }}",
"VideoFormat": "{{ VideoFormat }}"
}'
;
Updates an existing flow output.
EXEC aws.mediaconnect.flows.update_flow_output
@flow_arn='{{ flow_arn }}' --required,
@output_arn='{{ output_arn }}' --required,
@region='{{ region }}' --required
@@json=
'{
"CidrAllowList": "{{ CidrAllowList }}",
"Description": "{{ Description }}",
"Destination": "{{ Destination }}",
"Encryption": "{{ Encryption }}",
"MaxLatency": {{ MaxLatency }},
"MediaStreamOutputConfigurations": "{{ MediaStreamOutputConfigurations }}",
"MinLatency": {{ MinLatency }},
"Port": {{ Port }},
"Protocol": "{{ Protocol }}",
"RemoteId": "{{ RemoteId }}",
"SenderControlPort": {{ SenderControlPort }},
"SenderIpAddress": "{{ SenderIpAddress }}",
"SmoothingLatency": {{ SmoothingLatency }},
"StreamId": "{{ StreamId }}",
"VpcInterfaceAttachment": "{{ VpcInterfaceAttachment }}",
"OutputStatus": "{{ OutputStatus }}",
"NdiProgramName": "{{ NdiProgramName }}",
"NdiSpeedHqQuality": {{ NdiSpeedHqQuality }},
"RouterIntegrationState": "{{ RouterIntegrationState }}",
"RouterIntegrationTransitEncryption": "{{ RouterIntegrationTransitEncryption }}",
"NdiOutputTimecodeSource": "{{ NdiOutputTimecodeSource }}"
}'
;
Updates the source of a flow. Because UpdateFlowSources and UpdateFlow are separate operations, you can't change both the source type AND the flow size in a single request. If you have a MEDIUM flow and you want to change the flow source to NDI®: First, use the UpdateFlow operation to upgrade the flow size to LARGE. After that, you can then use the UpdateFlowSource operation to configure the NDI source. If you're switching from an NDI source to a transport stream (TS) source and want to downgrade the flow size: First, use the UpdateFlowSource operation to change the flow source type. After that, you can then use the UpdateFlow operation to downgrade the flow size to MEDIUM.
EXEC aws.mediaconnect.flows.update_flow_source
@flow_arn='{{ flow_arn }}' --required,
@source_arn='{{ source_arn }}' --required,
@region='{{ region }}' --required
@@json=
'{
"Decryption": "{{ Decryption }}",
"Description": "{{ Description }}",
"EntitlementArn": "{{ EntitlementArn }}",
"IngestPort": {{ IngestPort }},
"MaxBitrate": {{ MaxBitrate }},
"MaxLatency": {{ MaxLatency }},
"MaxSyncBuffer": {{ MaxSyncBuffer }},
"MediaStreamSourceConfigurations": "{{ MediaStreamSourceConfigurations }}",
"MinLatency": {{ MinLatency }},
"Protocol": "{{ Protocol }}",
"SenderControlPort": {{ SenderControlPort }},
"SenderIpAddress": "{{ SenderIpAddress }}",
"SourceListenerAddress": "{{ SourceListenerAddress }}",
"SourceListenerPort": {{ SourceListenerPort }},
"StreamId": "{{ StreamId }}",
"VpcInterfaceName": "{{ VpcInterfaceName }}",
"WhitelistCidr": "{{ WhitelistCidr }}",
"GatewayBridgeSource": "{{ GatewayBridgeSource }}",
"NdiSourceSettings": "{{ NdiSourceSettings }}",
"RouterIntegrationState": "{{ RouterIntegrationState }}",
"RouterIntegrationTransitDecryption": "{{ RouterIntegrationTransitDecryption }}"
}'
;
Starts a flow.
EXEC aws.mediaconnect.flows.start_flow
@flow_arn='{{ flow_arn }}' --required,
@region='{{ region }}' --required
;
Stops a flow.
EXEC aws.mediaconnect.flows.stop_flow
@flow_arn='{{ flow_arn }}' --required,
@region='{{ region }}' --required
;