class Aws::MediaConvert::Types::XavcSettings

Required when you set (Codec) under (VideoDescription)>(CodecSettings) to the value XAVC.

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

data as a hash:

    {
      adaptive_quantization: "OFF", # accepts OFF, AUTO, LOW, MEDIUM, HIGH, HIGHER, MAX
      entropy_encoding: "AUTO", # accepts AUTO, CABAC, CAVLC
      framerate_control: "INITIALIZE_FROM_SOURCE", # accepts INITIALIZE_FROM_SOURCE, SPECIFIED
      framerate_conversion_algorithm: "DUPLICATE_DROP", # accepts DUPLICATE_DROP, INTERPOLATE, FRAMEFORMER
      framerate_denominator: 1,
      framerate_numerator: 1,
      profile: "XAVC_HD_INTRA_CBG", # accepts XAVC_HD_INTRA_CBG, XAVC_4K_INTRA_CBG, XAVC_4K_INTRA_VBR, XAVC_HD, XAVC_4K
      slow_pal: "DISABLED", # accepts DISABLED, ENABLED
      softness: 1,
      spatial_adaptive_quantization: "DISABLED", # accepts DISABLED, ENABLED
      temporal_adaptive_quantization: "DISABLED", # accepts DISABLED, ENABLED
      xavc_4k_intra_cbg_profile_settings: {
        xavc_class: "CLASS_100", # accepts CLASS_100, CLASS_300, CLASS_480
      },
      xavc_4k_intra_vbr_profile_settings: {
        xavc_class: "CLASS_100", # accepts CLASS_100, CLASS_300, CLASS_480
      },
      xavc_4k_profile_settings: {
        bitrate_class: "BITRATE_CLASS_100", # accepts BITRATE_CLASS_100, BITRATE_CLASS_140, BITRATE_CLASS_200
        codec_profile: "HIGH", # accepts HIGH, HIGH_422
        flicker_adaptive_quantization: "DISABLED", # accepts DISABLED, ENABLED
        gop_b_reference: "DISABLED", # accepts DISABLED, ENABLED
        gop_closed_cadence: 1,
        hrd_buffer_size: 1,
        quality_tuning_level: "SINGLE_PASS", # accepts SINGLE_PASS, SINGLE_PASS_HQ, MULTI_PASS_HQ
        slices: 1,
      },
      xavc_hd_intra_cbg_profile_settings: {
        xavc_class: "CLASS_50", # accepts CLASS_50, CLASS_100, CLASS_200
      },
      xavc_hd_profile_settings: {
        bitrate_class: "BITRATE_CLASS_25", # accepts BITRATE_CLASS_25, BITRATE_CLASS_35, BITRATE_CLASS_50
        flicker_adaptive_quantization: "DISABLED", # accepts DISABLED, ENABLED
        gop_b_reference: "DISABLED", # accepts DISABLED, ENABLED
        gop_closed_cadence: 1,
        hrd_buffer_size: 1,
        interlace_mode: "PROGRESSIVE", # accepts PROGRESSIVE, TOP_FIELD, BOTTOM_FIELD, FOLLOW_TOP_FIELD, FOLLOW_BOTTOM_FIELD
        quality_tuning_level: "SINGLE_PASS", # accepts SINGLE_PASS, SINGLE_PASS_HQ, MULTI_PASS_HQ
        slices: 1,
        telecine: "NONE", # accepts NONE, HARD
      },
    }

@!attribute [rw] adaptive_quantization

Keep the default value, Auto (AUTO), for this setting to have
MediaConvert automatically apply the best types of quantization for
your video content. When you want to apply your quantization
settings manually, you must set Adaptive quantization
(adaptiveQuantization) to a value other than Auto (AUTO). Use this
setting to specify the strength of any adaptive quantization filters
that you enable. If you don't want MediaConvert to do any adaptive
quantization in this transcode, set Adaptive quantization to Off
(OFF). Related settings: The value that you choose here applies to
the following settings: Flicker adaptive quantization
(flickerAdaptiveQuantization), Spatial adaptive quantization
(spatialAdaptiveQuantization), and Temporal adaptive quantization
(temporalAdaptiveQuantization).
@return [String]

@!attribute [rw] entropy_encoding

Optional. Choose a specific entropy encoding mode only when you want
to override XAVC recommendations. If you choose the value auto,
MediaConvert uses the mode that the XAVC file format specifies given
this output's operating point.
@return [String]

@!attribute [rw] framerate_control

If you are using the console, use the Frame rate 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.
The framerates shown in the dropdown list are decimal approximations
of fractions. If you are creating your transcoding job specification
as a JSON file without the console, use FramerateControl to specify
which value the service uses for the frame rate for this output.
Choose INITIALIZE\_FROM\_SOURCE if you want the service to use the
frame rate from the input. Choose SPECIFIED if you want the service
to use the frame rate that you specify in the settings
FramerateNumerator and FramerateDenominator.
@return [String]

@!attribute [rw] framerate_conversion_algorithm

