Class: AWSCDK::MediaPackage::CfnPackagingConfiguration::HlsManifestProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
media_package/cfn_packaging_configuration.rb

Overview

Parameters for an HLS manifest.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(ad_markers: nil, include_iframe_only_stream: nil, manifest_name: nil, program_date_time_interval_seconds: nil, repeat_ext_x_key: nil, stream_selection: nil) ⇒ HlsManifestProperty

Returns a new instance of HlsManifestProperty.

Parameters:

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

    This setting controls ad markers in the packaged content.

  • include_iframe_only_stream (Boolean, AWSCDK::IResolvable, nil) (defaults to: nil)

    Applies to stream sets with a single video track only.

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

    A short string that's appended to the end of the endpoint URL to create a unique path to this packaging configuration.

  • program_date_time_interval_seconds (Numeric, nil) (defaults to: nil)

    Inserts EXT-X-PROGRAM-DATE-TIME tags in the output manifest at the interval that you specify.

  • repeat_ext_x_key (Boolean, AWSCDK::IResolvable, nil) (defaults to: nil)

    Repeat the EXT-X-KEY directive for every media segment.

  • stream_selection (AWSCDK::IResolvable, AWSCDK::MediaPackage::CfnPackagingConfiguration::StreamSelectionProperty, nil) (defaults to: nil)

    Video bitrate limitations for outputs from this packaging configuration.



1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
# File 'media_package/cfn_packaging_configuration.rb', line 1066

def initialize(ad_markers: nil, include_iframe_only_stream: nil, manifest_name: nil, program_date_time_interval_seconds: nil, repeat_ext_x_key: nil, stream_selection: nil)
  @ad_markers = ad_markers
  Jsii::Type.check_type(@ad_markers, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "adMarkers") unless @ad_markers.nil?
  @include_iframe_only_stream = include_iframe_only_stream
  Jsii::Type.check_type(@include_iframe_only_stream, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "includeIframeOnlyStream") unless @include_iframe_only_stream.nil?
  @manifest_name = manifest_name
  Jsii::Type.check_type(@manifest_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "manifestName") unless @manifest_name.nil?
  @program_date_time_interval_seconds = program_date_time_interval_seconds
  Jsii::Type.check_type(@program_date_time_interval_seconds, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "programDateTimeIntervalSeconds") unless @program_date_time_interval_seconds.nil?
  @repeat_ext_x_key = repeat_ext_x_key
  Jsii::Type.check_type(@repeat_ext_x_key, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "repeatExtXKey") unless @repeat_ext_x_key.nil?
  @stream_selection = stream_selection.is_a?(Hash) ? ::AWSCDK::MediaPackage::CfnPackagingConfiguration::StreamSelectionProperty.new(**stream_selection.transform_keys(&:to_sym)) : stream_selection
  Jsii::Type.check_type(@stream_selection, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19tZWRpYXBhY2thZ2UuQ2ZuUGFja2FnaW5nQ29uZmlndXJhdGlvbi5TdHJlYW1TZWxlY3Rpb25Qcm9wZXJ0eSJ9XX19")), "streamSelection") unless @stream_selection.nil?
end

Instance Attribute Details

#ad_markersString? (readonly)

This setting controls ad markers in the packaged content.

Valid values:

  • NONE - Omits all SCTE-35 ad markers from the output.
  • PASSTHROUGH - Creates a copy in the output of the SCTE-35 ad markers (comments) taken directly from the input manifest.
  • SCTE35_ENHANCED - Generates ad markers and blackout tags in the output based on the SCTE-35 messages from the input manifest.


1091
1092
1093
# File 'media_package/cfn_packaging_configuration.rb', line 1091

def ad_markers
  @ad_markers
end

#include_iframe_only_streamBoolean, ... (readonly)

Applies to stream sets with a single video track only.

When enabled, the output includes an additional I-frame only stream, along with the other tracks.



1098
1099
1100
# File 'media_package/cfn_packaging_configuration.rb', line 1098

def include_iframe_only_stream
  @include_iframe_only_stream
end

#manifest_nameString? (readonly)

A short string that's appended to the end of the endpoint URL to create a unique path to this packaging configuration.



1103
1104
1105
# File 'media_package/cfn_packaging_configuration.rb', line 1103

def manifest_name
  @manifest_name
end

#program_date_time_interval_secondsNumeric? (readonly)

Inserts EXT-X-PROGRAM-DATE-TIME tags in the output manifest at the interval that you specify.

Irrespective of this parameter, if any ID3Timed metadata is in the HLS input, it is passed through to the HLS output.

Omit this attribute or enter 0 to indicate that the EXT-X-PROGRAM-DATE-TIME tags are not included in the manifest.



1112
1113
1114
# File 'media_package/cfn_packaging_configuration.rb', line 1112

def program_date_time_interval_seconds
  @program_date_time_interval_seconds
end

#repeat_ext_x_keyBoolean, ... (readonly)

Repeat the EXT-X-KEY directive for every media segment.

This might result in an increase in client requests to the DRM server.



1119
1120
1121
# File 'media_package/cfn_packaging_configuration.rb', line 1119

def repeat_ext_x_key
  @repeat_ext_x_key
end

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

Video bitrate limitations for outputs from this packaging configuration.



1124
1125
1126
# File 'media_package/cfn_packaging_configuration.rb', line 1124

def stream_selection
  @stream_selection
end

Class Method Details

.jsii_propertiesObject



1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
# File 'media_package/cfn_packaging_configuration.rb', line 1126

def self.jsii_properties
  {
    :ad_markers => "adMarkers",
    :include_iframe_only_stream => "includeIframeOnlyStream",
    :manifest_name => "manifestName",
    :program_date_time_interval_seconds => "programDateTimeIntervalSeconds",
    :repeat_ext_x_key => "repeatExtXKey",
    :stream_selection => "streamSelection",
  }
end

Instance Method Details

#to_jsiiObject



1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
# File 'media_package/cfn_packaging_configuration.rb', line 1137

def to_jsii
  result = {}
  result.merge!({
    "adMarkers" => @ad_markers,
    "includeIframeOnlyStream" => @include_iframe_only_stream,
    "manifestName" => @manifest_name,
    "programDateTimeIntervalSeconds" => @program_date_time_interval_seconds,
    "repeatExtXKey" => @repeat_ext_x_key,
    "streamSelection" => @stream_selection,
  })
  result.compact
end