Class: Aws::MediaConnect::Types::CreateFlowRequest

Inherits:
Struct
  • Object
show all
Defined in:
gems/aws-sdk-mediaconnect/lib/aws-sdk-mediaconnect/types.rb

Overview

Note:

When making an API call, you may pass CreateFlowRequest data as a hash:

{
  availability_zone: "__string",
  entitlements: [
    {
      data_transfer_subscriber_fee_percent: 1,
      description: "__string",
      encryption: {
        algorithm: "aes128", # accepts aes128, aes192, aes256
        constant_initialization_vector: "__string",
        device_id: "__string",
        key_type: "speke", # accepts speke, static-key, srt-password
        region: "__string",
        resource_id: "__string",
        role_arn: "__string", # required
        secret_arn: "__string",
        url: "__string",
      },
      entitlement_status: "ENABLED", # accepts ENABLED, DISABLED
      name: "__string",
      subscribers: ["__string"], # required
    },
  ],
  media_streams: [
    {
      attributes: {
        fmtp: {
          channel_order: "__string",
          colorimetry: "BT601", # accepts BT601, BT709, BT2020, BT2100, ST2065-1, ST2065-3, XYZ
          exact_framerate: "__string",
          par: "__string",
          range: "NARROW", # accepts NARROW, FULL, FULLPROTECT
          scan_mode: "progressive", # accepts progressive, interlace, progressive-segmented-frame
          tcs: "SDR", # accepts SDR, PQ, HLG, LINEAR, BT2100LINPQ, BT2100LINHLG, ST2065-1, ST428-1, DENSITY
        },
        lang: "__string",
      },
      clock_rate: 1,
      description: "__string",
      media_stream_id: 1, # required
      media_stream_name: "__string", # required
      media_stream_type: "video", # required, accepts video, audio, ancillary-data
      video_format: "__string",
    },
  ],
  name: "__string", # required
  outputs: [
    {
      cidr_allow_list: ["__string"],
      description: "__string",
      destination: "__string",
      encryption: {
        algorithm: "aes128", # accepts aes128, aes192, aes256
        constant_initialization_vector: "__string",
        device_id: "__string",
        key_type: "speke", # accepts speke, static-key, srt-password
        region: "__string",
        resource_id: "__string",
        role_arn: "__string", # required
        secret_arn: "__string",
        url: "__string",
      },
      max_latency: 1,
      media_stream_output_configurations: [
        {
          destination_configurations: [
            {
              destination_ip: "__string", # required
              destination_port: 1, # required
              interface: { # required
                name: "__string", # required
              },
            },
          ],
          encoding_name: "jxsv", # required, accepts jxsv, raw, smpte291, pcm
          encoding_parameters: {
            compression_factor: 1.0, # required
            encoder_profile: "main", # required, accepts main, high
          },
          media_stream_name: "__string", # required
        },
      ],
      min_latency: 1,
      name: "__string",
      port: 1,
      protocol: "zixi-push", # required, accepts zixi-push, rtp-fec, rtp, zixi-pull, rist, st2110-jpegxs, cdi, srt-listener, srt-caller, fujitsu-qos
      remote_id: "__string",
      sender_control_port: 1,
      smoothing_latency: 1,
      stream_id: "__string",
      vpc_interface_attachment: {
        vpc_interface_name: "__string",
      },
    },
  ],
  source: {
    decryption: {
      algorithm: "aes128", # accepts aes128, aes192, aes256
      constant_initialization_vector: "__string",
      device_id: "__string",
      key_type: "speke", # accepts speke, static-key, srt-password
      region: "__string",
      resource_id: "__string",
      role_arn: "__string", # required
      secret_arn: "__string",
      url: "__string",
    },
    description: "__string",
    entitlement_arn: "__string",
    ingest_port: 1,
    max_bitrate: 1,
    max_latency: 1,
    max_sync_buffer: 1,
    media_stream_source_configurations: [
      {
        encoding_name: "jxsv", # required, accepts jxsv, raw, smpte291, pcm
        input_configurations: [
          {
            input_port: 1, # required
            interface: { # required
              name: "__string", # required
            },
          },
        ],
        media_stream_name: "__string", # required
      },
    ],
    min_latency: 1,
    name: "__string",
    protocol: "zixi-push", # accepts zixi-push, rtp-fec, rtp, zixi-pull, rist, st2110-jpegxs, cdi, srt-listener, srt-caller, fujitsu-qos
    sender_control_port: 1,
    sender_ip_address: "__string",
    source_listener_address: "__string",
    source_listener_port: 1,
    stream_id: "__string",
    vpc_interface_name: "__string",
    whitelist_cidr: "__string",
  },
  source_failover_config: {
    failover_mode: "MERGE", # accepts MERGE, FAILOVER
    recovery_window: 1,
    source_priority: {
      primary_source: "__string",
    },
    state: "ENABLED", # accepts ENABLED, DISABLED
  },
  sources: [
    {
      decryption: {
        algorithm: "aes128", # accepts aes128, aes192, aes256
        constant_initialization_vector: "__string",
        device_id: "__string",
        key_type: "speke", # accepts speke, static-key, srt-password
        region: "__string",
        resource_id: "__string",
        role_arn: "__string", # required
        secret_arn: "__string",
        url: "__string",
      },
      description: "__string",
      entitlement_arn: "__string",
      ingest_port: 1,
      max_bitrate: 1,
      max_latency: 1,
      max_sync_buffer: 1,
      media_stream_source_configurations: [
        {
          encoding_name: "jxsv", # required, accepts jxsv, raw, smpte291, pcm
          input_configurations: [
            {
              input_port: 1, # required
              interface: { # required
                name: "__string", # required
              },
            },
          ],
          media_stream_name: "__string", # required
        },
      ],
      min_latency: 1,
      name: "__string",
      protocol: "zixi-push", # accepts zixi-push, rtp-fec, rtp, zixi-pull, rist, st2110-jpegxs, cdi, srt-listener, srt-caller, fujitsu-qos
      sender_control_port: 1,
      sender_ip_address: "__string",
      source_listener_address: "__string",
      source_listener_port: 1,
      stream_id: "__string",
      vpc_interface_name: "__string",
      whitelist_cidr: "__string",
    },
  ],
  vpc_interfaces: [
    {
      name: "__string", # required
      network_interface_type: "ena", # accepts ena, efa
      role_arn: "__string", # required
      security_group_ids: ["__string"], # required
      subnet_id: "__string", # required
    },
  ],
  maintenance: {
    maintenance_day: "Monday", # required, accepts Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday
    maintenance_start_hour: "__string", # required
  },
}

