Class HlsOutputGroupProps.Builder
java.lang.Object
software.amazon.awscdk.services.medialive.alpha.HlsOutputGroupProps.Builder
- All Implemented Interfaces:
software.amazon.jsii.Builder<HlsOutputGroupProps>
- Enclosing interface:
HlsOutputGroupProps
@Stability(Experimental)
public static final class HlsOutputGroupProps.Builder
extends Object
implements software.amazon.jsii.Builder<HlsOutputGroupProps>
A builder for
HlsOutputGroupProps-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionadMarkers(List<? extends HlsAdMarkers> adMarkers) Sets the value ofHlsOutputGroupProps.getAdMarkers()baseUrlContent(String baseUrlContent) Sets the value ofHlsOutputGroupProps.getBaseUrlContent()baseUrlContent1(String baseUrlContent1) Sets the value ofHlsOutputGroupProps.getBaseUrlContent1()baseUrlManifest(String baseUrlManifest) Sets the value ofHlsOutputGroupProps.getBaseUrlManifest()baseUrlManifest1(String baseUrlManifest1) Sets the value ofHlsOutputGroupProps.getBaseUrlManifest1()build()Builds the configured instance.captionLanguageMappings(List<? extends CaptionLanguageMapping> captionLanguageMappings) Sets the value ofHlsOutputGroupProps.getCaptionLanguageMappings()captionLanguageSetting(HlsCaptionLanguageSetting captionLanguageSetting) Sets the value ofHlsOutputGroupProps.getCaptionLanguageSetting()clientCache(HlsClientCache clientCache) Sets the value ofHlsOutputGroupProps.getClientCache()codecSpecification(HlsCodecSpecification codecSpecification) Sets the value ofHlsOutputGroupProps.getCodecSpecification()constantIv(String constantIv) Sets the value ofHlsOutputGroupProps.getConstantIv()destinations(List<? extends OutputDestination> destinations) Sets the value ofHlsOutputGroupProps.getDestinations()directoryStructure(HlsDirectoryStructure directoryStructure) Sets the value ofHlsOutputGroupProps.getDirectoryStructure()discontinuityTags(HlsDiscontinuityTags discontinuityTags) Sets the value ofHlsOutputGroupProps.getDiscontinuityTags()encryptionType(HlsEncryptionType encryptionType) Sets the value ofHlsOutputGroupProps.getEncryptionType()hlsCdnSettings(HlsCdnSettings hlsCdnSettings) Sets the value ofHlsOutputGroupProps.getHlsCdnSettings()hlsId3SegmentTagging(HlsId3SegmentTaggingState hlsId3SegmentTagging) Sets the value ofHlsOutputGroupProps.getHlsId3SegmentTagging()iFrameOnlyPlaylists(HlsIFrameOnlyPlaylists iFrameOnlyPlaylists) Sets the value ofHlsOutputGroupProps.getIFrameOnlyPlaylists()incompleteSegmentBehavior(HlsIncompleteSegmentBehavior incompleteSegmentBehavior) Sets the value ofHlsOutputGroupProps.getIncompleteSegmentBehavior()indexNSegments(Number indexNSegments) Sets the value ofHlsOutputGroupProps.getIndexNSegments()inputLossAction(HlsInputLossAction inputLossAction) Sets the value ofHlsOutputGroupProps.getInputLossAction()ivInManifest(HlsIvInManifest ivInManifest) Sets the value ofHlsOutputGroupProps.getIvInManifest()ivSource(HlsIvSource ivSource) Sets the value ofHlsOutputGroupProps.getIvSource()keepSegments(Number keepSegments) Sets the value ofHlsOutputGroupProps.getKeepSegments()Sets the value ofHlsOutputGroupProps.getKeyFormat()keyFormatVersions(String keyFormatVersions) Sets the value ofHlsOutputGroupProps.getKeyFormatVersions()keyProviderSettings(HlsKeyProviderSettings keyProviderSettings) Sets the value ofHlsOutputGroupProps.getKeyProviderSettings()manifestCompression(HlsManifestCompression manifestCompression) Sets the value ofHlsOutputGroupProps.getManifestCompression()manifestDurationFormat(HlsManifestDurationFormat manifestDurationFormat) Sets the value ofHlsOutputGroupProps.getManifestDurationFormat()minSegment(Segment minSegment) Sets the value ofHlsOutputGroupProps.getMinSegment()Sets the value ofHlsOutputGroupProps.getMode()Sets the value ofHlsOutputGroupProps.getName()outputs(List<? extends HlsOutputDefinition> outputs) Sets the value ofHlsOutputGroupProps.getOutputs()outputSelection(HlsOutputSelection outputSelection) Sets the value ofHlsOutputGroupProps.getOutputSelection()programDateTime(HlsProgramDateTime programDateTime) Sets the value ofHlsOutputGroupProps.getProgramDateTime()programDateTimeClock(HlsProgramDateTimeClock programDateTimeClock) Sets the value ofHlsOutputGroupProps.getProgramDateTimeClock()programDateTimePeriod(Duration programDateTimePeriod) Sets the value ofHlsOutputGroupProps.getProgramDateTimePeriod()redundantManifest(HlsRedundantManifest redundantManifest) Sets the value ofHlsOutputGroupProps.getRedundantManifest()Sets the value ofHlsOutputGroupProps.getSegment()segmentationMode(HlsSegmentationMode segmentationMode) Sets the value ofHlsOutputGroupProps.getSegmentationMode()segmentsPerSubdirectory(Number segmentsPerSubdirectory) Sets the value ofHlsOutputGroupProps.getSegmentsPerSubdirectory()streamInfResolution(HlsStreamInfResolution streamInfResolution) Sets the value ofHlsOutputGroupProps.getStreamInfResolution()timedMetadataId3Frame(HlsTimedMetadataId3Frame timedMetadataId3Frame) Sets the value ofHlsOutputGroupProps.getTimedMetadataId3Frame()timedMetadataId3Period(Duration timedMetadataId3Period) Sets the value ofHlsOutputGroupProps.getTimedMetadataId3Period()timestampDelta(Duration timestampDelta) Sets the value ofHlsOutputGroupProps.getTimestampDelta()tsFileMode(HlsTsFileMode tsFileMode) Sets the value ofHlsOutputGroupProps.getTsFileMode()
-
Constructor Details
-
Builder
public Builder()
-
-
Method Details
-
destinations
@Stability(Experimental) public HlsOutputGroupProps.Builder destinations(List<? extends OutputDestination> destinations) Sets the value ofHlsOutputGroupProps.getDestinations()- Parameters:
destinations- The destinations for this output group — one per pipeline. This parameter is required. Array position determines the pipeline mapping:destinations[0]→ Pipeline 0destinations[1]→ Pipeline 1 (STANDARD channels only)
For a SINGLE_PIPELINE channel, provide exactly 1 destination. For a STANDARD channel, provide exactly 2 destinations.
- Returns:
this
-
name
Sets the value ofHlsOutputGroupProps.getName()- Parameters:
name- The name of this output group. This parameter is required. Used as the destination reference ID. Underscores are normalised to hyphens internally.- Returns:
this
-
adMarkers
@Stability(Experimental) public HlsOutputGroupProps.Builder adMarkers(List<? extends HlsAdMarkers> adMarkers) Sets the value ofHlsOutputGroupProps.getAdMarkers()- Parameters:
adMarkers- Chooses one or more ad marker types to pass SCTE35 signals through to this group of Apple HLS outputs.- Returns:
this
-
baseUrlContent
Sets the value ofHlsOutputGroupProps.getBaseUrlContent()- Parameters:
baseUrlContent- A partial URI prefix that will be prepended to each output in the media .m3u8 file.- Returns:
this
-
baseUrlContent1
Sets the value ofHlsOutputGroupProps.getBaseUrlContent1()- Parameters:
baseUrlContent1- Optional base URL content for pipeline 1 if different from pipeline 0.- Returns:
this
-
baseUrlManifest
Sets the value ofHlsOutputGroupProps.getBaseUrlManifest()- Parameters:
baseUrlManifest- A partial URI prefix that will be prepended to each output in the media .m3u8 file for the manifest.- Returns:
this
-
baseUrlManifest1
@Stability(Experimental) public HlsOutputGroupProps.Builder baseUrlManifest1(String baseUrlManifest1) Sets the value ofHlsOutputGroupProps.getBaseUrlManifest1()- Parameters:
baseUrlManifest1- Optional base URL manifest for pipeline 1 if different from pipeline 0.- Returns:
this
-
captionLanguageMappings
@Stability(Experimental) public HlsOutputGroupProps.Builder captionLanguageMappings(List<? extends CaptionLanguageMapping> captionLanguageMappings) Sets the value ofHlsOutputGroupProps.getCaptionLanguageMappings()- Parameters:
captionLanguageMappings- A mapping of up to 4 captions channels to captions languages. Meaningful only if captionLanguageSetting is set to INSERT.- Returns:
this
-
captionLanguageSetting
@Stability(Experimental) public HlsOutputGroupProps.Builder captionLanguageSetting(HlsCaptionLanguageSetting captionLanguageSetting) Sets the value ofHlsOutputGroupProps.getCaptionLanguageSetting()- Parameters:
captionLanguageSetting- Applies only to 608 embedded output captions.- Returns:
this
-
clientCache
Sets the value ofHlsOutputGroupProps.getClientCache()- Parameters:
clientCache- When set to DISABLED, sets the #EXT-X-ALLOW-CACHE:no tag in the manifest.- Returns:
this
-
codecSpecification
@Stability(Experimental) public HlsOutputGroupProps.Builder codecSpecification(HlsCodecSpecification codecSpecification) Sets the value ofHlsOutputGroupProps.getCodecSpecification()- Parameters:
codecSpecification- The specification to use (RFC-6381 or the default RFC-4281) during m3u8 playlist generation.- Returns:
this
-
constantIv
Sets the value ofHlsOutputGroupProps.getConstantIv()- Parameters:
constantIv- A 128-bit, 16-byte hex value represented by a 32-character text string used as the IV for encryption. Used with encryptionType when ivSource is set to EXPLICIT.- Returns:
this
-
directoryStructure
@Stability(Experimental) public HlsOutputGroupProps.Builder directoryStructure(HlsDirectoryStructure directoryStructure) Sets the value ofHlsOutputGroupProps.getDirectoryStructure()- Parameters:
directoryStructure- Places segments in subdirectories.- Returns:
this
-
discontinuityTags
@Stability(Experimental) public HlsOutputGroupProps.Builder discontinuityTags(HlsDiscontinuityTags discontinuityTags) Sets the value ofHlsOutputGroupProps.getDiscontinuityTags()- Parameters:
discontinuityTags- Specifies whether to insert EXT-X-DISCONTINUITY tags in the HLS child manifests.- Returns:
this
-
encryptionType
@Stability(Experimental) public HlsOutputGroupProps.Builder encryptionType(HlsEncryptionType encryptionType) Sets the value ofHlsOutputGroupProps.getEncryptionType()- Parameters:
encryptionType- Encrypts the segments with the specified encryption scheme.- Returns:
this
-
hlsCdnSettings
@Stability(Experimental) public HlsOutputGroupProps.Builder hlsCdnSettings(HlsCdnSettings hlsCdnSettings) Sets the value ofHlsOutputGroupProps.getHlsCdnSettings()- Parameters:
hlsCdnSettings- Settings to configure the CDN for the HLS output.- Returns:
this
-
hlsId3SegmentTagging
@Stability(Experimental) public HlsOutputGroupProps.Builder hlsId3SegmentTagging(HlsId3SegmentTaggingState hlsId3SegmentTagging) Sets the value ofHlsOutputGroupProps.getHlsId3SegmentTagging()- Parameters:
hlsId3SegmentTagging- State of HLS ID3 Segment Tagging.- Returns:
this
-
iFrameOnlyPlaylists
@Stability(Experimental) public HlsOutputGroupProps.Builder iFrameOnlyPlaylists(HlsIFrameOnlyPlaylists iFrameOnlyPlaylists) Sets the value ofHlsOutputGroupProps.getIFrameOnlyPlaylists()- Parameters:
iFrameOnlyPlaylists- Whether to create an I-frame-only manifest.- Returns:
this
-
incompleteSegmentBehavior
@Stability(Experimental) public HlsOutputGroupProps.Builder incompleteSegmentBehavior(HlsIncompleteSegmentBehavior incompleteSegmentBehavior) Sets the value ofHlsOutputGroupProps.getIncompleteSegmentBehavior()- Parameters:
incompleteSegmentBehavior- Specifies whether to include the final (incomplete) segment in the media output.- Returns:
this
-
indexNSegments
Sets the value ofHlsOutputGroupProps.getIndexNSegments()- Parameters:
indexNSegments- The maximum number of segments in the media manifest (LIVE mode only).- Returns:
this
-
inputLossAction
@Stability(Experimental) public HlsOutputGroupProps.Builder inputLossAction(HlsInputLossAction inputLossAction) Sets the value ofHlsOutputGroupProps.getInputLossAction()- Parameters:
inputLossAction- Action to take when the input is lost.- Returns:
this
-
ivInManifest
@Stability(Experimental) public HlsOutputGroupProps.Builder ivInManifest(HlsIvInManifest ivInManifest) Sets the value ofHlsOutputGroupProps.getIvInManifest()- Parameters:
ivInManifest- Whether the IV is listed in the manifest.- Returns:
this
-
ivSource
Sets the value ofHlsOutputGroupProps.getIvSource()- Parameters:
ivSource- Whether the IV follows the segment number or is explicit.- Returns:
this
-
keepSegments
Sets the value ofHlsOutputGroupProps.getKeepSegments()- Parameters:
keepSegments- The number of segments to retain in the destination directory (LIVE mode only).- Returns:
this
-
keyFormat
Sets the value ofHlsOutputGroupProps.getKeyFormat()- Parameters:
keyFormat- Specifies how the key is represented in the resource identified by the URI.- Returns:
this
-
keyFormatVersions
@Stability(Experimental) public HlsOutputGroupProps.Builder keyFormatVersions(String keyFormatVersions) Sets the value ofHlsOutputGroupProps.getKeyFormatVersions()- Parameters:
keyFormatVersions- Either a single positive integer version value or a slash-delimited list of version values (1/2/3).- Returns:
this
-
keyProviderSettings
@Stability(Experimental) public HlsOutputGroupProps.Builder keyProviderSettings(HlsKeyProviderSettings keyProviderSettings) Sets the value ofHlsOutputGroupProps.getKeyProviderSettings()- Parameters:
keyProviderSettings- The key provider settings for HLS encryption.- Returns:
this
-
manifestCompression
@Stability(Experimental) public HlsOutputGroupProps.Builder manifestCompression(HlsManifestCompression manifestCompression) Sets the value ofHlsOutputGroupProps.getManifestCompression()- Parameters:
manifestCompression- When set to GZIP, compresses HLS playlist.- Returns:
this
-
manifestDurationFormat
@Stability(Experimental) public HlsOutputGroupProps.Builder manifestDurationFormat(HlsManifestDurationFormat manifestDurationFormat) Sets the value ofHlsOutputGroupProps.getManifestDurationFormat()- Parameters:
manifestDurationFormat- Indicates whether the output manifest should use floating point or integer values for segment duration.- Returns:
this
-
minSegment
Sets the value ofHlsOutputGroupProps.getMinSegment()- Parameters:
minSegment- The minimum segment length. HLS supports whole-second segments only.- Returns:
this
-
mode
Sets the value ofHlsOutputGroupProps.getMode()- Parameters:
mode- The output mode — LIVE or VOD.- Returns:
this
-
outputs
@Stability(Experimental) public HlsOutputGroupProps.Builder outputs(List<? extends HlsOutputDefinition> outputs) Sets the value ofHlsOutputGroupProps.getOutputs()- Parameters:
outputs- The outputs for this HLS output group.- Returns:
this
-
outputSelection
@Stability(Experimental) public HlsOutputGroupProps.Builder outputSelection(HlsOutputSelection outputSelection) Sets the value ofHlsOutputGroupProps.getOutputSelection()- Parameters:
outputSelection- Controls which manifests and segments are generated.- Returns:
this
-
programDateTime
@Stability(Experimental) public HlsOutputGroupProps.Builder programDateTime(HlsProgramDateTime programDateTime) Sets the value ofHlsOutputGroupProps.getProgramDateTime()- Parameters:
programDateTime- Includes or excludes the EXT-X-PROGRAM-DATE-TIME tag in .m3u8 manifest files.- Returns:
this
-
programDateTimeClock
@Stability(Experimental) public HlsOutputGroupProps.Builder programDateTimeClock(HlsProgramDateTimeClock programDateTimeClock) Sets the value ofHlsOutputGroupProps.getProgramDateTimeClock()- Parameters:
programDateTimeClock- Specifies the algorithm used to drive the HLS EXT-X-PROGRAM-DATE-TIME clock.- Returns:
this
-
programDateTimePeriod
@Stability(Experimental) public HlsOutputGroupProps.Builder programDateTimePeriod(Duration programDateTimePeriod) Sets the value ofHlsOutputGroupProps.getProgramDateTimePeriod()- Parameters:
programDateTimePeriod- The period of insertion of the EXT-X-PROGRAM-DATE-TIME entry.- Returns:
this
-
redundantManifest
@Stability(Experimental) public HlsOutputGroupProps.Builder redundantManifest(HlsRedundantManifest redundantManifest) Sets the value ofHlsOutputGroupProps.getRedundantManifest()- Parameters:
redundantManifest- Whether the master manifest includes information about both pipelines.- Returns:
this
-
segment
Sets the value ofHlsOutputGroupProps.getSegment()- Parameters:
segment- The length of each media segment. HLS supports whole-second segments only.- Returns:
this
-
segmentationMode
@Stability(Experimental) public HlsOutputGroupProps.Builder segmentationMode(HlsSegmentationMode segmentationMode) Sets the value ofHlsOutputGroupProps.getSegmentationMode()- Parameters:
segmentationMode- The segmentation mode.- Returns:
this
-
segmentsPerSubdirectory
@Stability(Experimental) public HlsOutputGroupProps.Builder segmentsPerSubdirectory(Number segmentsPerSubdirectory) Sets the value ofHlsOutputGroupProps.getSegmentsPerSubdirectory()- Parameters:
segmentsPerSubdirectory- The number of segments to write to a subdirectory before starting a new one.- Returns:
this
-
streamInfResolution
@Stability(Experimental) public HlsOutputGroupProps.Builder streamInfResolution(HlsStreamInfResolution streamInfResolution) Sets the value ofHlsOutputGroupProps.getStreamInfResolution()- Parameters:
streamInfResolution- Whether to include or exclude the RESOLUTION attribute for a video in the EXT-X-STREAM-INF tag.- Returns:
this
-
timedMetadataId3Frame
@Stability(Experimental) public HlsOutputGroupProps.Builder timedMetadataId3Frame(HlsTimedMetadataId3Frame timedMetadataId3Frame) Sets the value ofHlsOutputGroupProps.getTimedMetadataId3Frame()- Parameters:
timedMetadataId3Frame- Indicates the ID3 frame that has the timecode.- Returns:
this
-
timedMetadataId3Period
@Stability(Experimental) public HlsOutputGroupProps.Builder timedMetadataId3Period(Duration timedMetadataId3Period) Sets the value ofHlsOutputGroupProps.getTimedMetadataId3Period()- Parameters:
timedMetadataId3Period- The timed metadata interval.- Returns:
this
-
timestampDelta
Sets the value ofHlsOutputGroupProps.getTimestampDelta()- Parameters:
timestampDelta- Provides an extra delta offset to fine tune the timestamps.- Returns:
this
-
tsFileMode
Sets the value ofHlsOutputGroupProps.getTsFileMode()- Parameters:
tsFileMode- Whether to emit segmented files or a single file.- Returns:
this
-
build
Builds the configured instance.- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<HlsOutputGroupProps>- Returns:
- a new instance of
HlsOutputGroupProps - Throws:
NullPointerException- if any required attribute was not provided
-