Choose the method that you want MediaConvert to use when increasing
or decreasing the frame rate. We recommend using drop duplicate
(DUPLICATE\_DROP) for numerically simple conversions, such as 60 fps
to 30 fps. For numerically complex conversions, you can use
interpolate (INTERPOLATE) to avoid stutter. 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, use FrameFormer
(FRAMEFORMER) to do motion-compensated interpolation. FrameFormer
chooses the best conversion method frame by frame. Note that using
FrameFormer increases the transcoding time and incurs a significant
add-on cost.
@return [String]

@!attribute [rw] framerate_denominator

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 Frame rate. In this example, specify 23.976.
@return [Integer]

@!attribute [rw] framerate_numerator

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

@!attribute [rw] profile

Specify the XAVC profile for this output. For more information, see
the Sony documentation at https://www.xavc-info.org/. Note that
MediaConvert doesn't support the interlaced video XAVC operating
points for XAVC\_HD\_INTRA\_CBG. To create an interlaced XAVC
output, choose the profile XAVC\_HD.
@return [String]

@!attribute [rw] slow_pal

Ignore this setting unless your input frame rate is 23.976 or 24
frames per second (fps). Enable slow PAL to create a 25 fps output
by relabeling the video frames and resampling your audio. Note that
enabling this setting will slightly reduce the duration of your
video. Related settings: You must also set Frame rate to 25. In your
JSON job specification, set (framerateControl) to (SPECIFIED),
(framerateNumerator) to 25 and (framerateDenominator) to 1.
@return [String]

@!attribute [rw] softness

Ignore this setting unless your downstream workflow requires that
you specify it explicitly. Otherwise, we recommend that you adjust
the softness of your output by using a lower value for the setting
Sharpness (sharpness) or by enabling a noise reducer filter
(noiseReducerFilter). The Softness (softness) setting specifies the
quantization matrices that the encoder uses. Keep the default value,
0, for flat quantization. Choose the value 1 or 16 to use the
default JVT softening quantization matricies from the H.264
specification. Choose a value from 17 to 128 to use planar
interpolation. Increasing values from 17 to 128 result in increasing
reduction of high-frequency data. The value 128 results in the
softest video.
@return [Integer]

@!attribute [rw] spatial_adaptive_quantization

The best way to set up adaptive quantization is to keep the default
value, Auto (AUTO), for the setting Adaptive quantization
(adaptiveQuantization). When you do so, MediaConvert automatically
applies the best types of quantization for your video content.
Include this setting in your JSON job specification only when you
choose to change the default value for Adaptive quantization. For
this setting, keep the default value, Enabled (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
(adaptiveQuantization) 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.
@return [String]

@!attribute [rw] temporal_adaptive_quantization

The best way to set up adaptive quantization is to keep the default
value, Auto (AUTO), for the setting Adaptive quantization
(adaptiveQuantization). When you do so, MediaConvert automatically
applies the best types of quantization for your video content.
Include this setting in your JSON job specification only when you
choose to change the default value for Adaptive quantization. For
this setting, keep the default value, Enabled (ENABLED), to adjust
quantization within each frame based on temporal variation of
content complexity. When you enable this feature, the encoder uses
fewer bits on areas of the frame that aren't moving and uses more
bits on complex objects with sharp edges that move a lot. For
example, this feature improves the readability of text tickers on
newscasts and scoreboards on sports matches. 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 that doesn't have moving
objects with sharp edges, such as sports athletes' faces, you might
choose to disable this feature. Related setting: When you enable
temporal adaptive quantization, adjust the strength of the filter
with the setting Adaptive quantization (adaptiveQuantization).
@return [String]

@!attribute [rw] xavc_4k_intra_cbg_profile_settings

Required when you set (Profile) under
(VideoDescription)>(CodecSettings)>(XavcSettings) to the value
XAVC\_4K\_INTRA\_CBG.
@return [Types::Xavc4kIntraCbgProfileSettings]

@!attribute [rw] xavc_4k_intra_vbr_profile_settings

Required when you set (Profile) under
(VideoDescription)>(CodecSettings)>(XavcSettings) to the value
XAVC\_4K\_INTRA\_VBR.
@return [Types::Xavc4kIntraVbrProfileSettings]

@!attribute [rw] xavc_4k_profile_settings

Required when you set (Profile) under
(VideoDescription)>(CodecSettings)>(XavcSettings) to the value
XAVC\_4K.
@return [Types::Xavc4kProfileSettings]

@!attribute [rw] xavc_hd_intra_cbg_profile_settings

Required when you set (Profile) under
(VideoDescription)>(CodecSettings)>(XavcSettings) to the value
XAVC\_HD\_INTRA\_CBG.
@return [Types::XavcHdIntraCbgProfileSettings]

@!attribute [rw] xavc_hd_profile_settings

Required when you set (Profile) under
(VideoDescription)>(CodecSettings)>(XavcSettings) to the value
XAVC\_HD.
@return [Types::XavcHdProfileSettings]

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

Constants

SENSITIVE