Creates a new flow. The request must include one source. The request optionally can include outputs (up to 50) and entitlements (up to 50.)

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#availability_zoneString

The Availability Zone that you want to create the flow in. These options are limited to the Availability Zones within the current AWS Region.

Returns:

  • (String)


872
873
874
875
876
877
878
879
880
881
882
883
884
885
# File 'gems/aws-sdk-mediaconnect/lib/aws-sdk-mediaconnect/types.rb', line 872

class CreateFlowRequest < Struct.new(
  :availability_zone,
  :entitlements,
  :media_streams,
  :name,
  :outputs,
  :source,
  :source_failover_config,
  :sources,
  :vpc_interfaces,
  :maintenance)
  SENSITIVE = []
  include Aws::Structure
end

#entitlementsArray<Types::GrantEntitlementRequest>

The entitlements that you want to grant on a flow.

Returns:



872
873
874
875
876
877
878
879
880
881
882
883
884
885
# File 'gems/aws-sdk-mediaconnect/lib/aws-sdk-mediaconnect/types.rb', line 872

class CreateFlowRequest < Struct.new(
  :availability_zone,
  :entitlements,
  :media_streams,
  :name,
  :outputs,
  :source,
  :source_failover_config,
  :sources,
  :vpc_interfaces,
  :maintenance)
  SENSITIVE = []
  include Aws::Structure
end

#maintenanceTypes::AddMaintenance

Create maintenance setting for a flow



872
873
874
875
876
877
878
879
880
881
882
883
884
885
# File 'gems/aws-sdk-mediaconnect/lib/aws-sdk-mediaconnect/types.rb', line 872

class CreateFlowRequest < Struct.new(
  :availability_zone,
  :entitlements,
  :media_streams,
  :name,
  :outputs,
  :source,
  :source_failover_config,
  :sources,
  :vpc_interfaces,
  :maintenance)
  SENSITIVE = []
  include Aws::Structure
