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

@Generated("software.amazon.awssdk:codegen") public final class Av1Settings extends Object implements SdkPojo, Serializable, ToCopyableBuilder<Av1Settings.Builder,Av1Settings>
Required when you set Codec, under VideoDescription>CodecSettings to the value AV1.
See Also:
  • Method Details

    • adaptiveQuantization

      public final Av1AdaptiveQuantization adaptiveQuantization()
      Specify the strength of any adaptive quantization filters that you enable. The value that you choose here applies to Spatial adaptive quantization.

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

      Returns:
      Specify the strength of any adaptive quantization filters that you enable. The value that you choose here applies to Spatial adaptive quantization.
      See Also:
    • adaptiveQuantizationAsString

      public final String adaptiveQuantizationAsString()
      Specify the strength of any adaptive quantization filters that you enable. The value that you choose here applies to Spatial adaptive quantization.

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

      Returns:
      Specify the strength of any adaptive quantization filters that you enable. The value that you choose here applies to Spatial adaptive quantization.
      See Also:
    • bitDepth

      public final Av1BitDepth bitDepth()
      Specify the Bit depth. You can choose 8-bit or 10-bit.

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

      Returns:
      Specify the Bit depth. You can choose 8-bit or 10-bit.
      See Also:
    • bitDepthAsString

      public final String bitDepthAsString()
      Specify the Bit depth. You can choose 8-bit or 10-bit.

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

      Returns:
      Specify the Bit depth. You can choose 8-bit or 10-bit.
      See Also:
    • filmGrainSynthesis

      public final Av1FilmGrainSynthesis filmGrainSynthesis()
      Film grain synthesis replaces film grain present in your content with similar quality synthesized AV1 film grain. We recommend that you choose Enabled to reduce the bandwidth of your QVBR quality level 5, 6, 7, or 8 outputs. For QVBR quality level 9 or 10 outputs we recommend that you keep the default value, Disabled. When you include Film grain synthesis, you cannot include the Noise reducer preprocessor.

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

      Returns:
      Film grain synthesis replaces film grain present in your content with similar quality synthesized AV1 film grain. We recommend that you choose Enabled to reduce the bandwidth of your QVBR quality level 5, 6, 7, or 8 outputs. For QVBR quality level 9 or 10 outputs we recommend that you keep the default value, Disabled. When you include Film grain synthesis, you cannot include the Noise reducer preprocessor.
      See Also:
    • filmGrainSynthesisAsString

      public final String filmGrainSynthesisAsString()
      Film grain synthesis replaces film grain present in your content with similar quality synthesized AV1 film grain. We recommend that you choose Enabled to reduce the bandwidth of your QVBR quality level 5, 6, 7, or 8 outputs. For QVBR quality level 9 or 10 outputs we recommend that you keep the default value, Disabled. When you include Film grain synthesis, you cannot include the Noise reducer preprocessor.

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

      Returns:
      Film grain synthesis replaces film grain present in your content with similar quality synthesized AV1 film grain. We recommend that you choose Enabled to reduce the bandwidth of your QVBR quality level 5, 6, 7, or 8 outputs. For QVBR quality level 9 or 10 outputs we recommend that you keep the default value, Disabled. When you include Film grain synthesis, you cannot include the Noise reducer preprocessor.
      See Also:
    • framerateControl

      public final Av1FramerateControl framerateControl()
      Use the Framerate setting to specify the frame rate for this output. If you want to keep the same frame rate as the input video, choose Follow source. If you want to do frame rate conversion, choose a frame rate from the dropdown list or choose Custom. The framerates shown in the dropdown list are decimal approximations of fractions. If you choose Custom, specify your frame rate as a fraction.

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

      Returns:
      Use the Framerate setting to specify the frame rate for this output. If you want to keep the same frame rate as the input video, choose Follow source. If you want to do frame rate conversion, choose a frame rate from the dropdown list or choose Custom. The framerates shown in the dropdown list are decimal approximations of fractions. If you choose Custom, specify your frame rate as a fraction.
      See Also:
    • framerateControlAsString

      public final String framerateControlAsString()
      Use the Framerate setting to specify the frame rate for this output. If you want to keep the same frame rate as the input video, choose Follow source. If you want to do frame rate conversion, choose a frame rate from the dropdown list or choose Custom. The framerates shown in the dropdown list are decimal approximations of fractions. If you choose Custom, specify your frame rate as a fraction.

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

      Returns:
      Use the Framerate setting to specify the frame rate for this output. If you want to keep the same frame rate as the input video, choose Follow source. If you want to do frame rate conversion, choose a frame rate from the dropdown list or choose Custom. The framerates shown in the dropdown list are decimal approximations of fractions. If you choose Custom, specify your frame rate as a fraction.
      See Also:
    • framerateConversionAlgorithm

      public final Av1FramerateConversionAlgorithm framerateConversionAlgorithm()
      Choose the method that you want MediaConvert to use when increasing or decreasing the frame rate. For numerically simple conversions, such as 60 fps to 30 fps: We recommend that you keep the default value, Drop duplicate. For numerically complex conversions, to avoid stutter: Choose Interpolate. This results in a smooth picture, but might introduce undesirable video artifacts. For complex frame rate conversions, especially if your source video has already been converted from its original cadence: Choose FrameFormer to do motion-compensated interpolation. FrameFormer uses the best conversion method frame by frame. Note that using FrameFormer increases the transcoding time and incurs a significant add-on cost. When you choose FrameFormer, your input video resolution must be at least 128x96.

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

      Returns:
      Choose the method that you want MediaConvert to use when increasing or decreasing the frame rate. For numerically simple conversions, such as 60 fps to 30 fps: We recommend that you keep the default value, Drop duplicate. For numerically complex conversions, to avoid stutter: Choose Interpolate. This results in a smooth picture, but might introduce undesirable video artifacts. For complex frame rate conversions, especially if your source video has already been converted from its original cadence: Choose FrameFormer to do motion-compensated interpolation. FrameFormer uses the best conversion method frame by frame. Note that using FrameFormer increases the transcoding time and incurs a significant add-on cost. When you choose FrameFormer, your input video resolution must be at least 128x96.
      See Also:
    • framerateConversionAlgorithmAsString

      public final String framerateConversionAlgorithmAsString()
      Choose the method that you want MediaConvert to use when increasing or decreasing the frame rate. For numerically simple conversions, such as 60 fps to 30 fps: We recommend that you keep the default value, Drop duplicate. For numerically complex conversions, to avoid stutter: Choose Interpolate. This results in a smooth picture, but might introduce undesirable video artifacts. For complex frame rate conversions, especially if your source video has already been converted from its original cadence: Choose FrameFormer to do motion-compensated interpolation. FrameFormer uses the best conversion method frame by frame. Note that using FrameFormer increases the transcoding time and incurs a significant add-on cost. When you choose FrameFormer, your input video resolution must be at least 128x96.

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

      Returns:
      Choose the method that you want MediaConvert to use when increasing or decreasing the frame rate. For numerically simple conversions, such as 60 fps to 30 fps: We recommend that you keep the default value, Drop duplicate. For numerically complex conversions, to avoid stutter: Choose Interpolate. This results in a smooth picture, but might introduce undesirable video artifacts. For complex frame rate conversions, especially if your source video has already been converted from its original cadence: Choose FrameFormer to do motion-compensated interpolation. FrameFormer uses the best conversion method frame by frame. Note that using FrameFormer increases the transcoding time and incurs a significant add-on cost. When you choose FrameFormer, your input video resolution must be at least 128x96.
      See Also:
    • framerateDenominator

      public final Integer framerateDenominator()
      When you use the API for transcode jobs that use frame rate conversion, specify the frame rate as a fraction. For example, 24000 / 1001 = 23.976 fps. Use FramerateDenominator to specify the denominator of this fraction. In this example, use 1001 for the value of FramerateDenominator. When you use the console for transcode jobs that use frame rate conversion, provide the value as a decimal number for Framerate. In this example, specify 23.976.
      Returns:
      When you use the API for transcode jobs that use frame rate conversion, specify the frame rate as a fraction. For example, 24000 / 1001 = 23.976 fps. Use FramerateDenominator to specify the denominator of this fraction. In this example, use 1001 for the value of FramerateDenominator. When you use the console for transcode jobs that use frame rate conversion, provide the value as a decimal number for Framerate. In this example, specify 23.976.
    • framerateNumerator

      public final Integer framerateNumerator()
      When you use the API for transcode jobs that use frame rate conversion, specify the frame rate as a fraction. For example, 24000 / 1001 = 23.976 fps. Use FramerateNumerator to specify the numerator of this fraction. In this example, use 24000 for the value of FramerateNumerator. When you use the console for transcode jobs that use frame rate conversion, provide the value as a decimal number for Framerate. In this example, specify 23.976.
      Returns:
      When you use the API for transcode jobs that use frame rate conversion, specify the frame rate as a fraction. For example, 24000 / 1001 = 23.976 fps. Use FramerateNumerator to specify the numerator of this fraction. In this example, use 24000 for the value of FramerateNumerator. When you use the console for transcode jobs that use frame rate conversion, provide the value as a decimal number for Framerate. In this example, specify 23.976.
    • gopSize

      public final Double gopSize()
      Specify the GOP length (keyframe interval) in frames. With AV1, MediaConvert doesn't support GOP length in seconds. This value must be greater than zero and preferably equal to 1 + ((numberBFrames + 1) * x), where x is an integer value.
      Returns:
      Specify the GOP length (keyframe interval) in frames. With AV1, MediaConvert doesn't support GOP length in seconds. This value must be greater than zero and preferably equal to 1 + ((numberBFrames + 1) * x), where x is an integer value.
    • maxBitrate

      public final Integer maxBitrate()
      Maximum bitrate in bits/second. For example, enter five megabits per second as 5000000. Required when Rate control mode is QVBR.
      Returns:
      Maximum bitrate in bits/second. For example, enter five megabits per second as 5000000. Required when Rate control mode is QVBR.
    • numberBFramesBetweenReferenceFrames

      public final Integer numberBFramesBetweenReferenceFrames()
      Specify from the number of B-frames, in the range of 0-15. For AV1 encoding, we recommend using 7 or 15. Choose a larger number for a lower bitrate and smaller file size; choose a smaller number for better video quality.
      Returns:
      Specify from the number of B-frames, in the range of 0-15. For AV1 encoding, we recommend using 7 or 15. Choose a larger number for a lower bitrate and smaller file size; choose a smaller number for better video quality.
    • qvbrSettings

      public final Av1QvbrSettings qvbrSettings()
      Settings for quality-defined variable bitrate encoding with the H.265 codec. Use these settings only when you set QVBR for Rate control mode.
      Returns:
      Settings for quality-defined variable bitrate encoding with the H.265 codec. Use these settings only when you set QVBR for Rate control mode.
    • rateControlMode

      public final Av1RateControlMode rateControlMode()
      'With AV1 outputs, for rate control mode, MediaConvert supports only quality-defined variable bitrate (QVBR). You can''t use CBR or VBR.'

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

      Returns:
      'With AV1 outputs, for rate control mode, MediaConvert supports only quality-defined variable bitrate (QVBR). You can''t use CBR or VBR.'
      See Also:
    • rateControlModeAsString

      public final String rateControlModeAsString()
      'With AV1 outputs, for rate control mode, MediaConvert supports only quality-defined variable bitrate (QVBR). You can''t use CBR or VBR.'

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

      Returns:
      'With AV1 outputs, for rate control mode, MediaConvert supports only quality-defined variable bitrate (QVBR). You can''t use CBR or VBR.'
      See Also:
    • slices

      public final Integer slices()
      Specify the number of slices per picture. This value must be 1, 2, 4, 8, 16, or 32. For progressive pictures, this value must be less than or equal to the number of macroblock rows. For interlaced pictures, this value must be less than or equal to half the number of macroblock rows.
      Returns:
      Specify the number of slices per picture. This value must be 1, 2, 4, 8, 16, or 32. For progressive pictures, this value must be less than or equal to the number of macroblock rows. For interlaced pictures, this value must be less than or equal to half the number of macroblock rows.
    • spatialAdaptiveQuantization

      public final Av1SpatialAdaptiveQuantization spatialAdaptiveQuantization()
      Keep the default value, Enabled, to adjust quantization within each frame based on spatial variation of content complexity. When you enable this feature, the encoder uses fewer bits on areas that can sustain more distortion with no noticeable visual degradation and uses more bits on areas where any small distortion will be noticeable. For example, complex textured blocks are encoded with fewer bits and smooth textured blocks are encoded with more bits. Enabling this feature will almost always improve your video quality. Note, though, that this feature doesn't take into account where the viewer's attention is likely to be. If viewers are likely to be focusing their attention on a part of the screen with a lot of complex texture, you might choose to disable this feature. Related setting: When you enable spatial adaptive quantization, set the value for Adaptive quantization depending on your content. For homogeneous content, such as cartoons and video games, set it to Low. For content with a wider variety of textures, set it to High or Higher.

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

      Returns:
      Keep the default value, Enabled, to adjust quantization within each frame based on spatial variation of content complexity. When you enable this feature, the encoder uses fewer bits on areas that can sustain more distortion with no noticeable visual degradation and uses more bits on areas where any small distortion will be noticeable. For example, complex textured blocks are encoded with fewer bits and smooth textured blocks are encoded with more bits. Enabling this feature will almost always improve your video quality. Note, though, that this feature doesn't take into account where the viewer's attention is likely to be. If viewers are likely to be focusing their attention on a part of the screen with a lot of complex texture, you might choose to disable this feature. Related setting: When you enable spatial adaptive quantization, set the value for Adaptive quantization depending on your content. For homogeneous content, such as cartoons and video games, set it to Low. For content with a wider variety of textures, set it to High or Higher.
      See Also:
    • spatialAdaptiveQuantizationAsString

      public final String spatialAdaptiveQuantizationAsString()
      Keep the default value, Enabled, to adjust quantization within each frame based on spatial variation of content complexity. When you enable this feature, the encoder uses fewer bits on areas that can sustain more distortion with no noticeable visual degradation and uses more bits on areas where any small distortion will be noticeable. For example, complex textured blocks are encoded with fewer bits and smooth textured blocks are encoded with more bits. Enabling this feature will almost always improve your video quality. Note, though, that this feature doesn't take into account where the viewer's attention is likely to be. If viewers are likely to be focusing their attention on a part of the screen with a lot of complex texture, you might choose to disable this feature. Related setting: When you enable spatial adaptive quantization, set the value for Adaptive quantization depending on your content. For homogeneous content, such as cartoons and video games, set it to Low. For content with a wider variety of textures, set it to High or Higher.

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

      Returns:
      Keep the default value, Enabled, to adjust quantization within each frame based on spatial variation of content complexity. When you enable this feature, the encoder uses fewer bits on areas that can sustain more distortion with no noticeable visual degradation and uses more bits on areas where any small distortion will be noticeable. For example, complex textured blocks are encoded with fewer bits and smooth textured blocks are encoded with more bits. Enabling this feature will almost always improve your video quality. Note, though, that this feature doesn't take into account where the viewer's attention is likely to be. If viewers are likely to be focusing their attention on a part of the screen with a lot of complex texture, you might choose to disable this feature. Related setting: When you enable spatial adaptive quantization, set the value for Adaptive quantization depending on your content. For homogeneous content, such as cartoons and video games, set it to Low. For content with a wider variety of textures, set it to High or Higher.
      See Also:
    • toBuilder

      public Av1Settings.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<Av1Settings.Builder,Av1Settings>
      Returns:
      a builder for type T
    • builder

      public static Av1Settings.Builder builder()
    • serializableBuilderClass

      public static Class<? extends Av1Settings.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.