amazonka-mediaconvert-2.0: Amazon Elemental MediaConvert SDK.
Copyright(c) 2013-2023 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellSafe-Inferred
LanguageHaskell2010

Amazonka.MediaConvert.Types.HlsGroupSettings

Description

 
Synopsis

Documentation

data HlsGroupSettings Source #

Settings related to your HLS output package. For more information, see https://docs.aws.amazon.com/mediaconvert/latest/ug/outputs-file-ABR.html. When you work directly in your JSON job specification, include this object and any required children when you set Type, under OutputGroupSettings, to HLS_GROUP_SETTINGS.

See: newHlsGroupSettings smart constructor.

Constructors

HlsGroupSettings' 

Fields

  • adMarkers :: Maybe [HlsAdMarkers]

    Choose one or more ad marker types to decorate your Apple HLS manifest. This setting does not determine whether SCTE-35 markers appear in the outputs themselves.

  • additionalManifests :: Maybe [HlsAdditionalManifest]

    By default, the service creates one top-level .m3u8 HLS manifest for each HLS output group in your job. This default manifest references every output in the output group. To create additional top-level manifests that reference a subset of the outputs in the output group, specify a list of them here.

  • audioOnlyHeader :: Maybe HlsAudioOnlyHeader

    Ignore this setting unless you are using FairPlay DRM with Verimatrix and you encounter playback issues. Keep the default value, Include (INCLUDE), to output audio-only headers. Choose Exclude (EXCLUDE) to remove the audio-only headers from your audio segments.

  • baseUrl :: Maybe Text

    A partial URI prefix that will be prepended to each output in the media .m3u8 file. Can be used if base manifest is delivered from a different URL than the main .m3u8 file.

  • captionLanguageMappings :: Maybe [HlsCaptionLanguageMapping]

    Language to be used on Caption outputs

  • captionLanguageSetting :: Maybe HlsCaptionLanguageSetting

    Applies only to 608 Embedded output captions. Insert: Include CLOSED-CAPTIONS lines in the manifest. Specify at least one language in the CC1 Language Code field. One CLOSED-CAPTION line is added for each Language Code you specify. Make sure to specify the languages in the order in which they appear in the original source (if the source is embedded format) or the order of the caption selectors (if the source is other than embedded). Otherwise, languages in the manifest will not match up properly with the output captions. None: Include CLOSED-CAPTIONS=NONE line in the manifest. Omit: Omit any CLOSED-CAPTIONS line from the manifest.

  • captionSegmentLengthControl :: Maybe HlsCaptionSegmentLengthControl

    Set Caption segment length control (CaptionSegmentLengthControl) to Match video (MATCH_VIDEO) to create caption segments that align with the video segments from the first video output in this output group. For example, if the video segments are 2 seconds long, your WebVTT segments will also be 2 seconds long. Keep the default setting, Large segments (LARGE_SEGMENTS) to create caption segments that are 300 seconds long.

  • clientCache :: Maybe HlsClientCache

    Disable this setting only when your workflow requires the #EXT-X-ALLOW-CACHE:no tag. Otherwise, keep the default value Enabled (ENABLED) and control caching in your video distribution set up. For example, use the Cache-Control http header.

  • codecSpecification :: Maybe HlsCodecSpecification

    Specification to use (RFC-6381 or the default RFC-4281) during m3u8 playlist generation.

  • destination :: Maybe Text

    Use Destination (Destination) to specify the S3 output location and the output filename base. Destination accepts format identifiers. If you do not specify the base filename in the URI, the service will use the filename of the input file. If your job has multiple inputs, the service uses the filename of the first input file.

  • destinationSettings :: Maybe DestinationSettings

    Settings associated with the destination. Will vary based on the type of destination

  • directoryStructure :: Maybe HlsDirectoryStructure

    Indicates whether segments should be placed in subdirectories.

  • encryption :: Maybe HlsEncryptionSettings

    DRM settings.

  • imageBasedTrickPlay :: Maybe HlsImageBasedTrickPlay

    Specify whether MediaConvert generates images for trick play. Keep the default value, None (NONE), to not generate any images. Choose Thumbnail (THUMBNAIL) to generate tiled thumbnails. Choose Thumbnail and full frame (THUMBNAIL_AND_FULLFRAME) to generate tiled thumbnails and full-resolution images of single frames. MediaConvert creates a child manifest for each set of images that you generate and adds corresponding entries to the parent manifest. A common application for these images is Roku trick mode. The thumbnails and full-frame images that MediaConvert creates with this feature are compatible with this Roku specification: https://developer.roku.com/docs/developer-program/media-playback/trick-mode/hls-and-dash.md

  • imageBasedTrickPlaySettings :: Maybe HlsImageBasedTrickPlaySettings

    Tile and thumbnail settings applicable when imageBasedTrickPlay is ADVANCED

  • manifestCompression :: Maybe HlsManifestCompression

    When set to GZIP, compresses HLS playlist.

  • manifestDurationFormat :: Maybe HlsManifestDurationFormat

    Indicates whether the output manifest should use floating point values for segment duration.

  • minFinalSegmentLength :: Maybe Double

    Keep this setting at the default value of 0, unless you are troubleshooting a problem with how devices play back the end of your video asset. If you know that player devices are hanging on the final segment of your video because the length of your final segment is too short, use this setting to specify a minimum final segment length, in seconds. Choose a value that is greater than or equal to 1 and less than your segment length. When you specify a value for this setting, the encoder will combine any final segment that is shorter than the length that you specify with the previous segment. For example, your segment length is 3 seconds and your final segment is .5 seconds without a minimum final segment length; when you set the minimum final segment length to 1, your final segment is 3.5 seconds.

  • minSegmentLength :: Maybe Natural

    When set, Minimum Segment Size is enforced by looking ahead and back within the specified range for a nearby avail and extending the segment size if needed.

  • outputSelection :: Maybe HlsOutputSelection

    Indicates whether the .m3u8 manifest file should be generated for this HLS output group.

  • programDateTime :: Maybe HlsProgramDateTime

    Includes or excludes EXT-X-PROGRAM-DATE-TIME tag in .m3u8 manifest files. The value is calculated as follows: either the program date and time are initialized using the input timecode source, or the time is initialized using the input timecode source and the date is initialized using the timestamp_offset.

  • programDateTimePeriod :: Maybe Natural

    Period of insertion of EXT-X-PROGRAM-DATE-TIME entry, in seconds.

  • segmentControl :: Maybe HlsSegmentControl

    When set to SINGLE_FILE, emits program as a single media resource (.ts) file, uses #EXT-X-BYTERANGE tags to index segment for playback.

  • segmentLength :: Maybe Natural

    Specify the length, in whole seconds, of each segment. When you don't specify a value, MediaConvert defaults to 10. Related settings: Use Segment length control (SegmentLengthControl) to specify whether the encoder enforces this value strictly. Use Segment control (HlsSegmentControl) to specify whether MediaConvert creates separate segment files or one content file that has metadata to mark the segment boundaries.

  • segmentLengthControl :: Maybe HlsSegmentLengthControl

    Specify how you want MediaConvert to determine the segment length. Choose Exact (EXACT) to have the encoder use the exact length that you specify with the setting Segment length (SegmentLength). This might result in extra I-frames. Choose Multiple of GOP (GOP_MULTIPLE) to have the encoder round up the segment lengths to match the next GOP boundary.

  • segmentsPerSubdirectory :: Maybe Natural

    Number of segments to write to a subdirectory before starting a new one. directoryStructure must be SINGLE_DIRECTORY for this setting to have an effect.

  • streamInfResolution :: Maybe HlsStreamInfResolution

    Include or exclude RESOLUTION attribute for video in EXT-X-STREAM-INF tag of variant manifest.

  • targetDurationCompatibilityMode :: Maybe HlsTargetDurationCompatibilityMode

    When set to LEGACY, the segment target duration is always rounded up to the nearest integer value above its current value in seconds. When set to SPEC\\_COMPLIANT, the segment target duration is rounded up to the nearest integer value if fraction seconds are greater than or equal to 0.5 (>= 0.5) and rounded down if less than 0.5 (< 0.5). You may need to use LEGACY if your client needs to ensure that the target duration is always longer than the actual duration of the segment. Some older players may experience interrupted playback when the actual duration of a track in a segment is longer than the target duration.

  • timedMetadataId3Frame :: Maybe HlsTimedMetadataId3Frame

    Specify the type of the ID3 frame (timedMetadataId3Frame) to use for ID3 timestamps (timedMetadataId3Period) in your output. To include ID3 timestamps: Specify PRIV (PRIV) or TDRL (TDRL) and set ID3 metadata (timedMetadata) to Passthrough (PASSTHROUGH). To exclude ID3 timestamps: Set ID3 timestamp frame type to None (NONE).

  • timedMetadataId3Period :: Maybe Int

    Specify the interval in seconds to write ID3 timestamps in your output. The first timestamp starts at the output timecode and date, and increases incrementally with each ID3 timestamp. To use the default interval of 10 seconds: Leave blank. To include this metadata in your output: Set ID3 timestamp frame type (timedMetadataId3Frame) to PRIV (PRIV) or TDRL (TDRL), and set ID3 metadata (timedMetadata) to Passthrough (PASSTHROUGH).

  • timestampDeltaMilliseconds :: Maybe Int

    Provides an extra millisecond delta offset to fine tune the timestamps.