end

#media_streamsArray<Types::AddMediaStreamRequest>

The media streams that you want to add to the flow. You can associate these media streams with sources and outputs on the flow.

Returns:



872
873
874
875
876
877
878
879
880
881
882
883
884
885
# File 'gems/aws-sdk-mediaconnect/lib/aws-sdk-mediaconnect/types.rb', line 872

class CreateFlowRequest < Struct.new(
  :availability_zone,
  :entitlements,
  :media_streams,
  :name,
  :outputs,
  :source,
  :source_failover_config,
  :sources,
  :vpc_interfaces,
  :maintenance)
  SENSITIVE = []
  include Aws::Structure
end

#nameString

The name of the flow.

Returns:

  • (String)


872
873
874
875
876
877
878
879
880
881
882
883
884
885
# File 'gems/aws-sdk-mediaconnect/lib/aws-sdk-mediaconnect/types.rb', line 872

class CreateFlowRequest < Struct.new(
  :availability_zone,
  :entitlements,
  :media_streams,
  :name,
  :outputs,
  :source,
  :source_failover_config,
  :sources,
  :vpc_interfaces,
  :maintenance)
  SENSITIVE = []
  include Aws::Structure
end

#outputsArray<Types::AddOutputRequest>

The outputs that you want to add to this flow.

Returns:



872
873
874
875
876
877
878
879
880
881
882
883
884
885
# File 'gems/aws-sdk-mediaconnect/lib/aws-sdk-mediaconnect/types.rb', line 872

class CreateFlowRequest < Struct.new(
  :availability_zone,
  :entitlements,
  :media_streams,
  :name,
  :outputs,
  :source,
  :source_failover_config,
  :sources,
  :vpc_interfaces,
  :maintenance)
  SENSITIVE = []
  include Aws::Structure
end

#sourceTypes::SetSourceRequest

The settings for the source of the flow.



872
873
874
875
876
877
878
879
880
881
882
883
884
885
# File 'gems/aws-sdk-mediaconnect/lib/aws-sdk-mediaconnect/types.rb', line 872

class CreateFlowRequest < Struct.new(
  :availability_zone,
  :entitlements,
  :media_streams,
  :name,
  :outputs,
  :source,
  :source_failover_config,
  :sources,
  :vpc_interfaces,
  :maintenance)
  SENSITIVE = []
  include Aws::Structure
end

#source_failover_configTypes::FailoverConfig

The settings for source failover.



872
873
874
875
876
877
878
879
880
881
882
883
884
885
# File 'gems/aws-sdk-mediaconnect/lib/aws-sdk-mediaconnect/types.rb', line 872

class CreateFlowRequest < Struct.new(
  :availability_zone,
  :entitlements,
  :media_streams,
  :name,
  :outputs,
  :source,
  :source_failover_config,
  :sources,
  :vpc_interfaces,
  :maintenance)
  SENSITIVE = []
  include Aws::Structure
end

#sourcesArray<Types::SetSourceRequest>

Returns:



872
873
874
875
876
877
878
879
880
881
882
883
884
885
# File 'gems/aws-sdk-mediaconnect/lib/aws-sdk-mediaconnect/types.rb', line 872

class CreateFlowRequest < Struct.new(
  :availability_zone,
  :entitlements,
  :media_streams,
  :name,
  :outputs,
  :source,
  :source_failover_config,
  :sources,
  :vpc_interfaces,
  :maintenance)
  SENSITIVE = []
  include Aws::Structure
end

#vpc_interfacesArray<Types::VpcInterfaceRequest>

The VPC interfaces you want on the flow.

Returns:



872
873
874
875
876
877
878
879
880
881
882
883
884
885
# File 'gems/aws-sdk-mediaconnect/lib/aws-sdk-mediaconnect/types.rb', line 872

class CreateFlowRequest < Struct.new(
  :availability_zone,
  :entitlements,
  :media_streams,
  :name,
  :outputs,
  :source,
  :source_failover_config,
  :sources,
  :vpc_interfaces,
  :maintenance)
  SENSITIVE = []
  include Aws::Structure
end