Class: AWSCDK::MediaLive::CfnChannel::HlsOutputSettingsProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
media_live/cfn_channel.rb

Overview

The settings for an HLS output.

The parent of this entity is OutputSettings.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(h265_packaging_type: nil, hls_settings: nil, name_modifier: nil, segment_modifier: nil) ⇒ HlsOutputSettingsProperty

Returns a new instance of HlsOutputSettingsProperty.

Parameters:

  • h265_packaging_type (String, nil) (defaults to: nil)

    Only applicable when this output is referencing an H.265 video description. Specifies whether MP4 segments should be packaged as HEV1 or HVC1.

  • hls_settings (AWSCDK::IResolvable, AWSCDK::MediaLive::CfnChannel::HlsSettingsProperty, nil) (defaults to: nil)

    The settings regarding the underlying stream.

  • name_modifier (String, nil) (defaults to: nil)

    A string that is concatenated to the end of the destination file name.

  • segment_modifier (String, nil) (defaults to: nil)

    A string that is concatenated to the end of segment file names.



8253
8254
8255
8256
8257
8258
8259
8260
8261
8262
# File 'media_live/cfn_channel.rb', line 8253

def initialize(h265_packaging_type: nil, hls_settings: nil, name_modifier: nil, segment_modifier: nil)
  @h265_packaging_type = h265_packaging_type
  Jsii::Type.check_type(@h265_packaging_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "h265PackagingType") unless @h265_packaging_type.nil?
  @hls_settings = hls_settings.is_a?(Hash) ? ::AWSCDK::MediaLive::CfnChannel::HlsSettingsProperty.new(**hls_settings.transform_keys(&:to_sym)) : hls_settings
  Jsii::Type.check_type(@hls_settings, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19tZWRpYWxpdmUuQ2ZuQ2hhbm5lbC5IbHNTZXR0aW5nc1Byb3BlcnR5In1dfX0=")), "hlsSettings") unless @hls_settings.nil?
  @name_modifier = name_modifier
  Jsii::Type.check_type(@name_modifier, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "nameModifier") unless @name_modifier.nil?
  @segment_modifier = segment_modifier
  Jsii::Type.check_type(@segment_modifier, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "segmentModifier") unless @segment_modifier.nil?
end

Instance Attribute Details

#h265_packaging_typeString? (readonly)

Only applicable when this output is referencing an H.265 video description. Specifies whether MP4 segments should be packaged as HEV1 or HVC1.



8268
8269
8270
# File 'media_live/cfn_channel.rb', line 8268

def h265_packaging_type
  @h265_packaging_type
end

#hls_settingsAWSCDK::IResolvable, ... (readonly)

The settings regarding the underlying stream.

These settings are different for audio-only outputs.



8275
8276
8277
# File 'media_live/cfn_channel.rb', line 8275

def hls_settings
  @hls_settings
end

#name_modifierString? (readonly)

A string that is concatenated to the end of the destination file name.

Accepts "Format Identifiers":#formatIdentifierParameters.



8282
8283
8284
# File 'media_live/cfn_channel.rb', line 8282

def name_modifier
  @name_modifier
end

#segment_modifierString? (readonly)

A string that is concatenated to the end of segment file names.



8287
8288
8289
# File 'media_live/cfn_channel.rb', line 8287

def segment_modifier
  @segment_modifier
end

Class Method Details

.jsii_propertiesObject



8289
8290
8291
8292
8293
8294
8295
8296
# File 'media_live/cfn_channel.rb', line 8289

def self.jsii_properties
  {
    :h265_packaging_type => "h265PackagingType",
    :hls_settings => "hlsSettings",
    :name_modifier => "nameModifier",
    :segment_modifier => "segmentModifier",
  }
end

Instance Method Details

#to_jsiiObject



8298
8299
8300
8301
8302
8303
8304
8305
8306
8307
# File 'media_live/cfn_channel.rb', line 8298

def to_jsii
  result = {}
  result.merge!({
    "h265PackagingType" => @h265_packaging_type,
    "hlsSettings" => @hls_settings,
    "nameModifier" => @name_modifier,
    "segmentModifier" => @segment_modifier,
  })
  result.compact
end