Class: AWSCDK::MediaPackagev2::CfnOriginEndpoint::DashManifestConfigurationProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
media_packagev2/cfn_origin_endpoint.rb

Overview

The DASH manifest configuration associated with the origin endpoint.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(manifest_name:, audio_timeline_pattern: nil, availability_start_time_configuration: nil, base_urls: nil, compactness: nil, drm_signaling: nil, dvb_settings: nil, filter_configuration: nil, manifest_window_seconds: nil, min_buffer_time_seconds: nil, min_update_period_seconds: nil, period_triggers: nil, profiles: nil, program_information: nil, scte_dash: nil, segment_template_format: nil, subtitle_configuration: nil, suggested_presentation_delay_seconds: nil, uri_path_type: nil, utc_timing: nil) ⇒ DashManifestConfigurationProperty

Returns a new instance of DashManifestConfigurationProperty.

Parameters:



998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
# File 'media_packagev2/cfn_origin_endpoint.rb', line 998

def initialize(manifest_name:, audio_timeline_pattern: nil, availability_start_time_configuration: nil, base_urls: nil, compactness: nil, drm_signaling: nil, dvb_settings: nil, filter_configuration: nil, manifest_window_seconds: nil, min_buffer_time_seconds: nil, min_update_period_seconds: nil, period_triggers: nil, profiles: nil, program_information: nil, scte_dash: nil, segment_template_format: nil, subtitle_configuration: nil, suggested_presentation_delay_seconds: nil, uri_path_type: nil, utc_timing: nil)
  @manifest_name = manifest_name
  Jsii::Type.check_type(@manifest_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "manifestName")
  @audio_timeline_pattern = audio_timeline_pattern
  Jsii::Type.check_type(@audio_timeline_pattern, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "audioTimelinePattern") unless @audio_timeline_pattern.nil?
  @availability_start_time_configuration = availability_start_time_configuration.is_a?(Hash) ? ::AWSCDK::MediaPackagev2::CfnOriginEndpoint::DashAvailabilityStartTimeConfigurationProperty.new(**availability_start_time_configuration.transform_keys(&:to_sym)) : availability_start_time_configuration
  Jsii::Type.check_type(@availability_start_time_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19tZWRpYXBhY2thZ2V2Mi5DZm5PcmlnaW5FbmRwb2ludC5EYXNoQXZhaWxhYmlsaXR5U3RhcnRUaW1lQ29uZmlndXJhdGlvblByb3BlcnR5In1dfX0=")), "availabilityStartTimeConfiguration") unless @availability_start_time_configuration.nil?
  @base_urls = base_urls
  Jsii::Type.check_type(@base_urls, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfbWVkaWFwYWNrYWdldjIuQ2ZuT3JpZ2luRW5kcG9pbnQuRGFzaEJhc2VVcmxQcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "baseUrls") unless @base_urls.nil?
  @compactness = compactness
  Jsii::Type.check_type(@compactness, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "compactness") unless @compactness.nil?
  @drm_signaling = drm_signaling
  Jsii::Type.check_type(@drm_signaling, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "drmSignaling") unless @drm_signaling.nil?
  @dvb_settings = dvb_settings.is_a?(Hash) ? ::AWSCDK::MediaPackagev2::CfnOriginEndpoint::DashDvbSettingsProperty.new(**dvb_settings.transform_keys(&:to_sym)) : dvb_settings
  Jsii::Type.check_type(@dvb_settings, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19tZWRpYXBhY2thZ2V2Mi5DZm5PcmlnaW5FbmRwb2ludC5EYXNoRHZiU2V0dGluZ3NQcm9wZXJ0eSJ9XX19")), "dvbSettings") unless @dvb_settings.nil?
  @filter_configuration = filter_configuration.is_a?(Hash) ? ::AWSCDK::MediaPackagev2::CfnOriginEndpoint::FilterConfigurationProperty.new(**filter_configuration.transform_keys(&:to_sym)) : filter_configuration
  Jsii::Type.check_type(@filter_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19tZWRpYXBhY2thZ2V2Mi5DZm5PcmlnaW5FbmRwb2ludC5GaWx0ZXJDb25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "filterConfiguration") unless @filter_configuration.nil?
  @manifest_window_seconds = manifest_window_seconds
  Jsii::Type.check_type(@manifest_window_seconds, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "manifestWindowSeconds") unless @manifest_window_seconds.nil?
  @min_buffer_time_seconds = min_buffer_time_seconds
  Jsii::Type.check_type(@min_buffer_time_seconds, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "minBufferTimeSeconds") unless @min_buffer_time_seconds.nil?
  @min_update_period_seconds = min_update_period_seconds
  Jsii::Type.check_type(@min_update_period_seconds, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "minUpdatePeriodSeconds") unless @min_update_period_seconds.nil?
  @period_triggers = period_triggers
  Jsii::Type.check_type(@period_triggers, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "periodTriggers") unless @period_triggers.nil?
  @profiles = profiles
  Jsii::Type.check_type(@profiles, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "profiles") unless @profiles.nil?
  @program_information = program_information.is_a?(Hash) ? ::AWSCDK::MediaPackagev2::CfnOriginEndpoint::DashProgramInformationProperty.new(**program_information.transform_keys(&:to_sym)) : program_information
  Jsii::Type.check_type(@program_information, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19tZWRpYXBhY2thZ2V2Mi5DZm5PcmlnaW5FbmRwb2ludC5EYXNoUHJvZ3JhbUluZm9ybWF0aW9uUHJvcGVydHkifV19fQ==")), "programInformation") unless @program_information.nil?
  @scte_dash = scte_dash.is_a?(Hash) ? ::AWSCDK::MediaPackagev2::CfnOriginEndpoint::ScteDashProperty.new(**scte_dash.transform_keys(&:to_sym)) : scte_dash
  Jsii::Type.check_type(@scte_dash, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19tZWRpYXBhY2thZ2V2Mi5DZm5PcmlnaW5FbmRwb2ludC5TY3RlRGFzaFByb3BlcnR5In1dfX0=")), "scteDash") unless @scte_dash.nil?
  @segment_template_format = segment_template_format
  Jsii::Type.check_type(@segment_template_format, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "segmentTemplateFormat") unless @segment_template_format.nil?
  @subtitle_configuration = subtitle_configuration.is_a?(Hash) ? ::AWSCDK::MediaPackagev2::CfnOriginEndpoint::DashSubtitleConfigurationProperty.new(**subtitle_configuration.transform_keys(&:to_sym)) : subtitle_configuration
  Jsii::Type.check_type(@subtitle_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19tZWRpYXBhY2thZ2V2Mi5DZm5PcmlnaW5FbmRwb2ludC5EYXNoU3VidGl0bGVDb25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "subtitleConfiguration") unless @subtitle_configuration.nil?
  @suggested_presentation_delay_seconds = suggested_presentation_delay_seconds
  Jsii::Type.check_type(@suggested_presentation_delay_seconds, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "suggestedPresentationDelaySeconds") unless @suggested_presentation_delay_seconds.nil?
  @uri_path_type = uri_path_type
  Jsii::Type.check_type(@uri_path_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "uriPathType") unless @uri_path_type.nil?
  @utc_timing = utc_timing.is_a?(Hash) ? ::AWSCDK::MediaPackagev2::CfnOriginEndpoint::DashUtcTimingProperty.new(**utc_timing.transform_keys(&:to_sym)) : utc_timing
  Jsii::Type.check_type(@utc_timing, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19tZWRpYXBhY2thZ2V2Mi5DZm5PcmlnaW5FbmRwb2ludC5EYXNoVXRjVGltaW5nUHJvcGVydHkifV19fQ==")), "utcTiming") unless @utc_timing.nil?
end

Instance Attribute Details

#audio_timeline_patternString? (readonly)



1050
1051
1052
# File 'media_packagev2/cfn_origin_endpoint.rb', line 1050

def audio_timeline_pattern
  @audio_timeline_pattern
end

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



1053
1054
1055
# File 'media_packagev2/cfn_origin_endpoint.rb', line 1053

def availability_start_time_configuration
  @availability_start_time_configuration
end

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

The base URLs to use for retrieving segments.



1058
1059
1060
# File 'media_packagev2/cfn_origin_endpoint.rb', line 1058

def base_urls
  @base_urls
end

#compactnessString? (readonly)

The layout of the DASH manifest that MediaPackage produces.

STANDARD indicates a default manifest, which is compacted. NONE indicates a full manifest.

For information about compactness, see DASH manifest compactness in the AWS Elemental MediaPackage v2 User Guide .



1067
1068
1069
# File 'media_packagev2/cfn_origin_endpoint.rb', line 1067

def compactness
  @compactness
end

#drm_signalingString? (readonly)

Determines how the DASH manifest signals the DRM content.



1072
1073
1074
# File 'media_packagev2/cfn_origin_endpoint.rb', line 1072

def drm_signaling
  @drm_signaling
end

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

For endpoints that use the DVB-DASH profile only.

The font download and error reporting information that you want MediaPackage to pass through to the manifest.



1079
1080
1081
# File 'media_packagev2/cfn_origin_endpoint.rb', line 1079

def dvb_settings
  @dvb_settings
end

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

Filter configuration includes settings for manifest filtering, start and end times, and time delay that apply to all of your egress requests for this manifest.



1084
1085
1086
# File 'media_packagev2/cfn_origin_endpoint.rb', line 1084

def filter_configuration
  @filter_configuration
end

#manifest_nameString (readonly)

A short string that's appended to the endpoint URL.

The child manifest name creates a unique path to this endpoint.



1047
1048
1049
# File 'media_packagev2/cfn_origin_endpoint.rb', line 1047

def manifest_name
  @manifest_name
end

#manifest_window_secondsNumeric? (readonly)

The total duration (in seconds) of the manifest's content.



1089
1090
1091
# File 'media_packagev2/cfn_origin_endpoint.rb', line 1089

def manifest_window_seconds
  @manifest_window_seconds
end

#min_buffer_time_secondsNumeric? (readonly)

Minimum amount of content (in seconds) that a player must keep available in the buffer.



1094
1095
1096
# File 'media_packagev2/cfn_origin_endpoint.rb', line 1094

def min_buffer_time_seconds
  @min_buffer_time_seconds
end

#min_update_period_secondsNumeric? (readonly)

Minimum amount of time (in seconds) that the player should wait before requesting updates to the manifest.



1099
1100
1101
# File 'media_packagev2/cfn_origin_endpoint.rb', line 1099

def min_update_period_seconds
  @min_update_period_seconds
end

#period_triggersArray<String>? (readonly)

A list of triggers that controls when AWS Elemental MediaPackage separates the MPEG-DASH manifest into multiple periods.

Type ADS to indicate that AWS Elemental MediaPackage must create periods in the output manifest that correspond to SCTE-35 ad markers in the input source. Leave this value empty to indicate that the manifest is contained all in one period. For more information about periods in the DASH manifest, see Multi-period DASH in AWS Elemental MediaPackage .



1106
1107
1108
# File 'media_packagev2/cfn_origin_endpoint.rb', line 1106

def period_triggers
  @period_triggers
end

#profilesArray<String>? (readonly)

The profile that the output is compliant with.



1111
1112
1113
# File 'media_packagev2/cfn_origin_endpoint.rb', line 1111

def profiles
  @profiles
end

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

Details about the content that you want MediaPackage to pass through in the manifest to the playback device.



1116
1117
1118
# File 'media_packagev2/cfn_origin_endpoint.rb', line 1116

def program_information
  @program_information
end

#segment_template_formatString? (readonly)

Determines the type of variable used in the media URL of the SegmentTemplate tag in the manifest.

Also specifies if segment timeline information is included in SegmentTimeline or SegmentTemplate .

Value description:

  • NUMBER_WITH_TIMELINE - The $Number$ variable is used in the media URL. The value of this variable is the sequential number of the segment. A full SegmentTimeline object is presented in each SegmentTemplate .


1132
1133
1134
# File 'media_packagev2/cfn_origin_endpoint.rb', line 1132

def segment_template_format
  @segment_template_format
end

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

The configuration for DASH subtitles.



1137
1138
1139
# File 'media_packagev2/cfn_origin_endpoint.rb', line 1137

def subtitle_configuration
  @subtitle_configuration
end

#suggested_presentation_delay_secondsNumeric? (readonly)

The amount of time (in seconds) that the player should be from the end of the manifest.



1142
1143
1144
# File 'media_packagev2/cfn_origin_endpoint.rb', line 1142

def suggested_presentation_delay_seconds
  @suggested_presentation_delay_seconds
end

#uri_path_typeString? (readonly)



1145
1146
1147
# File 'media_packagev2/cfn_origin_endpoint.rb', line 1145

def uri_path_type
  @uri_path_type
end

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

Determines the type of UTC timing included in the DASH Media Presentation Description (MPD).



1150
1151
1152
# File 'media_packagev2/cfn_origin_endpoint.rb', line 1150

def utc_timing
  @utc_timing
end

Class Method Details

.jsii_propertiesObject



1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
# File 'media_packagev2/cfn_origin_endpoint.rb', line 1152

def self.jsii_properties
  {
    :manifest_name => "manifestName",
    :audio_timeline_pattern => "audioTimelinePattern",
    :availability_start_time_configuration => "availabilityStartTimeConfiguration",
    :base_urls => "baseUrls",
    :compactness => "compactness",
    :drm_signaling => "drmSignaling",
    :dvb_settings => "dvbSettings",
    :filter_configuration => "filterConfiguration",
    :manifest_window_seconds => "manifestWindowSeconds",
    :min_buffer_time_seconds => "minBufferTimeSeconds",
    :min_update_period_seconds => "minUpdatePeriodSeconds",
    :period_triggers => "periodTriggers",
    :profiles => "profiles",
    :program_information => "programInformation",
    :scte_dash => "scteDash",
    :segment_template_format => "segmentTemplateFormat",
    :subtitle_configuration => "subtitleConfiguration",
    :suggested_presentation_delay_seconds => "suggestedPresentationDelaySeconds",
    :uri_path_type => "uriPathType",
    :utc_timing => "utcTiming",
  }
end

Instance Method Details

#to_jsiiObject



1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
# File 'media_packagev2/cfn_origin_endpoint.rb', line 1177

def to_jsii
  result = {}
  result.merge!({
    "manifestName" => @manifest_name,
    "audioTimelinePattern" => @audio_timeline_pattern,
    "availabilityStartTimeConfiguration" => @availability_start_time_configuration,
    "baseUrls" => @base_urls,
    "compactness" => @compactness,
    "drmSignaling" => @drm_signaling,
    "dvbSettings" => @dvb_settings,
    "filterConfiguration" => @filter_configuration,
    "manifestWindowSeconds" => @manifest_window_seconds,
    "minBufferTimeSeconds" => @min_buffer_time_seconds,
    "minUpdatePeriodSeconds" => @min_update_period_seconds,
    "periodTriggers" => @period_triggers,
    "profiles" => @profiles,
    "programInformation" => @program_information,
    "scteDash" => @scte_dash,
    "segmentTemplateFormat" => @segment_template_format,
    "subtitleConfiguration" => @subtitle_configuration,
    "suggestedPresentationDelaySeconds" => @suggested_presentation_delay_seconds,
    "uriPathType" => @uri_path_type,
    "utcTiming" => @utc_timing,
  })
  result.compact
end