com.amazonaws.services.mediaconvert.model.CmfcSettings Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of aws-java-sdk-mediaconvert Show documentation
Show all versions of aws-java-sdk-mediaconvert Show documentation
The AWS Java SDK for AWS Elemental MediaConvert module holds the client classes that are used for communicating with AWS Elemental MediaConvert Service
/*
* Copyright 2019-2024 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
* the License. A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
* and limitations under the License.
*/
package com.amazonaws.services.mediaconvert.model;
import java.io.Serializable;
import javax.annotation.Generated;
import com.amazonaws.protocol.StructuredPojo;
import com.amazonaws.protocol.ProtocolMarshaller;
/**
* These settings relate to the fragmented MP4 container for the segments in your CMAF outputs.
*
* @see AWS API
* Documentation
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class CmfcSettings implements Serializable, Cloneable, StructuredPojo {
/**
* 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. In all other cases, keep the default value, 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.
*/
private String audioDuration;
/**
* 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.
*/
private String audioGroupId;
/**
* 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 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
*/
private String audioRenditionSets;
/**
* 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. Choose Audio-only variant stream (AUDIO_ONLY_VARIANT_STREAM) for
* any variant that you want to prohibit the client from playing with video. This causes MediaConvert to represent
* the variant as an EXT-X-STREAM-INF in the HLS manifest. 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 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 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.
*/
private String audioTrackType;
/**
* Specify whether to flag this audio track as descriptive video service (DVS) in your HLS parent manifest. When you
* choose 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, MediaConvert leaves this parameter
* out. The DVS flag can help with accessibility on Apple devices. For more information, see the Apple documentation.
*/
private String descriptiveVideoServiceFlag;
/**
* Choose 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.
*/
private String iFrameOnlyManifest;
/**
* To include key-length-value metadata in this output: Set KLV metadata insertion to Passthrough. MediaConvert
* reads KLV metadata present in your input and writes each instance to a separate event message box in the output,
* according to MISB ST1910.1. To exclude this KLV metadata: Set KLV metadata insertion to None or leave blank.
*/
private String klvMetadata;
/**
* To add an InbandEventStream element in your output MPD manifest for each type of event message, set Manifest
* metadata signaling to Enabled. For ID3 event messages, the InbandEventStream element schemeIdUri will be same
* value that you specify for ID3 metadata scheme ID URI. For SCTE35 event messages, the InbandEventStream element
* schemeIdUri will be "urn:scte:scte35:2013:bin". To leave these elements out of your output MPD manifest, set
* Manifest metadata signaling to Disabled. To enable Manifest metadata signaling, you must also set SCTE-35 source
* to Passthrough, ESAM SCTE-35 to insert, or ID3 metadata to Passthrough.
*/
private String manifestMetadataSignaling;
/**
* 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.
*/
private String scte35Esam;
/**
* Ignore this setting unless you have SCTE-35 markers in your input video file. Choose Passthrough if you want
* SCTE-35 markers that appear in your input to also appear in this output. Choose None if you don't want those
* SCTE-35 markers in this output.
*/
private String scte35Source;
/**
* To include ID3 metadata in this output: Set ID3 metadata to Passthrough. Specify this ID3 metadata in Custom ID3
* metadata inserter. MediaConvert writes each instance of ID3 metadata in a separate Event Message (eMSG) box. To
* exclude this ID3 metadata: Set ID3 metadata to None or leave blank.
*/
private String timedMetadata;
/**
* Specify the event message box (eMSG) version for ID3 timed metadata in your output. For more information, see
* ISO/IEC 23009-1:2022 section 5.10.3.3.3 Syntax. Leave blank to use the default value Version 0. When you specify
* Version 1, you must also set ID3 metadata to Passthrough.
*/
private String timedMetadataBoxVersion;
/**
* Specify the event message box (eMSG) scheme ID URI for ID3 timed metadata in your output. For more information,
* see ISO/IEC 23009-1:2022 section 5.10.3.3.4 Semantics. Leave blank to use the default value:
* https://aomedia.org/emsg/ID3 When you specify a value for ID3 metadata scheme ID URI, you must also set ID3
* metadata to Passthrough.
*/
private String timedMetadataSchemeIdUri;
/**
* Specify the event message box (eMSG) value for ID3 timed metadata in your output. For more information, see
* ISO/IEC 23009-1:2022 section 5.10.3.3.4 Semantics. When you specify a value for ID3 Metadata Value, you must also
* set ID3 metadata to Passthrough.
*/
private String timedMetadataValue;
/**
* 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. In all other cases, keep the default value, 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.
*
* @param audioDuration
* 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. In all other cases, keep the default value, 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.
* @see CmfcAudioDuration
*/
public void setAudioDuration(String audioDuration) {
this.audioDuration = audioDuration;
}
/**
* 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. In all other cases, keep the default value, 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 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. In all other cases, keep the default value, 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.
* @see CmfcAudioDuration
*/
public String getAudioDuration() {
return this.audioDuration;
}
/**
* 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. In all other cases, keep the default value, 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.
*
* @param audioDuration
* 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. In all other cases, keep the default value, 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 Returns a reference to this object so that method calls can be chained together.
* @see CmfcAudioDuration
*/
public CmfcSettings withAudioDuration(String audioDuration) {
setAudioDuration(audioDuration);
return this;
}
/**
* 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. In all other cases, keep the default value, 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.
*
* @param audioDuration
* 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. In all other cases, keep the default value, 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 Returns a reference to this object so that method calls can be chained together.
* @see CmfcAudioDuration
*/
public CmfcSettings withAudioDuration(CmfcAudioDuration audioDuration) {
this.audioDuration = audioDuration.toString();
return this;
}
/**
* 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.
*
* @param audioGroupId
* 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.
*/
public void setAudioGroupId(String audioGroupId) {
this.audioGroupId = audioGroupId;
}
/**
* 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.
*
* @return 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.
*/
public String getAudioGroupId() {
return this.audioGroupId;
}
/**
* 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.
*
* @param audioGroupId
* 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.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CmfcSettings withAudioGroupId(String audioGroupId) {
setAudioGroupId(audioGroupId);
return this;
}
/**
* 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 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
*
* @param audioRenditionSets
* 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 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
*/
public void setAudioRenditionSets(String audioRenditionSets) {
this.audioRenditionSets = audioRenditionSets;
}
/**
* 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 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 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 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
*/
public String getAudioRenditionSets() {
return this.audioRenditionSets;
}
/**
* 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 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
*
* @param audioRenditionSets
* 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 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 Returns a reference to this object so that method calls can be chained together.
*/
public CmfcSettings withAudioRenditionSets(String audioRenditionSets) {
setAudioRenditionSets(audioRenditionSets);
return this;
}
/**
* 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. Choose Audio-only variant stream (AUDIO_ONLY_VARIANT_STREAM) for
* any variant that you want to prohibit the client from playing with video. This causes MediaConvert to represent
* the variant as an EXT-X-STREAM-INF in the HLS manifest. 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 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 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.
*
* @param audioTrackType
* 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. Choose Audio-only variant stream
* (AUDIO_ONLY_VARIANT_STREAM) for any variant that you want to prohibit the client from playing with video.
* This causes MediaConvert to represent the variant as an EXT-X-STREAM-INF in the HLS manifest. 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 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 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.
* @see CmfcAudioTrackType
*/
public void setAudioTrackType(String audioTrackType) {
this.audioTrackType = audioTrackType;
}
/**
* 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. Choose Audio-only variant stream (AUDIO_ONLY_VARIANT_STREAM) for
* any variant that you want to prohibit the client from playing with video. This causes MediaConvert to represent
* the variant as an EXT-X-STREAM-INF in the HLS manifest. 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 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 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 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. Choose Audio-only variant stream
* (AUDIO_ONLY_VARIANT_STREAM) for any variant that you want to prohibit the client from playing with video.
* This causes MediaConvert to represent the variant as an EXT-X-STREAM-INF in the HLS manifest. 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 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 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.
* @see CmfcAudioTrackType
*/
public String getAudioTrackType() {
return this.audioTrackType;
}
/**
* 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. Choose Audio-only variant stream (AUDIO_ONLY_VARIANT_STREAM) for
* any variant that you want to prohibit the client from playing with video. This causes MediaConvert to represent
* the variant as an EXT-X-STREAM-INF in the HLS manifest. 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 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 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.
*
* @param audioTrackType
* 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. Choose Audio-only variant stream
* (AUDIO_ONLY_VARIANT_STREAM) for any variant that you want to prohibit the client from playing with video.
* This causes MediaConvert to represent the variant as an EXT-X-STREAM-INF in the HLS manifest. 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 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 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 Returns a reference to this object so that method calls can be chained together.
* @see CmfcAudioTrackType
*/
public CmfcSettings withAudioTrackType(String audioTrackType) {
setAudioTrackType(audioTrackType);
return this;
}
/**
* 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. Choose Audio-only variant stream (AUDIO_ONLY_VARIANT_STREAM) for
* any variant that you want to prohibit the client from playing with video. This causes MediaConvert to represent
* the variant as an EXT-X-STREAM-INF in the HLS manifest. 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 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 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.
*
* @param audioTrackType
* 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. Choose Audio-only variant stream
* (AUDIO_ONLY_VARIANT_STREAM) for any variant that you want to prohibit the client from playing with video.
* This causes MediaConvert to represent the variant as an EXT-X-STREAM-INF in the HLS manifest. 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 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 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 Returns a reference to this object so that method calls can be chained together.
* @see CmfcAudioTrackType
*/
public CmfcSettings withAudioTrackType(CmfcAudioTrackType audioTrackType) {
this.audioTrackType = audioTrackType.toString();
return this;
}
/**
* Specify whether to flag this audio track as descriptive video service (DVS) in your HLS parent manifest. When you
* choose 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, MediaConvert leaves this parameter
* out. The DVS flag can help with accessibility on Apple devices. For more information, see the Apple documentation.
*
* @param descriptiveVideoServiceFlag
* Specify whether to flag this audio track as descriptive video service (DVS) in your HLS parent manifest.
* When you choose 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, MediaConvert leaves this parameter out. The DVS flag can help with
* accessibility on Apple devices. For more information, see the Apple documentation.
* @see CmfcDescriptiveVideoServiceFlag
*/
public void setDescriptiveVideoServiceFlag(String descriptiveVideoServiceFlag) {
this.descriptiveVideoServiceFlag = descriptiveVideoServiceFlag;
}
/**
* Specify whether to flag this audio track as descriptive video service (DVS) in your HLS parent manifest. When you
* choose 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, MediaConvert leaves this parameter
* out. The DVS flag can help with accessibility on Apple devices. For more information, see the Apple documentation.
*
* @return Specify whether to flag this audio track as descriptive video service (DVS) in your HLS parent manifest.
* When you choose 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, MediaConvert leaves this parameter out. The DVS flag can help with
* accessibility on Apple devices. For more information, see the Apple documentation.
* @see CmfcDescriptiveVideoServiceFlag
*/
public String getDescriptiveVideoServiceFlag() {
return this.descriptiveVideoServiceFlag;
}
/**
* Specify whether to flag this audio track as descriptive video service (DVS) in your HLS parent manifest. When you
* choose 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, MediaConvert leaves this parameter
* out. The DVS flag can help with accessibility on Apple devices. For more information, see the Apple documentation.
*
* @param descriptiveVideoServiceFlag
* Specify whether to flag this audio track as descriptive video service (DVS) in your HLS parent manifest.
* When you choose 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, MediaConvert leaves this parameter out. The DVS flag can help with
* accessibility on Apple devices. For more information, see the Apple documentation.
* @return Returns a reference to this object so that method calls can be chained together.
* @see CmfcDescriptiveVideoServiceFlag
*/
public CmfcSettings withDescriptiveVideoServiceFlag(String descriptiveVideoServiceFlag) {
setDescriptiveVideoServiceFlag(descriptiveVideoServiceFlag);
return this;
}
/**
* Specify whether to flag this audio track as descriptive video service (DVS) in your HLS parent manifest. When you
* choose 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, MediaConvert leaves this parameter
* out. The DVS flag can help with accessibility on Apple devices. For more information, see the Apple documentation.
*
* @param descriptiveVideoServiceFlag
* Specify whether to flag this audio track as descriptive video service (DVS) in your HLS parent manifest.
* When you choose 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, MediaConvert leaves this parameter out. The DVS flag can help with
* accessibility on Apple devices. For more information, see the Apple documentation.
* @return Returns a reference to this object so that method calls can be chained together.
* @see CmfcDescriptiveVideoServiceFlag
*/
public CmfcSettings withDescriptiveVideoServiceFlag(CmfcDescriptiveVideoServiceFlag descriptiveVideoServiceFlag) {
this.descriptiveVideoServiceFlag = descriptiveVideoServiceFlag.toString();
return this;
}
/**
* Choose 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.
*
* @param iFrameOnlyManifest
* Choose 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.
* @see CmfcIFrameOnlyManifest
*/
public void setIFrameOnlyManifest(String iFrameOnlyManifest) {
this.iFrameOnlyManifest = iFrameOnlyManifest;
}
/**
* Choose 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.
*
* @return Choose 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.
* @see CmfcIFrameOnlyManifest
*/
public String getIFrameOnlyManifest() {
return this.iFrameOnlyManifest;
}
/**
* Choose 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.
*
* @param iFrameOnlyManifest
* Choose 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.
* @return Returns a reference to this object so that method calls can be chained together.
* @see CmfcIFrameOnlyManifest
*/
public CmfcSettings withIFrameOnlyManifest(String iFrameOnlyManifest) {
setIFrameOnlyManifest(iFrameOnlyManifest);
return this;
}
/**
* Choose 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.
*
* @param iFrameOnlyManifest
* Choose 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.
* @return Returns a reference to this object so that method calls can be chained together.
* @see CmfcIFrameOnlyManifest
*/
public CmfcSettings withIFrameOnlyManifest(CmfcIFrameOnlyManifest iFrameOnlyManifest) {
this.iFrameOnlyManifest = iFrameOnlyManifest.toString();
return this;
}
/**
* To include key-length-value metadata in this output: Set KLV metadata insertion to Passthrough. MediaConvert
* reads KLV metadata present in your input and writes each instance to a separate event message box in the output,
* according to MISB ST1910.1. To exclude this KLV metadata: Set KLV metadata insertion to None or leave blank.
*
* @param klvMetadata
* To include key-length-value metadata in this output: Set KLV metadata insertion to Passthrough.
* MediaConvert reads KLV metadata present in your input and writes each instance to a separate event message
* box in the output, according to MISB ST1910.1. To exclude this KLV metadata: Set KLV metadata insertion to
* None or leave blank.
* @see CmfcKlvMetadata
*/
public void setKlvMetadata(String klvMetadata) {
this.klvMetadata = klvMetadata;
}
/**
* To include key-length-value metadata in this output: Set KLV metadata insertion to Passthrough. MediaConvert
* reads KLV metadata present in your input and writes each instance to a separate event message box in the output,
* according to MISB ST1910.1. To exclude this KLV metadata: Set KLV metadata insertion to None or leave blank.
*
* @return To include key-length-value metadata in this output: Set KLV metadata insertion to Passthrough.
* MediaConvert reads KLV metadata present in your input and writes each instance to a separate event
* message box in the output, according to MISB ST1910.1. To exclude this KLV metadata: Set KLV metadata
* insertion to None or leave blank.
* @see CmfcKlvMetadata
*/
public String getKlvMetadata() {
return this.klvMetadata;
}
/**
* To include key-length-value metadata in this output: Set KLV metadata insertion to Passthrough. MediaConvert
* reads KLV metadata present in your input and writes each instance to a separate event message box in the output,
* according to MISB ST1910.1. To exclude this KLV metadata: Set KLV metadata insertion to None or leave blank.
*
* @param klvMetadata
* To include key-length-value metadata in this output: Set KLV metadata insertion to Passthrough.
* MediaConvert reads KLV metadata present in your input and writes each instance to a separate event message
* box in the output, according to MISB ST1910.1. To exclude this KLV metadata: Set KLV metadata insertion to
* None or leave blank.
* @return Returns a reference to this object so that method calls can be chained together.
* @see CmfcKlvMetadata
*/
public CmfcSettings withKlvMetadata(String klvMetadata) {
setKlvMetadata(klvMetadata);
return this;
}
/**
* To include key-length-value metadata in this output: Set KLV metadata insertion to Passthrough. MediaConvert
* reads KLV metadata present in your input and writes each instance to a separate event message box in the output,
* according to MISB ST1910.1. To exclude this KLV metadata: Set KLV metadata insertion to None or leave blank.
*
* @param klvMetadata
* To include key-length-value metadata in this output: Set KLV metadata insertion to Passthrough.
* MediaConvert reads KLV metadata present in your input and writes each instance to a separate event message
* box in the output, according to MISB ST1910.1. To exclude this KLV metadata: Set KLV metadata insertion to
* None or leave blank.
* @return Returns a reference to this object so that method calls can be chained together.
* @see CmfcKlvMetadata
*/
public CmfcSettings withKlvMetadata(CmfcKlvMetadata klvMetadata) {
this.klvMetadata = klvMetadata.toString();
return this;
}
/**
* To add an InbandEventStream element in your output MPD manifest for each type of event message, set Manifest
* metadata signaling to Enabled. For ID3 event messages, the InbandEventStream element schemeIdUri will be same
* value that you specify for ID3 metadata scheme ID URI. For SCTE35 event messages, the InbandEventStream element
* schemeIdUri will be "urn:scte:scte35:2013:bin". To leave these elements out of your output MPD manifest, set
* Manifest metadata signaling to Disabled. To enable Manifest metadata signaling, you must also set SCTE-35 source
* to Passthrough, ESAM SCTE-35 to insert, or ID3 metadata to Passthrough.
*
* @param manifestMetadataSignaling
* To add an InbandEventStream element in your output MPD manifest for each type of event message, set
* Manifest metadata signaling to Enabled. For ID3 event messages, the InbandEventStream element schemeIdUri
* will be same value that you specify for ID3 metadata scheme ID URI. For SCTE35 event messages, the
* InbandEventStream element schemeIdUri will be "urn:scte:scte35:2013:bin". To leave these elements out of
* your output MPD manifest, set Manifest metadata signaling to Disabled. To enable Manifest metadata
* signaling, you must also set SCTE-35 source to Passthrough, ESAM SCTE-35 to insert, or ID3 metadata to
* Passthrough.
* @see CmfcManifestMetadataSignaling
*/
public void setManifestMetadataSignaling(String manifestMetadataSignaling) {
this.manifestMetadataSignaling = manifestMetadataSignaling;
}
/**
* To add an InbandEventStream element in your output MPD manifest for each type of event message, set Manifest
* metadata signaling to Enabled. For ID3 event messages, the InbandEventStream element schemeIdUri will be same
* value that you specify for ID3 metadata scheme ID URI. For SCTE35 event messages, the InbandEventStream element
* schemeIdUri will be "urn:scte:scte35:2013:bin". To leave these elements out of your output MPD manifest, set
* Manifest metadata signaling to Disabled. To enable Manifest metadata signaling, you must also set SCTE-35 source
* to Passthrough, ESAM SCTE-35 to insert, or ID3 metadata to Passthrough.
*
* @return To add an InbandEventStream element in your output MPD manifest for each type of event message, set
* Manifest metadata signaling to Enabled. For ID3 event messages, the InbandEventStream element schemeIdUri
* will be same value that you specify for ID3 metadata scheme ID URI. For SCTE35 event messages, the
* InbandEventStream element schemeIdUri will be "urn:scte:scte35:2013:bin". To leave these elements out of
* your output MPD manifest, set Manifest metadata signaling to Disabled. To enable Manifest metadata
* signaling, you must also set SCTE-35 source to Passthrough, ESAM SCTE-35 to insert, or ID3 metadata to
* Passthrough.
* @see CmfcManifestMetadataSignaling
*/
public String getManifestMetadataSignaling() {
return this.manifestMetadataSignaling;
}
/**
* To add an InbandEventStream element in your output MPD manifest for each type of event message, set Manifest
* metadata signaling to Enabled. For ID3 event messages, the InbandEventStream element schemeIdUri will be same
* value that you specify for ID3 metadata scheme ID URI. For SCTE35 event messages, the InbandEventStream element
* schemeIdUri will be "urn:scte:scte35:2013:bin". To leave these elements out of your output MPD manifest, set
* Manifest metadata signaling to Disabled. To enable Manifest metadata signaling, you must also set SCTE-35 source
* to Passthrough, ESAM SCTE-35 to insert, or ID3 metadata to Passthrough.
*
* @param manifestMetadataSignaling
* To add an InbandEventStream element in your output MPD manifest for each type of event message, set
* Manifest metadata signaling to Enabled. For ID3 event messages, the InbandEventStream element schemeIdUri
* will be same value that you specify for ID3 metadata scheme ID URI. For SCTE35 event messages, the
* InbandEventStream element schemeIdUri will be "urn:scte:scte35:2013:bin". To leave these elements out of
* your output MPD manifest, set Manifest metadata signaling to Disabled. To enable Manifest metadata
* signaling, you must also set SCTE-35 source to Passthrough, ESAM SCTE-35 to insert, or ID3 metadata to
* Passthrough.
* @return Returns a reference to this object so that method calls can be chained together.
* @see CmfcManifestMetadataSignaling
*/
public CmfcSettings withManifestMetadataSignaling(String manifestMetadataSignaling) {
setManifestMetadataSignaling(manifestMetadataSignaling);
return this;
}
/**
* To add an InbandEventStream element in your output MPD manifest for each type of event message, set Manifest
* metadata signaling to Enabled. For ID3 event messages, the InbandEventStream element schemeIdUri will be same
* value that you specify for ID3 metadata scheme ID URI. For SCTE35 event messages, the InbandEventStream element
* schemeIdUri will be "urn:scte:scte35:2013:bin". To leave these elements out of your output MPD manifest, set
* Manifest metadata signaling to Disabled. To enable Manifest metadata signaling, you must also set SCTE-35 source
* to Passthrough, ESAM SCTE-35 to insert, or ID3 metadata to Passthrough.
*
* @param manifestMetadataSignaling
* To add an InbandEventStream element in your output MPD manifest for each type of event message, set
* Manifest metadata signaling to Enabled. For ID3 event messages, the InbandEventStream element schemeIdUri
* will be same value that you specify for ID3 metadata scheme ID URI. For SCTE35 event messages, the
* InbandEventStream element schemeIdUri will be "urn:scte:scte35:2013:bin". To leave these elements out of
* your output MPD manifest, set Manifest metadata signaling to Disabled. To enable Manifest metadata
* signaling, you must also set SCTE-35 source to Passthrough, ESAM SCTE-35 to insert, or ID3 metadata to
* Passthrough.
* @return Returns a reference to this object so that method calls can be chained together.
* @see CmfcManifestMetadataSignaling
*/
public CmfcSettings withManifestMetadataSignaling(CmfcManifestMetadataSignaling manifestMetadataSignaling) {
this.manifestMetadataSignaling = manifestMetadataSignaling.toString();
return this;
}
/**
* 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.
*
* @param scte35Esam
* 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.
* @see CmfcScte35Esam
*/
public void setScte35Esam(String scte35Esam) {
this.scte35Esam = scte35Esam;
}
/**
* 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.
*
* @return 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.
* @see CmfcScte35Esam
*/
public String getScte35Esam() {
return this.scte35Esam;
}
/**
* 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.
*
* @param scte35Esam
* 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.
* @return Returns a reference to this object so that method calls can be chained together.
* @see CmfcScte35Esam
*/
public CmfcSettings withScte35Esam(String scte35Esam) {
setScte35Esam(scte35Esam);
return this;
}
/**
* 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.
*
* @param scte35Esam
* 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.
* @return Returns a reference to this object so that method calls can be chained together.
* @see CmfcScte35Esam
*/
public CmfcSettings withScte35Esam(CmfcScte35Esam scte35Esam) {
this.scte35Esam = scte35Esam.toString();
return this;
}
/**
* Ignore this setting unless you have SCTE-35 markers in your input video file. Choose Passthrough if you want
* SCTE-35 markers that appear in your input to also appear in this output. Choose None if you don't want those
* SCTE-35 markers in this output.
*
* @param scte35Source
* Ignore this setting unless you have SCTE-35 markers in your input video file. Choose Passthrough if you
* want SCTE-35 markers that appear in your input to also appear in this output. Choose None if you don't
* want those SCTE-35 markers in this output.
* @see CmfcScte35Source
*/
public void setScte35Source(String scte35Source) {
this.scte35Source = scte35Source;
}
/**
* Ignore this setting unless you have SCTE-35 markers in your input video file. Choose Passthrough if you want
* SCTE-35 markers that appear in your input to also appear in this output. Choose None if you don't want those
* SCTE-35 markers in this output.
*
* @return Ignore this setting unless you have SCTE-35 markers in your input video file. Choose Passthrough if you
* want SCTE-35 markers that appear in your input to also appear in this output. Choose None if you don't
* want those SCTE-35 markers in this output.
* @see CmfcScte35Source
*/
public String getScte35Source() {
return this.scte35Source;
}
/**
* Ignore this setting unless you have SCTE-35 markers in your input video file. Choose Passthrough if you want
* SCTE-35 markers that appear in your input to also appear in this output. Choose None if you don't want those
* SCTE-35 markers in this output.
*
* @param scte35Source
* Ignore this setting unless you have SCTE-35 markers in your input video file. Choose Passthrough if you
* want SCTE-35 markers that appear in your input to also appear in this output. Choose None if you don't
* want those SCTE-35 markers in this output.
* @return Returns a reference to this object so that method calls can be chained together.
* @see CmfcScte35Source
*/
public CmfcSettings withScte35Source(String scte35Source) {
setScte35Source(scte35Source);
return this;
}
/**
* Ignore this setting unless you have SCTE-35 markers in your input video file. Choose Passthrough if you want
* SCTE-35 markers that appear in your input to also appear in this output. Choose None if you don't want those
* SCTE-35 markers in this output.
*
* @param scte35Source
* Ignore this setting unless you have SCTE-35 markers in your input video file. Choose Passthrough if you
* want SCTE-35 markers that appear in your input to also appear in this output. Choose None if you don't
* want those SCTE-35 markers in this output.
* @return Returns a reference to this object so that method calls can be chained together.
* @see CmfcScte35Source
*/
public CmfcSettings withScte35Source(CmfcScte35Source scte35Source) {
this.scte35Source = scte35Source.toString();
return this;
}
/**
* To include ID3 metadata in this output: Set ID3 metadata to Passthrough. Specify this ID3 metadata in Custom ID3
* metadata inserter. MediaConvert writes each instance of ID3 metadata in a separate Event Message (eMSG) box. To
* exclude this ID3 metadata: Set ID3 metadata to None or leave blank.
*
* @param timedMetadata
* To include ID3 metadata in this output: Set ID3 metadata to Passthrough. Specify this ID3 metadata in
* Custom ID3 metadata inserter. MediaConvert writes each instance of ID3 metadata in a separate Event
* Message (eMSG) box. To exclude this ID3 metadata: Set ID3 metadata to None or leave blank.
* @see CmfcTimedMetadata
*/
public void setTimedMetadata(String timedMetadata) {
this.timedMetadata = timedMetadata;
}
/**
* To include ID3 metadata in this output: Set ID3 metadata to Passthrough. Specify this ID3 metadata in Custom ID3
* metadata inserter. MediaConvert writes each instance of ID3 metadata in a separate Event Message (eMSG) box. To
* exclude this ID3 metadata: Set ID3 metadata to None or leave blank.
*
* @return To include ID3 metadata in this output: Set ID3 metadata to Passthrough. Specify this ID3 metadata in
* Custom ID3 metadata inserter. MediaConvert writes each instance of ID3 metadata in a separate Event
* Message (eMSG) box. To exclude this ID3 metadata: Set ID3 metadata to None or leave blank.
* @see CmfcTimedMetadata
*/
public String getTimedMetadata() {
return this.timedMetadata;
}
/**
* To include ID3 metadata in this output: Set ID3 metadata to Passthrough. Specify this ID3 metadata in Custom ID3
* metadata inserter. MediaConvert writes each instance of ID3 metadata in a separate Event Message (eMSG) box. To
* exclude this ID3 metadata: Set ID3 metadata to None or leave blank.
*
* @param timedMetadata
* To include ID3 metadata in this output: Set ID3 metadata to Passthrough. Specify this ID3 metadata in
* Custom ID3 metadata inserter. MediaConvert writes each instance of ID3 metadata in a separate Event
* Message (eMSG) box. To exclude this ID3 metadata: Set ID3 metadata to None or leave blank.
* @return Returns a reference to this object so that method calls can be chained together.
* @see CmfcTimedMetadata
*/
public CmfcSettings withTimedMetadata(String timedMetadata) {
setTimedMetadata(timedMetadata);
return this;
}
/**
* To include ID3 metadata in this output: Set ID3 metadata to Passthrough. Specify this ID3 metadata in Custom ID3
* metadata inserter. MediaConvert writes each instance of ID3 metadata in a separate Event Message (eMSG) box. To
* exclude this ID3 metadata: Set ID3 metadata to None or leave blank.
*
* @param timedMetadata
* To include ID3 metadata in this output: Set ID3 metadata to Passthrough. Specify this ID3 metadata in
* Custom ID3 metadata inserter. MediaConvert writes each instance of ID3 metadata in a separate Event
* Message (eMSG) box. To exclude this ID3 metadata: Set ID3 metadata to None or leave blank.
* @return Returns a reference to this object so that method calls can be chained together.
* @see CmfcTimedMetadata
*/
public CmfcSettings withTimedMetadata(CmfcTimedMetadata timedMetadata) {
this.timedMetadata = timedMetadata.toString();
return this;
}
/**
* Specify the event message box (eMSG) version for ID3 timed metadata in your output. For more information, see
* ISO/IEC 23009-1:2022 section 5.10.3.3.3 Syntax. Leave blank to use the default value Version 0. When you specify
* Version 1, you must also set ID3 metadata to Passthrough.
*
* @param timedMetadataBoxVersion
* Specify the event message box (eMSG) version for ID3 timed metadata in your output. For more information,
* see ISO/IEC 23009-1:2022 section 5.10.3.3.3 Syntax. Leave blank to use the default value Version 0. When
* you specify Version 1, you must also set ID3 metadata to Passthrough.
* @see CmfcTimedMetadataBoxVersion
*/
public void setTimedMetadataBoxVersion(String timedMetadataBoxVersion) {
this.timedMetadataBoxVersion = timedMetadataBoxVersion;
}
/**
* Specify the event message box (eMSG) version for ID3 timed metadata in your output. For more information, see
* ISO/IEC 23009-1:2022 section 5.10.3.3.3 Syntax. Leave blank to use the default value Version 0. When you specify
* Version 1, you must also set ID3 metadata to Passthrough.
*
* @return Specify the event message box (eMSG) version for ID3 timed metadata in your output. For more information,
* see ISO/IEC 23009-1:2022 section 5.10.3.3.3 Syntax. Leave blank to use the default value Version 0. When
* you specify Version 1, you must also set ID3 metadata to Passthrough.
* @see CmfcTimedMetadataBoxVersion
*/
public String getTimedMetadataBoxVersion() {
return this.timedMetadataBoxVersion;
}
/**
* Specify the event message box (eMSG) version for ID3 timed metadata in your output. For more information, see
* ISO/IEC 23009-1:2022 section 5.10.3.3.3 Syntax. Leave blank to use the default value Version 0. When you specify
* Version 1, you must also set ID3 metadata to Passthrough.
*
* @param timedMetadataBoxVersion
* Specify the event message box (eMSG) version for ID3 timed metadata in your output. For more information,
* see ISO/IEC 23009-1:2022 section 5.10.3.3.3 Syntax. Leave blank to use the default value Version 0. When
* you specify Version 1, you must also set ID3 metadata to Passthrough.
* @return Returns a reference to this object so that method calls can be chained together.
* @see CmfcTimedMetadataBoxVersion
*/
public CmfcSettings withTimedMetadataBoxVersion(String timedMetadataBoxVersion) {
setTimedMetadataBoxVersion(timedMetadataBoxVersion);
return this;
}
/**
* Specify the event message box (eMSG) version for ID3 timed metadata in your output. For more information, see
* ISO/IEC 23009-1:2022 section 5.10.3.3.3 Syntax. Leave blank to use the default value Version 0. When you specify
* Version 1, you must also set ID3 metadata to Passthrough.
*
* @param timedMetadataBoxVersion
* Specify the event message box (eMSG) version for ID3 timed metadata in your output. For more information,
* see ISO/IEC 23009-1:2022 section 5.10.3.3.3 Syntax. Leave blank to use the default value Version 0. When
* you specify Version 1, you must also set ID3 metadata to Passthrough.
* @return Returns a reference to this object so that method calls can be chained together.
* @see CmfcTimedMetadataBoxVersion
*/
public CmfcSettings withTimedMetadataBoxVersion(CmfcTimedMetadataBoxVersion timedMetadataBoxVersion) {
this.timedMetadataBoxVersion = timedMetadataBoxVersion.toString();
return this;
}
/**
* Specify the event message box (eMSG) scheme ID URI for ID3 timed metadata in your output. For more information,
* see ISO/IEC 23009-1:2022 section 5.10.3.3.4 Semantics. Leave blank to use the default value:
* https://aomedia.org/emsg/ID3 When you specify a value for ID3 metadata scheme ID URI, you must also set ID3
* metadata to Passthrough.
*
* @param timedMetadataSchemeIdUri
* Specify the event message box (eMSG) scheme ID URI for ID3 timed metadata in your output. For more
* information, see ISO/IEC 23009-1:2022 section 5.10.3.3.4 Semantics. Leave blank to use the default value:
* https://aomedia.org/emsg/ID3 When you specify a value for ID3 metadata scheme ID URI, you must also set
* ID3 metadata to Passthrough.
*/
public void setTimedMetadataSchemeIdUri(String timedMetadataSchemeIdUri) {
this.timedMetadataSchemeIdUri = timedMetadataSchemeIdUri;
}
/**
* Specify the event message box (eMSG) scheme ID URI for ID3 timed metadata in your output. For more information,
* see ISO/IEC 23009-1:2022 section 5.10.3.3.4 Semantics. Leave blank to use the default value:
* https://aomedia.org/emsg/ID3 When you specify a value for ID3 metadata scheme ID URI, you must also set ID3
* metadata to Passthrough.
*
* @return Specify the event message box (eMSG) scheme ID URI for ID3 timed metadata in your output. For more
* information, see ISO/IEC 23009-1:2022 section 5.10.3.3.4 Semantics. Leave blank to use the default value:
* https://aomedia.org/emsg/ID3 When you specify a value for ID3 metadata scheme ID URI, you must also set
* ID3 metadata to Passthrough.
*/
public String getTimedMetadataSchemeIdUri() {
return this.timedMetadataSchemeIdUri;
}
/**
* Specify the event message box (eMSG) scheme ID URI for ID3 timed metadata in your output. For more information,
* see ISO/IEC 23009-1:2022 section 5.10.3.3.4 Semantics. Leave blank to use the default value:
* https://aomedia.org/emsg/ID3 When you specify a value for ID3 metadata scheme ID URI, you must also set ID3
* metadata to Passthrough.
*
* @param timedMetadataSchemeIdUri
* Specify the event message box (eMSG) scheme ID URI for ID3 timed metadata in your output. For more
* information, see ISO/IEC 23009-1:2022 section 5.10.3.3.4 Semantics. Leave blank to use the default value:
* https://aomedia.org/emsg/ID3 When you specify a value for ID3 metadata scheme ID URI, you must also set
* ID3 metadata to Passthrough.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CmfcSettings withTimedMetadataSchemeIdUri(String timedMetadataSchemeIdUri) {
setTimedMetadataSchemeIdUri(timedMetadataSchemeIdUri);
return this;
}
/**
* Specify the event message box (eMSG) value for ID3 timed metadata in your output. For more information, see
* ISO/IEC 23009-1:2022 section 5.10.3.3.4 Semantics. When you specify a value for ID3 Metadata Value, you must also
* set ID3 metadata to Passthrough.
*
* @param timedMetadataValue
* Specify the event message box (eMSG) value for ID3 timed metadata in your output. For more information,
* see ISO/IEC 23009-1:2022 section 5.10.3.3.4 Semantics. When you specify a value for ID3 Metadata Value,
* you must also set ID3 metadata to Passthrough.
*/
public void setTimedMetadataValue(String timedMetadataValue) {
this.timedMetadataValue = timedMetadataValue;
}
/**
* Specify the event message box (eMSG) value for ID3 timed metadata in your output. For more information, see
* ISO/IEC 23009-1:2022 section 5.10.3.3.4 Semantics. When you specify a value for ID3 Metadata Value, you must also
* set ID3 metadata to Passthrough.
*
* @return Specify the event message box (eMSG) value for ID3 timed metadata in your output. For more information,
* see ISO/IEC 23009-1:2022 section 5.10.3.3.4 Semantics. When you specify a value for ID3 Metadata Value,
* you must also set ID3 metadata to Passthrough.
*/
public String getTimedMetadataValue() {
return this.timedMetadataValue;
}
/**
* Specify the event message box (eMSG) value for ID3 timed metadata in your output. For more information, see
* ISO/IEC 23009-1:2022 section 5.10.3.3.4 Semantics. When you specify a value for ID3 Metadata Value, you must also
* set ID3 metadata to Passthrough.
*
* @param timedMetadataValue
* Specify the event message box (eMSG) value for ID3 timed metadata in your output. For more information,
* see ISO/IEC 23009-1:2022 section 5.10.3.3.4 Semantics. When you specify a value for ID3 Metadata Value,
* you must also set ID3 metadata to Passthrough.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CmfcSettings withTimedMetadataValue(String timedMetadataValue) {
setTimedMetadataValue(timedMetadataValue);
return this;
}
/**
* Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be
* redacted from this string using a placeholder value.
*
* @return A string representation of this object.
*
* @see java.lang.Object#toString()
*/
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("{");
if (getAudioDuration() != null)
sb.append("AudioDuration: ").append(getAudioDuration()).append(",");
if (getAudioGroupId() != null)
sb.append("AudioGroupId: ").append(getAudioGroupId()).append(",");
if (getAudioRenditionSets() != null)
sb.append("AudioRenditionSets: ").append(getAudioRenditionSets()).append(",");
if (getAudioTrackType() != null)
sb.append("AudioTrackType: ").append(getAudioTrackType()).append(",");
if (getDescriptiveVideoServiceFlag() != null)
sb.append("DescriptiveVideoServiceFlag: ").append(getDescriptiveVideoServiceFlag()).append(",");
if (getIFrameOnlyManifest() != null)
sb.append("IFrameOnlyManifest: ").append(getIFrameOnlyManifest()).append(",");
if (getKlvMetadata() != null)
sb.append("KlvMetadata: ").append(getKlvMetadata()).append(",");
if (getManifestMetadataSignaling() != null)
sb.append("ManifestMetadataSignaling: ").append(getManifestMetadataSignaling()).append(",");
if (getScte35Esam() != null)
sb.append("Scte35Esam: ").append(getScte35Esam()).append(",");
if (getScte35Source() != null)
sb.append("Scte35Source: ").append(getScte35Source()).append(",");
if (getTimedMetadata() != null)
sb.append("TimedMetadata: ").append(getTimedMetadata()).append(",");
if (getTimedMetadataBoxVersion() != null)
sb.append("TimedMetadataBoxVersion: ").append(getTimedMetadataBoxVersion()).append(",");
if (getTimedMetadataSchemeIdUri() != null)
sb.append("TimedMetadataSchemeIdUri: ").append(getTimedMetadataSchemeIdUri()).append(",");
if (getTimedMetadataValue() != null)
sb.append("TimedMetadataValue: ").append(getTimedMetadataValue());
sb.append("}");
return sb.toString();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (obj instanceof CmfcSettings == false)
return false;
CmfcSettings other = (CmfcSettings) obj;
if (other.getAudioDuration() == null ^ this.getAudioDuration() == null)
return false;
if (other.getAudioDuration() != null && other.getAudioDuration().equals(this.getAudioDuration()) == false)
return false;
if (other.getAudioGroupId() == null ^ this.getAudioGroupId() == null)
return false;
if (other.getAudioGroupId() != null && other.getAudioGroupId().equals(this.getAudioGroupId()) == false)
return false;
if (other.getAudioRenditionSets() == null ^ this.getAudioRenditionSets() == null)
return false;
if (other.getAudioRenditionSets() != null && other.getAudioRenditionSets().equals(this.getAudioRenditionSets()) == false)
return false;
if (other.getAudioTrackType() == null ^ this.getAudioTrackType() == null)
return false;
if (other.getAudioTrackType() != null && other.getAudioTrackType().equals(this.getAudioTrackType()) == false)
return false;
if (other.getDescriptiveVideoServiceFlag() == null ^ this.getDescriptiveVideoServiceFlag() == null)
return false;
if (other.getDescriptiveVideoServiceFlag() != null && other.getDescriptiveVideoServiceFlag().equals(this.getDescriptiveVideoServiceFlag()) == false)
return false;
if (other.getIFrameOnlyManifest() == null ^ this.getIFrameOnlyManifest() == null)
return false;
if (other.getIFrameOnlyManifest() != null && other.getIFrameOnlyManifest().equals(this.getIFrameOnlyManifest()) == false)
return false;
if (other.getKlvMetadata() == null ^ this.getKlvMetadata() == null)
return false;
if (other.getKlvMetadata() != null && other.getKlvMetadata().equals(this.getKlvMetadata()) == false)
return false;
if (other.getManifestMetadataSignaling() == null ^ this.getManifestMetadataSignaling() == null)
return false;
if (other.getManifestMetadataSignaling() != null && other.getManifestMetadataSignaling().equals(this.getManifestMetadataSignaling()) == false)
return false;
if (other.getScte35Esam() == null ^ this.getScte35Esam() == null)
return false;
if (other.getScte35Esam() != null && other.getScte35Esam().equals(this.getScte35Esam()) == false)
return false;
if (other.getScte35Source() == null ^ this.getScte35Source() == null)
return false;
if (other.getScte35Source() != null && other.getScte35Source().equals(this.getScte35Source()) == false)
return false;
if (other.getTimedMetadata() == null ^ this.getTimedMetadata() == null)
return false;
if (other.getTimedMetadata() != null && other.getTimedMetadata().equals(this.getTimedMetadata()) == false)
return false;
if (other.getTimedMetadataBoxVersion() == null ^ this.getTimedMetadataBoxVersion() == null)
return false;
if (other.getTimedMetadataBoxVersion() != null && other.getTimedMetadataBoxVersion().equals(this.getTimedMetadataBoxVersion()) == false)
return false;
if (other.getTimedMetadataSchemeIdUri() == null ^ this.getTimedMetadataSchemeIdUri() == null)
return false;
if (other.getTimedMetadataSchemeIdUri() != null && other.getTimedMetadataSchemeIdUri().equals(this.getTimedMetadataSchemeIdUri()) == false)
return false;
if (other.getTimedMetadataValue() == null ^ this.getTimedMetadataValue() == null)
return false;
if (other.getTimedMetadataValue() != null && other.getTimedMetadataValue().equals(this.getTimedMetadataValue()) == false)
return false;
return true;
}
@Override
public int hashCode() {
final int prime = 31;
int hashCode = 1;
hashCode = prime * hashCode + ((getAudioDuration() == null) ? 0 : getAudioDuration().hashCode());
hashCode = prime * hashCode + ((getAudioGroupId() == null) ? 0 : getAudioGroupId().hashCode());
hashCode = prime * hashCode + ((getAudioRenditionSets() == null) ? 0 : getAudioRenditionSets().hashCode());
hashCode = prime * hashCode + ((getAudioTrackType() == null) ? 0 : getAudioTrackType().hashCode());
hashCode = prime * hashCode + ((getDescriptiveVideoServiceFlag() == null) ? 0 : getDescriptiveVideoServiceFlag().hashCode());
hashCode = prime * hashCode + ((getIFrameOnlyManifest() == null) ? 0 : getIFrameOnlyManifest().hashCode());
hashCode = prime * hashCode + ((getKlvMetadata() == null) ? 0 : getKlvMetadata().hashCode());
hashCode = prime * hashCode + ((getManifestMetadataSignaling() == null) ? 0 : getManifestMetadataSignaling().hashCode());
hashCode = prime * hashCode + ((getScte35Esam() == null) ? 0 : getScte35Esam().hashCode());
hashCode = prime * hashCode + ((getScte35Source() == null) ? 0 : getScte35Source().hashCode());
hashCode = prime * hashCode + ((getTimedMetadata() == null) ? 0 : getTimedMetadata().hashCode());
hashCode = prime * hashCode + ((getTimedMetadataBoxVersion() == null) ? 0 : getTimedMetadataBoxVersion().hashCode());
hashCode = prime * hashCode + ((getTimedMetadataSchemeIdUri() == null) ? 0 : getTimedMetadataSchemeIdUri().hashCode());
hashCode = prime * hashCode + ((getTimedMetadataValue() == null) ? 0 : getTimedMetadataValue().hashCode());
return hashCode;
}
@Override
public CmfcSettings clone() {
try {
return (CmfcSettings) super.clone();
} catch (CloneNotSupportedException e) {
throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e);
}
}
@com.amazonaws.annotation.SdkInternalApi
@Override
public void marshall(ProtocolMarshaller protocolMarshaller) {
com.amazonaws.services.mediaconvert.model.transform.CmfcSettingsMarshaller.getInstance().marshall(this, protocolMarshaller);
}
}