class Aws::MediaConvert::Types::CmfcSettings

These settings relate to the fragmented MP4 container for the segments in your CMAF outputs.

@note When making an API call, you may pass CmfcSettings

data as a hash:

    {
      audio_duration: "DEFAULT_CODEC_DURATION", # accepts DEFAULT_CODEC_DURATION, MATCH_VIDEO_DURATION
      audio_group_id: "__string",
      audio_rendition_sets: "__string",
      audio_track_type: "ALTERNATE_AUDIO_AUTO_SELECT_DEFAULT", # accepts ALTERNATE_AUDIO_AUTO_SELECT_DEFAULT, ALTERNATE_AUDIO_AUTO_SELECT, ALTERNATE_AUDIO_NOT_AUTO_SELECT
      descriptive_video_service_flag: "DONT_FLAG", # accepts DONT_FLAG, FLAG
      i_frame_only_manifest: "INCLUDE", # accepts INCLUDE, EXCLUDE
      scte_35_esam: "INSERT", # accepts INSERT, NONE
      scte_35_source: "PASSTHROUGH", # accepts PASSTHROUGH, NONE
    }

@!attribute [rw] audio_duration

Specify this setting only when your output will be consumed by a
downstream repackaging workflow that is sensitive to very small
duration differences between video and audio. For this situation,
choose Match video duration (MATCH\_VIDEO\_DURATION). In all other
cases, keep the default value, Default codec duration
(DEFAULT\_CODEC\_DURATION). When you choose Match video duration,
MediaConvert pads the output audio streams with silence or trims
them to ensure that the total duration of each audio stream is at
least as long as the total duration of the video stream. After
padding or trimming, the audio stream duration is no more than one
frame longer than the video stream. MediaConvert applies audio
padding or trimming only to the end of the last segment of the
output. For unsegmented outputs, MediaConvert adds padding only to
the end of the file. When you keep the default value, any minor
discrepancies between audio and video duration will depend on your
output audio codec.
@return [String]

@!attribute [rw] audio_group_id

Specify the audio rendition group for this audio rendition. Specify
up to one value for each audio output in your output group. This
value appears in your HLS parent manifest in the EXT-X-MEDIA tag of
TYPE=AUDIO, as the value for the GROUP-ID attribute. For example, if
you specify "audio\_aac\_1" for Audio group ID, it appears in your
manifest like this:
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="audio\_aac\_1". Related setting:
To associate the rendition group that this audio track belongs to
with a video rendition, include the same value that you provide here
for that video output's setting Audio rendition sets
(audioRenditionSets).
@return [String]

@!attribute [rw] audio_rendition_sets

List the audio rendition groups that you want included with this
video rendition. Use a comma-separated list. For example, say you
want to include the audio rendition groups that have the audio group
IDs "audio\_aac\_1" and "audio\_dolby". Then you would specify
this value: "audio\_aac\_1, audio\_dolby". Related setting: The
rendition groups that you include in your comma-separated list
should all match values that you specify in the setting Audio group
ID (AudioGroupId) for audio renditions in the same output group as
this video rendition. Default behavior: If you don't specify
anything here and for Audio group ID, MediaConvert puts each audio
variant in its own audio rendition group and associates it with
every video variant. Each value in your list appears in your HLS
parent manifest in the EXT-X-STREAM-INF tag as the value for the
AUDIO attribute. To continue the previous example, say that the file
name for the child manifest for your video rendition is
"amazing\_video\_1.m3u8". Then, in your parent manifest, each
value will appear on separate lines, like this:
#EXT-X-STREAM-INF:AUDIO="audio\_aac\_1"... amazing\_video\_1.m3u8
#EXT-X-STREAM-INF:AUDIO="audio\_dolby"... amazing\_video\_1.m3u8
@return [String]

@!attribute [rw] audio_track_type

Use this setting to control the values that MediaConvert puts in
your HLS parent playlist to control how the client player selects
which audio track to play. The other options for this setting
determine the values that MediaConvert writes for the DEFAULT and
AUTOSELECT attributes of the EXT-X-MEDIA entry for the audio
variant. For more information about these attributes, see the Apple
documentation article
https://developer.apple.com/documentation/http\_live\_streaming/example\_playlists\_for\_http\_live\_streaming/adding\_alternate\_media\_to\_a\_playlist.
Choose Alternate audio, auto select, default
(ALTERNATE\_AUDIO\_AUTO\_SELECT\_DEFAULT) to set DEFAULT=YES and
AUTOSELECT=YES. Choose this value for only one variant in your
output group. Choose Alternate audio, auto select, not default
(ALTERNATE\_AUDIO\_AUTO\_SELECT) to set DEFAULT=NO and
AUTOSELECT=YES. Choose Alternate Audio, Not Auto Select to set
DEFAULT=NO and AUTOSELECT=NO. When you don't specify a value for
this setting, MediaConvert defaults to Alternate audio, auto select,
default. When there is more than one variant in your output group,
you must explicitly choose a value for this setting.
@return [String]

@!attribute [rw] descriptive_video_service_flag

Specify whether to flag this audio track as descriptive video
service (DVS) in your HLS parent manifest. When you choose Flag
(FLAG), MediaConvert includes the parameter
CHARACTERISTICS="public.accessibility.describes-video" in the
EXT-X-MEDIA entry for this track. When you keep the default choice,
Don't flag (DONT\_FLAG), MediaConvert leaves this parameter out.
The DVS flag can help with accessibility on Apple devices. For more
information, see the Apple documentation.
@return [String]

@!attribute [rw] i_frame_only_manifest

Choose Include (INCLUDE) to have MediaConvert generate an HLS child
manifest that lists only the I-frames for this rendition, in
addition to your regular manifest for this rendition. You might use
this manifest as part of a workflow that creates preview functions
for your video. MediaConvert adds both the I-frame only child
manifest and the regular child manifest to the parent manifest. When
you don't need the I-frame only child manifest, keep the default
value Exclude (EXCLUDE).
@return [String]

@!attribute [rw] scte_35_esam

Use this setting only when you specify SCTE-35 markers from ESAM.
Choose INSERT to put SCTE-35 markers in this output at the insertion
points that you specify in an ESAM XML document. Provide the
document in the setting SCC XML (sccXml).
@return [String]

@!attribute [rw] scte_35_source

Ignore this setting unless you have SCTE-35 markers in your input
video file. Choose Passthrough (PASSTHROUGH) if you want SCTE-35
markers that appear in your input to also appear in this output.
Choose None (NONE) if you don't want those SCTE-35 markers in this
output.
@return [String]

@see docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/CmfcSettings AWS API Documentation

Constants

SENSITIVE