Instances

Instances details
FromJSON HlsGroupSettings Source # 
Instance details

Defined in Amazonka.MediaConvert.Types.HlsGroupSettings

ToJSON HlsGroupSettings Source # 
Instance details

Defined in Amazonka.MediaConvert.Types.HlsGroupSettings

Generic HlsGroupSettings Source # 
Instance details

Defined in Amazonka.MediaConvert.Types.HlsGroupSettings

Associated Types

type Rep HlsGroupSettings :: Type -> Type #

Read HlsGroupSettings Source # 
Instance details

Defined in Amazonka.MediaConvert.Types.HlsGroupSettings

Show HlsGroupSettings Source # 
Instance details

Defined in Amazonka.MediaConvert.Types.HlsGroupSettings

NFData HlsGroupSettings Source # 
Instance details

Defined in Amazonka.MediaConvert.Types.HlsGroupSettings

Methods

rnf :: HlsGroupSettings -> () #

Eq HlsGroupSettings Source # 
Instance details

Defined in Amazonka.MediaConvert.Types.HlsGroupSettings

Hashable HlsGroupSettings Source # 
Instance details

Defined in Amazonka.MediaConvert.Types.HlsGroupSettings

type Rep HlsGroupSettings Source # 
Instance details

Defined in Amazonka.MediaConvert.Types.HlsGroupSettings

