java.lang.Object
software.amazon.awssdk.services.mediaconvert.model.Mp4Settings
All Implemented Interfaces:
Serializable, SdkPojo, ToCopyableBuilder<Mp4Settings.Builder,Mp4Settings>

@Generated("software.amazon.awssdk:codegen") public final class Mp4Settings extends Object implements SdkPojo, Serializable, ToCopyableBuilder<Mp4Settings.Builder,Mp4Settings>
These settings relate to your MP4 output container. You can create audio only outputs with this container. For more information, see https://docs.aws.amazon.com/mediaconvert/latest/ug/supported-codecs-containers-audio-only.html#output -codecs-and-containers-supported-for-audio-only.
See Also:
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static interface 
     
  • Method Summary

    Modifier and Type
    Method
    Description
    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.
    final String
    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.
     
    When enabled, file composition times will start at zero, composition times in the 'ctts' (composition time to sample) box for B-frames will be negative, and a 'cslg' (composition shift least greatest) box will be included per 14496-1 amendment 1.
    final String
    When enabled, file composition times will start at zero, composition times in the 'ctts' (composition time to sample) box for B-frames will be negative, and a 'cslg' (composition shift least greatest) box will be included per 14496-1 amendment 1.
    final Integer
    Ignore this setting unless compliance to the CTTS box version specification matters in your workflow.
    final boolean
     
    final boolean
    Indicates whether some other object is "equal to" this one by SDK fields.
    Inserts a free-space box immediately after the moov box.
    final String
    Inserts a free-space box immediately after the moov box.
    final <T> Optional<T>
    getValueForField(String fieldName, Class<T> clazz)
     
    final int
     
    To place the MOOV atom at the beginning of your output, which is useful for progressive downloading: Leave blank or choose Progressive download.
    final String
    To place the MOOV atom at the beginning of your output, which is useful for progressive downloading: Leave blank or choose Progressive download.
    final String
    Overrides the "Major Brand" field in the output file.
    final List<SdkField<?>>
     
    static Class<? extends Mp4Settings.Builder>
     
    Take this object and create a builder that contains all of the current property values of this object.
    final String
    Returns a string representation of this object.

    Methods inherited from class java.lang.Object

    getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder

    copy
  • Method Details

    • audioDuration

      public final CmfcAudioDuration 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.

      If the service returns an enum value that is not available in the current SDK version, audioDuration will return CmfcAudioDuration.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from audioDurationAsString().

      Returns:
      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 Also:
    • audioDurationAsString

      public final String audioDurationAsString()
      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.

      If the service returns an enum value that is not available in the current SDK version, audioDuration will return CmfcAudioDuration.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from audioDurationAsString().

      Returns:
      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 Also:
    • cslgAtom

      public final Mp4CslgAtom cslgAtom()
      When enabled, file composition times will start at zero, composition times in the 'ctts' (composition time to sample) box for B-frames will be negative, and a 'cslg' (composition shift least greatest) box will be included per 14496-1 amendment 1. This improves compatibility with Apple players and tools.

      If the service returns an enum value that is not available in the current SDK version, cslgAtom will return Mp4CslgAtom.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from cslgAtomAsString().

      Returns:
      When enabled, file composition times will start at zero, composition times in the 'ctts' (composition time to sample) box for B-frames will be negative, and a 'cslg' (composition shift least greatest) box will be included per 14496-1 amendment 1. This improves compatibility with Apple players and tools.
      See Also:
    • cslgAtomAsString

      public final String cslgAtomAsString()
      When enabled, file composition times will start at zero, composition times in the 'ctts' (composition time to sample) box for B-frames will be negative, and a 'cslg' (composition shift least greatest) box will be included per 14496-1 amendment 1. This improves compatibility with Apple players and tools.

      If the service returns an enum value that is not available in the current SDK version, cslgAtom will return Mp4CslgAtom.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from cslgAtomAsString().

      Returns:
      When enabled, file composition times will start at zero, composition times in the 'ctts' (composition time to sample) box for B-frames will be negative, and a 'cslg' (composition shift least greatest) box will be included per 14496-1 amendment 1. This improves compatibility with Apple players and tools.
      See Also:
    • cttsVersion

      public final Integer cttsVersion()
      Ignore this setting unless compliance to the CTTS box version specification matters in your workflow. Specify a value of 1 to set your CTTS box version to 1 and make your output compliant with the specification. When you specify a value of 1, you must also set CSLG atom to the value INCLUDE. Keep the default value 0 to set your CTTS box version to 0. This can provide backward compatibility for some players and packagers.
      Returns:
      Ignore this setting unless compliance to the CTTS box version specification matters in your workflow. Specify a value of 1 to set your CTTS box version to 1 and make your output compliant with the specification. When you specify a value of 1, you must also set CSLG atom to the value INCLUDE. Keep the default value 0 to set your CTTS box version to 0. This can provide backward compatibility for some players and packagers.
    • freeSpaceBox

      public final Mp4FreeSpaceBox freeSpaceBox()
      Inserts a free-space box immediately after the moov box.

      If the service returns an enum value that is not available in the current SDK version, freeSpaceBox will return Mp4FreeSpaceBox.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from freeSpaceBoxAsString().

      Returns:
      Inserts a free-space box immediately after the moov box.
      See Also:
    • freeSpaceBoxAsString

      public final String freeSpaceBoxAsString()
      Inserts a free-space box immediately after the moov box.

      If the service returns an enum value that is not available in the current SDK version, freeSpaceBox will return Mp4FreeSpaceBox.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from freeSpaceBoxAsString().

      Returns:
      Inserts a free-space box immediately after the moov box.
      See Also:
    • moovPlacement

      public final Mp4MoovPlacement moovPlacement()
      To place the MOOV atom at the beginning of your output, which is useful for progressive downloading: Leave blank or choose Progressive download. To place the MOOV at the end of your output: Choose Normal.

      If the service returns an enum value that is not available in the current SDK version, moovPlacement will return Mp4MoovPlacement.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from moovPlacementAsString().

      Returns:
      To place the MOOV atom at the beginning of your output, which is useful for progressive downloading: Leave blank or choose Progressive download. To place the MOOV at the end of your output: Choose Normal.
      See Also:
    • moovPlacementAsString

      public final String moovPlacementAsString()
      To place the MOOV atom at the beginning of your output, which is useful for progressive downloading: Leave blank or choose Progressive download. To place the MOOV at the end of your output: Choose Normal.

      If the service returns an enum value that is not available in the current SDK version, moovPlacement will return Mp4MoovPlacement.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from moovPlacementAsString().

      Returns:
      To place the MOOV atom at the beginning of your output, which is useful for progressive downloading: Leave blank or choose Progressive download. To place the MOOV at the end of your output: Choose Normal.
      See Also:
    • mp4MajorBrand

      public final String mp4MajorBrand()
      Overrides the "Major Brand" field in the output file. Usually not necessary to specify.
      Returns:
      Overrides the "Major Brand" field in the output file. Usually not necessary to specify.
    • toBuilder

      public Mp4Settings.Builder toBuilder()
      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<Mp4Settings.Builder,Mp4Settings>
      Returns:
      a builder for type T
    • builder

      public static Mp4Settings.Builder builder()
    • serializableBuilderClass

      public static Class<? extends Mp4Settings.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      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.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.