class Aws::MediaConvert::Types::DashIsoGroupSettings

Settings related to your DASH output package. For more information, see 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 DASH_ISO_GROUP_SETTINGS.

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

data as a hash:

    {
      additional_manifests: [
        {
          manifest_name_modifier: "__stringMin1",
          selected_outputs: ["__stringMin1"],
        },
      ],
      audio_channel_config_scheme_id_uri: "MPEG_CHANNEL_CONFIGURATION", # accepts MPEG_CHANNEL_CONFIGURATION, DOLBY_CHANNEL_CONFIGURATION
      base_url: "__string",
      destination: "__stringPatternS3",
      destination_settings: {
        s3_settings: {
          access_control: {
            canned_acl: "PUBLIC_READ", # accepts PUBLIC_READ, AUTHENTICATED_READ, BUCKET_OWNER_READ, BUCKET_OWNER_FULL_CONTROL
          },
          encryption: {
            encryption_type: "SERVER_SIDE_ENCRYPTION_S3", # accepts SERVER_SIDE_ENCRYPTION_S3, SERVER_SIDE_ENCRYPTION_KMS
            kms_encryption_context: "__stringPatternAZaZ0902",
            kms_key_arn: "__stringPatternArnAwsUsGovCnKmsAZ26EastWestCentralNorthSouthEastWest1912D12KeyAFAF098AFAF094AFAF094AFAF094AFAF0912",
          },
        },
      },
      encryption: {
        playback_device_compatibility: "CENC_V1", # accepts CENC_V1, UNENCRYPTED_SEI
        speke_key_provider: {
          certificate_arn: "__stringPatternArnAwsUsGovAcm",
          resource_id: "__string",
          system_ids: ["__stringPattern09aFAF809aFAF409aFAF409aFAF409aFAF12"],
          url: "__stringPatternHttps",
        },
      },
      fragment_length: 1,
      hbbtv_compliance: "HBBTV_1_5", # accepts HBBTV_1_5, NONE
      image_based_trick_play: "NONE", # accepts NONE, THUMBNAIL, THUMBNAIL_AND_FULLFRAME
      min_buffer_time: 1,
      min_final_segment_length: 1.0,
      mpd_profile: "MAIN_PROFILE", # accepts MAIN_PROFILE, ON_DEMAND_PROFILE
      pts_offset_handling_for_b_frames: "ZERO_BASED", # accepts ZERO_BASED, MATCH_INITIAL_PTS
      segment_control: "SINGLE_FILE", # accepts SINGLE_FILE, SEGMENTED_FILES
      segment_length: 1,
      segment_length_control: "EXACT", # accepts EXACT, GOP_MULTIPLE
      write_segment_timeline_in_representation: "ENABLED", # accepts ENABLED, DISABLED
    }

@!attribute [rw] additional_manifests

By default, the service creates one .mpd DASH manifest for each DASH
ISO output group in your job. This default manifest references every
output in the output group. To create additional DASH manifests that
reference a subset of the outputs in the output group, specify a
list of them here.
@return [Array<Types::DashAdditionalManifest>]

@!attribute [rw] audio_channel_config_scheme_id_uri

Use this setting only when your audio codec is a Dolby one (AC3,
EAC3, or Atmos) and your downstream workflow requires that your DASH
manifest use the Dolby channel configuration tag, rather than the
MPEG one. For example, you might need to use this to make dynamic ad
insertion work. Specify which audio channel configuration scheme ID
URI MediaConvert writes in your DASH manifest. Keep the default
value, MPEG channel configuration (MPEG\_CHANNEL\_CONFIGURATION), to
have MediaConvert write this:
urn:mpeg:mpegB:cicp:ChannelConfiguration. Choose Dolby channel
configuration (DOLBY\_CHANNEL\_CONFIGURATION) to have MediaConvert
write this instead:
tag:dolby.com,2014:dash:audio\_channel\_configuration:2011.
@return [String]

@!attribute [rw] base_url

A partial URI prefix that will be put in the manifest (.mpd) file at
the top level BaseURL element. Can be used if streams are delivered
from a different URL than the manifest file.
@return [String]

@!attribute [rw] 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.
@return [String]

@!attribute [rw] destination_settings

Settings associated with the destination. Will vary based on the
type of destination
@return [Types::DestinationSettings]

@!attribute [rw] encryption

DRM settings.
@return [Types::DashIsoEncryptionSettings]

@!attribute [rw] fragment_length

Length of fragments to generate (in seconds). Fragment length must
be compatible with GOP size and Framerate. Note that fragments will
end on the next keyframe after this number of seconds, so actual
fragment length may be longer. When Emit Single File is checked, the
fragmentation is internal to a single output file and it does not
cause the creation of many output files as in other output types.
@return [Integer]

@!attribute [rw] hbbtv_compliance

Supports HbbTV specification as indicated
@return [String]

@!attribute [rw] image_based_trick_play

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
adds an entry in the .mpd manifest for each set of images that you
generate. 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
@return [String]

@!attribute [rw] min_buffer_time

Minimum time of initially buffered media that is needed to ensure
smooth playout.
@return [Integer]

@!attribute [rw] min_final_segment_length

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.
@return [Float]

@!attribute [rw] mpd_profile

Specify whether your DASH profile is on-demand or main. When you
choose Main profile (MAIN\_PROFILE), the service signals
urn:mpeg:dash:profile:isoff-main:2011 in your .mpd DASH manifest.
When you choose On-demand (ON\_DEMAND\_PROFILE), the service signals
urn:mpeg:dash:profile:isoff-on-demand:2011 in your .mpd. When you
choose On-demand, you must also set the output group setting Segment
control (SegmentControl) to Single file (SINGLE\_FILE).
@return [String]

@!attribute [rw] pts_offset_handling_for_b_frames

Use this setting only when your output video stream has B-frames,
which causes the initial presentation time stamp (PTS) to be offset
from the initial decode time stamp (DTS). Specify how MediaConvert
handles PTS when writing time stamps in output DASH manifests.
Choose Match initial PTS (MATCH\_INITIAL\_PTS) when you want
MediaConvert to use the initial PTS as the first time stamp in the
manifest. Choose Zero-based (ZERO\_BASED) to have MediaConvert
ignore the initial PTS in the video stream and instead write the
initial time stamp as zero in the manifest. For outputs that don't
have B-frames, the time stamps in your DASH manifests start at zero
regardless of your choice here.
@return [String]

@!attribute [rw] segment_control

When set to SINGLE\_FILE, a single output file is generated, which
is internally segmented using the Fragment Length and Segment
Length. When set to SEGMENTED\_FILES, separate segment files will be
created.
@return [String]

@!attribute [rw] segment_length

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

@!attribute [rw] segment_length_control

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.
@return [String]

@!attribute [rw] write_segment_timeline_in_representation

If you get an HTTP error in the 400 range when you play back your
DASH output, enable this setting and run your transcoding job again.
When you enable this setting, the service writes precise segment
durations in the DASH manifest. The segment duration information
appears inside the SegmentTimeline element, inside SegmentTemplate
at the Representation level. When you don't enable this setting,
the service writes approximate segment durations in your DASH
manifest.
@return [String]

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

Constants

SENSITIVE