type Rep HlsGroupSettings = D1 ('MetaData "HlsGroupSettings" "Amazonka.MediaConvert.Types.HlsGroupSettings" "amazonka-mediaconvert-2.0-ClG8xHhlx4y6bdaCrZchqH" 'False) (C1 ('MetaCons "HlsGroupSettings'" 'PrefixI 'True) ((((S1 ('MetaSel ('Just "adMarkers") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [HlsAdMarkers])) :*: (S1 ('MetaSel ('Just "additionalManifests") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [HlsAdditionalManifest])) :*: S1 ('MetaSel ('Just "audioOnlyHeader") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe HlsAudioOnlyHeader)))) :*: ((S1 ('MetaSel ('Just "baseUrl") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "captionLanguageMappings") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [HlsCaptionLanguageMapping]))) :*: (S1 ('MetaSel ('Just "captionLanguageSetting") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe HlsCaptionLanguageSetting)) :*: S1 ('MetaSel ('Just "captionSegmentLengthControl") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe HlsCaptionSegmentLengthControl))))) :*: (((S1 ('MetaSel ('Just "clientCache") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe HlsClientCache)) :*: S1 ('MetaSel ('Just "codecSpecification") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe HlsCodecSpecification))) :*: (S1 ('MetaSel ('Just "destination") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "destinationSettings") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe DestinationSettings)))) :*: ((S1 ('MetaSel ('Just "directoryStructure") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe HlsDirectoryStructure)) :*: S1 ('MetaSel ('Just "encryption") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe HlsEncryptionSettings))) :*: (S1 ('MetaSel ('Just "imageBasedTrickPlay") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe HlsImageBasedTrickPlay)) :*: S1 ('MetaSel ('Just "imageBasedTrickPlaySettings") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe HlsImageBasedTrickPlaySettings)))))) :*: ((((S1 ('MetaSel ('Just "manifestCompression") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe HlsManifestCompression)) :*: S1 ('MetaSel ('Just "manifestDurationFormat") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe HlsManifestDurationFormat))) :*: (S1 ('MetaSel ('Just "minFinalSegmentLength") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Double)) :*: S1 ('MetaSel ('Just "minSegmentLength") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Natural)))) :*: ((S1 ('MetaSel ('Just "outputSelection") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe HlsOutputSelection)) :*: S1 ('MetaSel ('Just "programDateTime") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe HlsProgramDateTime))) :*: (S1 ('MetaSel ('Just "programDateTimePeriod") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Natural)) :*: S1 ('MetaSel ('Just "segmentControl") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe HlsSegmentControl))))) :*: (((S1 ('MetaSel ('Just "segmentLength") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Natural)) :*: S1 ('MetaSel ('Just "segmentLengthControl") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe HlsSegmentLengthControl))) :*: (S1 ('MetaSel ('Just "segmentsPerSubdirectory") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Natural)) :*: S1 ('MetaSel ('Just "streamInfResolution") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe HlsStreamInfResolution)))) :*: ((S1 ('MetaSel ('Just "targetDurationCompatibilityMode") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe HlsTargetDurationCompatibilityMode)) :*: S1 ('MetaSel ('Just "timedMetadataId3Frame") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe HlsTimedMetadataId3Frame))) :*: (S1 ('MetaSel ('Just "timedMetadataId3Period") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Int)) :*: S1 ('MetaSel ('Just "timestampDeltaMilliseconds") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Int))))))))

newHlsGroupSettings :: HlsGroupSettings Source #

Create a value of HlsGroupSettings with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

$sel:adMarkers:HlsGroupSettings', hlsGroupSettings_adMarkers - Choose one or more ad marker types to decorate your Apple HLS manifest. This setting does not determine whether SCTE-35 markers appear in the outputs themselves.

$sel:additionalManifests:HlsGroupSettings', hlsGroupSettings_additionalManifests - By default, the service creates one top-level .m3u8 HLS manifest for each HLS output group in your job. This default manifest references every output in the output group. To create additional top-level manifests that reference a subset of the outputs in the output group, specify a list of them here.

$sel:audioOnlyHeader:HlsGroupSettings', hlsGroupSettings_audioOnlyHeader - Ignore this setting unless you are using FairPlay DRM with Verimatrix and you encounter playback issues. Keep the default value, Include (INCLUDE), to output audio-only headers. Choose Exclude (EXCLUDE) to remove the audio-only headers from your audio segments.

$sel:baseUrl:HlsGroupSettings', hlsGroupSettings_baseUrl - A partial URI prefix that will be prepended to each output in the media .m3u8 file. Can be used if base manifest is delivered from a different URL than the main .m3u8 file.

$sel:captionLanguageMappings:HlsGroupSettings', hlsGroupSettings_captionLanguageMappings - Language to be used on Caption outputs

$sel:captionLanguageSetting:HlsGroupSettings', hlsGroupSettings_captionLanguageSetting - Applies only to 608 Embedded output captions. Insert: Include CLOSED-CAPTIONS lines in the manifest. Specify at least one language in the CC1 Language Code field. One CLOSED-CAPTION line is added for each Language Code you specify. Make sure to specify the languages in the order in which they appear in the original source (if the source is embedded format) or the order of the caption selectors (if the source is other than embedded). Otherwise, languages in the manifest will not match up properly with the output captions. None: Include CLOSED-CAPTIONS=NONE line in the manifest. Omit: Omit any CLOSED-CAPTIONS line from the manifest.

$sel:captionSegmentLengthControl:HlsGroupSettings', hlsGroupSettings_captionSegmentLengthControl - Set Caption segment length control (CaptionSegmentLengthControl) to Match video (MATCH_VIDEO) to create caption segments that align with the video segments from the first video output in this output group. For example, if the video segments are 2 seconds long, your WebVTT segments will also be 2 seconds long. Keep the default setting, Large segments (LARGE_SEGMENTS) to create caption segments that are 300 seconds long.

$sel:clientCache:HlsGroupSettings', hlsGroupSettings_clientCache - Disable this setting only when your workflow requires the #EXT-X-ALLOW-CACHE:no tag. Otherwise, keep the default value Enabled (ENABLED) and control caching in your video distribution set up. For example, use the Cache-Control http header.

$sel:codecSpecification:HlsGroupSettings', hlsGroupSettings_codecSpecification - Specification to use (RFC-6381 or the default RFC-4281) during m3u8 playlist generation.

$sel:destination:HlsGroupSettings', hlsGroupSettings_destination - Use Destination (Destination) to specify the S3 output location and the output filename base. Destination accepts format identifiers. If you do not specify the base filename in the URI, the service will use the filename of the input file. If your job has multiple inputs, the service uses the filename of the first input file.

$sel:destinationSettings:HlsGroupSettings', hlsGroupSettings_destinationSettings - Settings associated with the destination. Will vary based on the type of destination

$sel:directoryStructure:HlsGroupSettings', hlsGroupSettings_directoryStructure - Indicates whether segments should be placed in subdirectories.

$sel:encryption:HlsGroupSettings', hlsGroupSettings_encryption - DRM settings.

$sel:imageBasedTrickPlay:HlsGroupSettings', hlsGroupSettings_imageBasedTrickPlay - Specify whether MediaConvert generates images for trick play. Keep the default value, None (NONE), to not generate any images. Choose Thumbnail (THUMBNAIL) to generate tiled thumbnails. Choose Thumbnail and full frame (THUMBNAIL_AND_FULLFRAME) to generate tiled thumbnails and full-resolution images of single frames. MediaConvert creates a child manifest for each set of images that you generate and adds corresponding entries to the parent manifest. A common application for these images is Roku trick mode. The thumbnails and full-frame images that MediaConvert creates with this feature are compatible with this Roku specification: https://developer.roku.com/docs/developer-program/media-playback/trick-mode/hls-and-dash.md

$sel:imageBasedTrickPlaySettings:HlsGroupSettings', hlsGroupSettings_imageBasedTrickPlaySettings - Tile and thumbnail settings applicable when imageBasedTrickPlay is ADVANCED

$sel:manifestCompression:HlsGroupSettings', hlsGroupSettings_manifestCompression - When set to GZIP, compresses HLS playlist.

$sel:manifestDurationFormat:HlsGroupSettings', hlsGroupSettings_manifestDurationFormat - Indicates whether the output manifest should use floating point values for segment duration.

$sel:minFinalSegmentLength:HlsGroupSettings', hlsGroupSettings_minFinalSegmentLength - Keep this setting at the default value of 0, unless you are troubleshooting a problem with how devices play back the end of your video asset. If you know that player devices are hanging on the final segment of your video because the length of your final segment is too short, use this setting to specify a minimum final segment length, in seconds. Choose a value that is greater than or equal to 1 and less than your segment length. When you specify a value for this setting, the encoder will combine any final segment that is shorter than the length that you specify with the previous segment. For example, your segment length is 3 seconds and your final segment is .5 seconds without a minimum final segment length; when you set the minimum final segment length to 1, your final segment is 3.5 seconds.

$sel:minSegmentLength:HlsGroupSettings', hlsGroupSettings_minSegmentLength - When set, Minimum Segment Size is enforced by looking ahead and back within the specified range for a nearby avail and extending the segment size if needed.

$sel:outputSelection:HlsGroupSettings', hlsGroupSettings_outputSelection - Indicates whether the .m3u8 manifest file should be generated for this HLS output group.

$sel:programDateTime:HlsGroupSettings', hlsGroupSettings_programDateTime - Includes or excludes EXT-X-PROGRAM-DATE-TIME tag in .m3u8 manifest files. The value is calculated as follows: either the program date and time are initialized using the input timecode source, or the time is initialized using the input timecode source and the date is initialized using the timestamp_offset.

$sel:programDateTimePeriod:HlsGroupSettings', hlsGroupSettings_programDateTimePeriod - Period of insertion of EXT-X-PROGRAM-DATE-TIME entry, in seconds.

$sel:segmentControl:HlsGroupSettings', hlsGroupSettings_segmentControl - When set to SINGLE_FILE, emits program as a single media resource (.ts) file, uses #EXT-X-BYTERANGE tags to index segment for playback.

$sel:segmentLength:HlsGroupSettings', hlsGroupSettings_segmentLength - Specify the length, in whole seconds, of each segment. When you don't specify a value, MediaConvert defaults to 10. Related settings: Use Segment length control (SegmentLengthControl) to specify whether the encoder enforces this value strictly. Use Segment control (HlsSegmentControl) to specify whether MediaConvert creates separate segment files or one content file that has metadata to mark the segment boundaries.

$sel:segmentLengthControl:HlsGroupSettings', hlsGroupSettings_segmentLengthControl - Specify how you want MediaConvert to determine the segment length. Choose Exact (EXACT) to have the encoder use the exact length that you specify with the setting Segment length (SegmentLength). This might result in extra I-frames. Choose Multiple of GOP (GOP_MULTIPLE) to have the encoder round up the segment lengths to match the next GOP boundary.

$sel:segmentsPerSubdirectory:HlsGroupSettings', hlsGroupSettings_segmentsPerSubdirectory - Number of segments to write to a subdirectory before starting a new one. directoryStructure must be SINGLE_DIRECTORY for this setting to have an effect.

$sel:streamInfResolution:HlsGroupSettings', hlsGroupSettings_streamInfResolution - Include or exclude RESOLUTION attribute for video in EXT-X-STREAM-INF tag of variant manifest.

$sel:targetDurationCompatibilityMode:HlsGroupSettings', hlsGroupSettings_targetDurationCompatibilityMode - When set to LEGACY, the segment target duration is always rounded up to the nearest integer value above its current value in seconds. When set to SPEC\\_COMPLIANT, the segment target duration is rounded up to the nearest integer value if fraction seconds are greater than or equal to 0.5 (>= 0.5) and rounded down if less than 0.5 (< 0.5). You may need to use LEGACY if your client needs to ensure that the target duration is always longer than the actual duration of the segment. Some older players may experience interrupted playback when the actual duration of a track in a segment is longer than the target duration.

$sel:timedMetadataId3Frame:HlsGroupSettings', hlsGroupSettings_timedMetadataId3Frame - Specify the type of the ID3 frame (timedMetadataId3Frame) to use for ID3 timestamps (timedMetadataId3Period) in your output. To include ID3 timestamps: Specify PRIV (PRIV) or TDRL (TDRL) and set ID3 metadata (timedMetadata) to Passthrough (PASSTHROUGH). To exclude ID3 timestamps: Set ID3 timestamp frame type to None (NONE).

$sel:timedMetadataId3Period:HlsGroupSettings', hlsGroupSettings_timedMetadataId3Period - Specify the interval in seconds to write ID3 timestamps in your output. The first timestamp starts at the output timecode and date, and increases incrementally with each ID3 timestamp. To use the default interval of 10 seconds: Leave blank. To include this metadata in your output: Set ID3 timestamp frame type (timedMetadataId3Frame) to PRIV (PRIV) or TDRL (TDRL), and set ID3 metadata (timedMetadata) to Passthrough (PASSTHROUGH).

$sel:timestampDeltaMilliseconds:HlsGroupSettings', hlsGroupSettings_timestampDeltaMilliseconds - Provides an extra millisecond delta offset to fine tune the timestamps.

hlsGroupSettings_adMarkers :: Lens' HlsGroupSettings (Maybe [HlsAdMarkers]) Source #

Choose one or more ad marker types to decorate your Apple HLS manifest. This setting does not determine whether SCTE-35 markers appear in the outputs themselves.

hlsGroupSettings_additionalManifests :: Lens' HlsGroupSettings (Maybe [HlsAdditionalManifest]) Source #

By default, the service creates one top-level .m3u8 HLS manifest for each HLS output group in your job. This default manifest references every output in the output group. To create additional top-level manifests that reference a subset of the outputs in the output group, specify a list of them here.

hlsGroupSettings_audioOnlyHeader :: Lens' HlsGroupSettings (Maybe HlsAudioOnlyHeader) Source #

Ignore this setting unless you are using FairPlay DRM with Verimatrix and you encounter playback issues. Keep the default value, Include (INCLUDE), to output audio-only headers. Choose Exclude (EXCLUDE) to remove the audio-only headers from your audio segments.

hlsGroupSettings_baseUrl :: Lens' HlsGroupSettings (Maybe Text) Source #

A partial URI prefix that will be prepended to each output in the media .m3u8 file. Can be used if base manifest is delivered from a different URL than the main .m3u8 file.

hlsGroupSettings_captionLanguageSetting :: Lens' HlsGroupSettings (Maybe HlsCaptionLanguageSetting) Source #

Applies only to 608 Embedded output captions. Insert: Include CLOSED-CAPTIONS lines in the manifest. Specify at least one language in the CC1 Language Code field. One CLOSED-CAPTION line is added for each Language Code you specify. Make sure to specify the languages in the order in which they appear in the original source (if the source is embedded format) or the order of the caption selectors (if the source is other than embedded). Otherwise, languages in the manifest will not match up properly with the output captions. None: Include CLOSED-CAPTIONS=NONE line in the manifest. Omit: Omit any CLOSED-CAPTIONS line from the manifest.

hlsGroupSettings_captionSegmentLengthControl :: Lens' HlsGroupSettings (Maybe HlsCaptionSegmentLengthControl) Source #

Set Caption segment length control (CaptionSegmentLengthControl) to Match video (MATCH_VIDEO) to create caption segments that align with the video segments from the first video output in this output group. For example, if the video segments are 2 seconds long, your WebVTT segments will also be 2 seconds long. Keep the default setting, Large segments (LARGE_SEGMENTS) to create caption segments that are 300 seconds long.

hlsGroupSettings_clientCache :: Lens' HlsGroupSettings (Maybe HlsClientCache) Source #

Disable this setting only when your workflow requires the #EXT-X-ALLOW-CACHE:no tag. Otherwise, keep the default value Enabled (ENABLED) and control caching in your video distribution set up. For example, use the Cache-Control http header.

hlsGroupSettings_codecSpecification :: Lens' HlsGroupSettings (Maybe HlsCodecSpecification) Source #

Specification to use (RFC-6381 or the default RFC-4281) during m3u8 playlist generation.

hlsGroupSettings_destination :: Lens' HlsGroupSettings (Maybe Text) Source #

Use Destination (Destination) to specify the S3 output location and the output filename base. Destination accepts format identifiers. If you do not specify the base filename in the URI, the service will use the filename of the input file. If your job has multiple inputs, the service uses the filename of the first input file.

hlsGroupSettings_destinationSettings :: Lens' HlsGroupSettings (Maybe DestinationSettings) Source #

Settings associated with the destination. Will vary based on the type of destination

hlsGroupSettings_directoryStructure :: Lens' HlsGroupSettings (Maybe HlsDirectoryStructure) Source #

Indicates whether segments should be placed in subdirectories.

hlsGroupSettings_imageBasedTrickPlay :: Lens' HlsGroupSettings (Maybe HlsImageBasedTrickPlay) Source #

Specify whether MediaConvert generates images for trick play. Keep the default value, None (NONE), to not generate any images. Choose Thumbnail (THUMBNAIL) to generate tiled thumbnails. Choose Thumbnail and full frame (THUMBNAIL_AND_FULLFRAME) to generate tiled thumbnails and full-resolution images of single frames. MediaConvert creates a child manifest for each set of images that you generate and adds corresponding entries to the parent manifest. A common application for these images is Roku trick mode. The thumbnails and full-frame images that MediaConvert creates with this feature are compatible with this Roku specification: https://developer.roku.com/docs/developer-program/media-playback/trick-mode/hls-and-dash.md

hlsGroupSettings_imageBasedTrickPlaySettings :: Lens' HlsGroupSettings (Maybe HlsImageBasedTrickPlaySettings) Source #

Tile and thumbnail settings applicable when imageBasedTrickPlay is ADVANCED

hlsGroupSettings_manifestDurationFormat :: Lens' HlsGroupSettings (Maybe HlsManifestDurationFormat) Source #

Indicates whether the output manifest should use floating point values for segment duration.

hlsGroupSettings_minFinalSegmentLength :: Lens' HlsGroupSettings (Maybe Double) Source #

Keep this setting at the default value of 0, unless you are troubleshooting a problem with how devices play back the end of your video asset. If you know that player devices are hanging on the final segment of your video because the length of your final segment is too short, use this setting to specify a minimum final segment length, in seconds. Choose a value that is greater than or equal to 1 and less than your segment length. When you specify a value for this setting, the encoder will combine any final segment that is shorter than the length that you specify with the previous segment. For example, your segment length is 3 seconds and your final segment is .5 seconds without a minimum final segment length; when you set the minimum final segment length to 1, your final segment is 3.5 seconds.

hlsGroupSettings_minSegmentLength :: Lens' HlsGroupSettings (Maybe Natural) Source #

When set, Minimum Segment Size is enforced by looking ahead and back within the specified range for a nearby avail and extending the segment size if needed.

hlsGroupSettings_outputSelection :: Lens' HlsGroupSettings (Maybe HlsOutputSelection) Source #

Indicates whether the .m3u8 manifest file should be generated for this HLS output group.

hlsGroupSettings_programDateTime :: Lens' HlsGroupSettings (Maybe HlsProgramDateTime) Source #

Includes or excludes EXT-X-PROGRAM-DATE-TIME tag in .m3u8 manifest files. The value is calculated as follows: either the program date and time are initialized using the input timecode source, or the time is initialized using the input timecode source and the date is initialized using the timestamp_offset.

hlsGroupSettings_programDateTimePeriod :: Lens' HlsGroupSettings (Maybe Natural) Source #

Period of insertion of EXT-X-PROGRAM-DATE-TIME entry, in seconds.

hlsGroupSettings_segmentControl :: Lens' HlsGroupSettings (Maybe HlsSegmentControl) Source #

When set to SINGLE_FILE, emits program as a single media resource (.ts) file, uses #EXT-X-BYTERANGE tags to index segment for playback.

hlsGroupSettings_segmentLength :: Lens' HlsGroupSettings (Maybe Natural) Source #

Specify the length, in whole seconds, of each segment. When you don't specify a value, MediaConvert defaults to 10. Related settings: Use Segment length control (SegmentLengthControl) to specify whether the encoder enforces this value strictly. Use Segment control (HlsSegmentControl) to specify whether MediaConvert creates separate segment files or one content file that has metadata to mark the segment boundaries.

hlsGroupSettings_segmentLengthControl :: Lens' HlsGroupSettings (Maybe HlsSegmentLengthControl) Source #

Specify how you want MediaConvert to determine the segment length. Choose Exact (EXACT) to have the encoder use the exact length that you specify with the setting Segment length (SegmentLength). This might result in extra I-frames. Choose Multiple of GOP (GOP_MULTIPLE) to have the encoder round up the segment lengths to match the next GOP boundary.

hlsGroupSettings_segmentsPerSubdirectory :: Lens' HlsGroupSettings (Maybe Natural) Source #

Number of segments to write to a subdirectory before starting a new one. directoryStructure must be SINGLE_DIRECTORY for this setting to have an effect.

hlsGroupSettings_streamInfResolution :: Lens' HlsGroupSettings (Maybe HlsStreamInfResolution) Source #

Include or exclude RESOLUTION attribute for video in EXT-X-STREAM-INF tag of variant manifest.

hlsGroupSettings_targetDurationCompatibilityMode :: Lens' HlsGroupSettings (Maybe HlsTargetDurationCompatibilityMode) Source #

When set to LEGACY, the segment target duration is always rounded up to the nearest integer value above its current value in seconds. When set to SPEC\\_COMPLIANT, the segment target duration is rounded up to the nearest integer value if fraction seconds are greater than or equal to 0.5 (>= 0.5) and rounded down if less than 0.5 (< 0.5). You may need to use LEGACY if your client needs to ensure that the target duration is always longer than the actual duration of the segment. Some older players may experience interrupted playback when the actual duration of a track in a segment is longer than the target duration.

hlsGroupSettings_timedMetadataId3Frame :: Lens' HlsGroupSettings (Maybe HlsTimedMetadataId3Frame) Source #

Specify the type of the ID3 frame (timedMetadataId3Frame) to use for ID3 timestamps (timedMetadataId3Period) in your output. To include ID3 timestamps: Specify PRIV (PRIV) or TDRL (TDRL) and set ID3 metadata (timedMetadata) to Passthrough (PASSTHROUGH). To exclude ID3 timestamps: Set ID3 timestamp frame type to None (NONE).

hlsGroupSettings_timedMetadataId3Period :: Lens' HlsGroupSettings (Maybe Int) Source #

Specify the interval in seconds to write ID3 timestamps in your output. The first timestamp starts at the output timecode and date, and increases incrementally with each ID3 timestamp. To use the default interval of 10 seconds: Leave blank. To include this metadata in your output: Set ID3 timestamp frame type (timedMetadataId3Frame) to PRIV (PRIV) or TDRL (TDRL), and set ID3 metadata (timedMetadata) to Passthrough (PASSTHROUGH).

hlsGroupSettings_timestampDeltaMilliseconds :: Lens' HlsGroupSettings (Maybe Int) Source #

Provides an extra millisecond delta offset to fine tune the timestamps.