Interface HlsOutputGroupProps

All Superinterfaces:
software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
HlsOutputGroupProps.Jsii$Proxy

@Generated(value="jsii-pacmak/1.139.0 (build 26a6b54)", date="2026-09-02T11:03:41.133Z") @Stability(Experimental) public interface HlsOutputGroupProps extends software.amazon.jsii.JsiiSerializable
(experimental) Properties for an HLS output group.

Example:

 Stack stack;
 IInput input;
 IBucket bucket;
 EncodeConfiguration video;
 Channel.Builder.create(stack, "Channel")
         .inputs(List.of(InputAttachment.builder().input(input).build()))
         .availBlanking(AvailBlanking.builder()
                 .state(AvailBlankingState.ENABLED)
                 .image(FileLocation.fromBucket(bucket, "slates/avail.png"))
                 .build())
         .blackoutSlate(BlackoutSlate.builder()
                 .state(BlackoutSlateState.ENABLED)
                 .image(FileLocation.fromBucket(bucket, "slates/blackout.png"))
                 .build())
         .outputGroups(List.of(OutputGroupConfiguration.hls(HlsOutputGroupProps.builder()
                 .name("hls")
                 .destinations(List.of(OutputDestination.toBucket(bucket, "live/stream")))
                 .outputs(List.of(HlsOutputDefinition.builder().encodes(List.of(video)).outputName("hls_out").build()))
                 .build())))
         .build();
 
  • Method Details

    • getDestinations

      @Stability(Experimental) @NotNull List<OutputDestination> getDestinations()
      (experimental) The destinations for this output group — one per pipeline.

      Array position determines the pipeline mapping:

      • destinations[0] → Pipeline 0
      • destinations[1] → Pipeline 1 (STANDARD channels only)

      For a SINGLE_PIPELINE channel, provide exactly 1 destination. For a STANDARD channel, provide exactly 2 destinations.

    • getName

      @Stability(Experimental) @NotNull String getName()
      (experimental) The name of this output group.

      Used as the destination reference ID. Underscores are normalised to hyphens internally.

    • getAdMarkers

      @Stability(Experimental) @Nullable default List<HlsAdMarkers> getAdMarkers()
      (experimental) Chooses one or more ad marker types to pass SCTE35 signals through to this group of Apple HLS outputs.

      Default: - no ad markers

    • getBaseUrlContent

      @Stability(Experimental) @Nullable default String getBaseUrlContent()
      (experimental) A partial URI prefix that will be prepended to each output in the media .m3u8 file.

      Default: - no base URL content prefix

    • getBaseUrlContent1

      @Stability(Experimental) @Nullable default String getBaseUrlContent1()
      (experimental) Optional base URL content for pipeline 1 if different from pipeline 0.

      Default: - no base URL content 1

    • getBaseUrlManifest

      @Stability(Experimental) @Nullable default String getBaseUrlManifest()
      (experimental) A partial URI prefix that will be prepended to each output in the media .m3u8 file for the manifest.

      Default: - no base URL manifest prefix

    • getBaseUrlManifest1

      @Stability(Experimental) @Nullable default String getBaseUrlManifest1()
      (experimental) Optional base URL manifest for pipeline 1 if different from pipeline 0.

      Default: - no base URL manifest 1

    • getCaptionLanguageMappings

      @Stability(Experimental) @Nullable default List<CaptionLanguageMapping> getCaptionLanguageMappings()
      (experimental) A mapping of up to 4 captions channels to captions languages.

      Meaningful only if captionLanguageSetting is set to INSERT.

      Default: - no caption language mappings

    • getCaptionLanguageSetting

      @Stability(Experimental) @Nullable default HlsCaptionLanguageSetting getCaptionLanguageSetting()
      (experimental) Applies only to 608 embedded output captions.

      Default: - service default

    • getClientCache

      @Stability(Experimental) @Nullable default HlsClientCache getClientCache()
      (experimental) When set to DISABLED, sets the #EXT-X-ALLOW-CACHE:no tag in the manifest.

      Default: HlsClientCache.ENABLED

    • getCodecSpecification

      @Stability(Experimental) @Nullable default HlsCodecSpecification getCodecSpecification()
      (experimental) The specification to use (RFC-6381 or the default RFC-4281) during m3u8 playlist generation.

      Default: HlsCodecSpecification.RFC_4281

    • getConstantIv

      @Stability(Experimental) @Nullable default String getConstantIv()
      (experimental) 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.

      Default: - no constant IV

    • getDirectoryStructure

      @Stability(Experimental) @Nullable default HlsDirectoryStructure getDirectoryStructure()
      (experimental) Places segments in subdirectories.

      Default: HlsDirectoryStructure.SINGLE_DIRECTORY

    • getDiscontinuityTags

      @Stability(Experimental) @Nullable default HlsDiscontinuityTags getDiscontinuityTags()
      (experimental) Specifies whether to insert EXT-X-DISCONTINUITY tags in the HLS child manifests.

      Default: HlsDiscontinuityTags.INSERT

    • getEncryptionType

      @Stability(Experimental) @Nullable default HlsEncryptionType getEncryptionType()
      (experimental) Encrypts the segments with the specified encryption scheme.

      Default: - no encryption

    • getHlsCdnSettings

      @Stability(Experimental) @Nullable default HlsCdnSettings getHlsCdnSettings()
      (experimental) Settings to configure the CDN for the HLS output.

      Default: - service default

    • getHlsId3SegmentTagging

      @Stability(Experimental) @Nullable default HlsId3SegmentTaggingState getHlsId3SegmentTagging()
      (experimental) State of HLS ID3 Segment Tagging.

      Default: HlsId3SegmentTaggingState.DISABLED

    • getIFrameOnlyPlaylists

      @Stability(Experimental) @Nullable default HlsIFrameOnlyPlaylists getIFrameOnlyPlaylists()
      (experimental) Whether to create an I-frame-only manifest.

      Default: HlsIFrameOnlyPlaylists.DISABLED

    • getIncompleteSegmentBehavior

      @Stability(Experimental) @Nullable default HlsIncompleteSegmentBehavior getIncompleteSegmentBehavior()
      (experimental) Specifies whether to include the final (incomplete) segment in the media output.

      Default: HlsIncompleteSegmentBehavior.AUTO

    • getIndexNSegments

      @Stability(Experimental) @Nullable default Number getIndexNSegments()
      (experimental) The maximum number of segments in the media manifest (LIVE mode only).

      Default: 10

    • getInputLossAction

      @Stability(Experimental) @Nullable default HlsInputLossAction getInputLossAction()
      (experimental) Action to take when the input is lost.

      Default: HlsInputLossAction.EMIT_OUTPUT

    • getIvInManifest

      @Stability(Experimental) @Nullable default HlsIvInManifest getIvInManifest()
      (experimental) Whether the IV is listed in the manifest.

      Default: - service default

    • getIvSource

      @Stability(Experimental) @Nullable default HlsIvSource getIvSource()
      (experimental) Whether the IV follows the segment number or is explicit.

      Default: - service default

    • getKeepSegments

      @Stability(Experimental) @Nullable default Number getKeepSegments()
      (experimental) The number of segments to retain in the destination directory (LIVE mode only).

      Default: 21

    • getKeyFormat

      @Stability(Experimental) @Nullable default String getKeyFormat()
      (experimental) Specifies how the key is represented in the resource identified by the URI.

      Default: - service default

    • getKeyFormatVersions

      @Stability(Experimental) @Nullable default String getKeyFormatVersions()
      (experimental) Either a single positive integer version value or a slash-delimited list of version values (1/2/3).

      Default: - service default

    • getKeyProviderSettings

      @Stability(Experimental) @Nullable default HlsKeyProviderSettings getKeyProviderSettings()
      (experimental) The key provider settings for HLS encryption.

      Default: - no key provider settings

    • getManifestCompression

      @Stability(Experimental) @Nullable default HlsManifestCompression getManifestCompression()
      (experimental) When set to GZIP, compresses HLS playlist.

      Default: HlsManifestCompression.NONE

    • getManifestDurationFormat

      @Stability(Experimental) @Nullable default HlsManifestDurationFormat getManifestDurationFormat()
      (experimental) Indicates whether the output manifest should use floating point or integer values for segment duration.

      Default: HlsManifestDurationFormat.FLOATING_POINT

    • getMinSegment

      @Stability(Experimental) @Nullable default Segment getMinSegment()
      (experimental) The minimum segment length.

      HLS supports whole-second segments only.

      Default: - service default

    • getMode

      @Stability(Experimental) @Nullable default HlsMode getMode()
      (experimental) The output mode — LIVE or VOD.

      Default: HlsMode.LIVE

    • getOutputs

      @Stability(Experimental) @Nullable default List<HlsOutputDefinition> getOutputs()
      (experimental) The outputs for this HLS output group.

      Default: - no initial outputs

    • getOutputSelection

      @Stability(Experimental) @Nullable default HlsOutputSelection getOutputSelection()
      (experimental) Controls which manifests and segments are generated.

      Default: HlsOutputSelection.MANIFESTS_AND_SEGMENTS

    • getProgramDateTime

      @Stability(Experimental) @Nullable default HlsProgramDateTime getProgramDateTime()
      (experimental) Includes or excludes the EXT-X-PROGRAM-DATE-TIME tag in .m3u8 manifest files.

      Default: HlsProgramDateTime.INCLUDE

    • getProgramDateTimeClock

      @Stability(Experimental) @Nullable default HlsProgramDateTimeClock getProgramDateTimeClock()
      (experimental) Specifies the algorithm used to drive the HLS EXT-X-PROGRAM-DATE-TIME clock.

      Default: - HlsProgramDateTimeClock.SYSTEM_CLOCK, or INITIALIZE_FROM_OUTPUT_TIMECODE with epoch locking

    • getProgramDateTimePeriod

      @Stability(Experimental) @Nullable default Duration getProgramDateTimePeriod()
      (experimental) The period of insertion of the EXT-X-PROGRAM-DATE-TIME entry.

      Default: Duration.minutes(10)

    • getRedundantManifest

      @Stability(Experimental) @Nullable default HlsRedundantManifest getRedundantManifest()
      (experimental) Whether the master manifest includes information about both pipelines.

      Default: HlsRedundantManifest.DISABLED

    • getSegment

      @Stability(Experimental) @Nullable default Segment getSegment()
      (experimental) The length of each media segment.

      HLS supports whole-second segments only.

      Default: - Segment.seconds(2)

    • getSegmentationMode

      @Stability(Experimental) @Nullable default HlsSegmentationMode getSegmentationMode()
      (experimental) The segmentation mode.

      Default: HlsSegmentationMode.USE_SEGMENT_DURATION

    • getSegmentsPerSubdirectory

      @Stability(Experimental) @Nullable default Number getSegmentsPerSubdirectory()
      (experimental) The number of segments to write to a subdirectory before starting a new one.

      Default: 10000

    • getStreamInfResolution

      @Stability(Experimental) @Nullable default HlsStreamInfResolution getStreamInfResolution()
      (experimental) Whether to include or exclude the RESOLUTION attribute for a video in the EXT-X-STREAM-INF tag.

      Default: HlsStreamInfResolution.INCLUDE

    • getTimedMetadataId3Frame

      @Stability(Experimental) @Nullable default HlsTimedMetadataId3Frame getTimedMetadataId3Frame()
      (experimental) Indicates the ID3 frame that has the timecode.

      Default: HlsTimedMetadataId3Frame.PRIV

    • getTimedMetadataId3Period

      @Stability(Experimental) @Nullable default Duration getTimedMetadataId3Period()
      (experimental) The timed metadata interval.

      Default: Duration.seconds(10)

    • getTimestampDelta

      @Stability(Experimental) @Nullable default Duration getTimestampDelta()
      (experimental) Provides an extra delta offset to fine tune the timestamps.

      Default: - service default

    • getTsFileMode

      @Stability(Experimental) @Nullable default HlsTsFileMode getTsFileMode()
      (experimental) Whether to emit segmented files or a single file.

      Default: HlsTsFileMode.SEGMENTED_FILES

    • builder

      @Stability(Experimental) static HlsOutputGroupProps.Builder builder()
      Returns:
      a HlsOutputGroupProps.Builder of HlsOutputGroupProps