class Aws::MediaConvert::Types::VideoCodecSettings

Video codec settings, (CodecSettings) under (VideoDescription), contains the group of settings related to video encoding. The settings in this group vary depending on the value that you choose for Video codec (Codec). For each codec enum that you choose, define the corresponding settings object. The following lists the codec enum, settings object pairs. * AV1, Av1Settings * AVC_INTRA, AvcIntraSettings * FRAME_CAPTURE, FrameCaptureSettings * H_264, H264Settings * H_265, H265Settings * MPEG2, Mpeg2Settings * PRORES, ProresSettings * VC3, Vc3Settings * VP8, Vp8Settings * VP9, Vp9Settings * XAVC, XavcSettings

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

data as a hash:

    {
      av_1_settings: {
        adaptive_quantization: "OFF", # accepts OFF, LOW, MEDIUM, HIGH, HIGHER, MAX
        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,
        gop_size: 1.0,
        max_bitrate: 1,
        number_b_frames_between_reference_frames: 1,
        qvbr_settings: {
          qvbr_quality_level: 1,
          qvbr_quality_level_fine_tune: 1.0,
        },
        rate_control_mode: "QVBR", # accepts QVBR
        slices: 1,
        spatial_adaptive_quantization: "DISABLED", # accepts DISABLED, ENABLED
      },
      avc_intra_settings: {
        avc_intra_class: "CLASS_50", # accepts CLASS_50, CLASS_100, CLASS_200, CLASS_4K_2K
        avc_intra_uhd_settings: {
          quality_tuning_level: "SINGLE_PASS", # accepts SINGLE_PASS, MULTI_PASS
        },
        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,
        interlace_mode: "PROGRESSIVE", # accepts PROGRESSIVE, TOP_FIELD, BOTTOM_FIELD, FOLLOW_TOP_FIELD, FOLLOW_BOTTOM_FIELD
        scan_type_conversion_mode: "INTERLACED", # accepts INTERLACED, INTERLACED_OPTIMIZE
        slow_pal: "DISABLED", # accepts DISABLED, ENABLED
        telecine: "NONE", # accepts NONE, HARD
      },
      codec: "AV1", # accepts AV1, AVC_INTRA, FRAME_CAPTURE, H_264, H_265, MPEG2, PRORES, VC3, VP8, VP9, XAVC
      frame_capture_settings: {
        framerate_denominator: 1,
        framerate_numerator: 1,
        max_captures: 1,
        quality: 1,
      },
      h264_settings: {
        adaptive_quantization: "OFF", # accepts OFF, AUTO, LOW, MEDIUM, HIGH, HIGHER, MAX
        bitrate: 1,
        codec_level: "AUTO", # accepts AUTO, LEVEL_1, LEVEL_1_1, LEVEL_1_2, LEVEL_1_3, LEVEL_2, LEVEL_2_1, LEVEL_2_2, LEVEL_3, LEVEL_3_1, LEVEL_3_2, LEVEL_4, LEVEL_4_1, LEVEL_4_2, LEVEL_5, LEVEL_5_1, LEVEL_5_2
        codec_profile: "BASELINE", # accepts BASELINE, HIGH, HIGH_10BIT, HIGH_422, HIGH_422_10BIT, MAIN
        dynamic_sub_gop: "ADAPTIVE", # accepts ADAPTIVE, STATIC
        entropy_encoding: "CABAC", # accepts CABAC, CAVLC
        field_encoding: "PAFF", # accepts PAFF, FORCE_FIELD, MBAFF
        flicker_adaptive_quantization: "DISABLED", # accepts DISABLED, ENABLED
        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,
        gop_b_reference: "DISABLED", # accepts DISABLED, ENABLED
        gop_closed_cadence: 1,
        gop_size: 1.0,
        gop_size_units: "FRAMES", # accepts FRAMES, SECONDS
        hrd_buffer_initial_fill_percentage: 1,
        hrd_buffer_size: 1,
        interlace_mode: "PROGRESSIVE", # accepts PROGRESSIVE, TOP_FIELD, BOTTOM_FIELD, FOLLOW_TOP_FIELD, FOLLOW_BOTTOM_FIELD
        max_bitrate: 1,
        min_i_interval: 1,
        number_b_frames_between_reference_frames: 1,
        number_reference_frames: 1,
        par_control: "INITIALIZE_FROM_SOURCE", # accepts INITIALIZE_FROM_SOURCE, SPECIFIED
        par_denominator: 1,
        par_numerator: 1,
        quality_tuning_level: "SINGLE_PASS", # accepts SINGLE_PASS, SINGLE_PASS_HQ, MULTI_PASS_HQ
        qvbr_settings: {
          max_average_bitrate: 1,
          qvbr_quality_level: 1,
          qvbr_quality_level_fine_tune: 1.0,
        },
        rate_control_mode: "VBR", # accepts VBR, CBR, QVBR
        repeat_pps: "DISABLED", # accepts DISABLED, ENABLED
        scan_type_conversion_mode: "INTERLACED", # accepts INTERLACED, INTERLACED_OPTIMIZE
        scene_change_detect: "DISABLED", # accepts DISABLED, ENABLED, TRANSITION_DETECTION
        slices: 1,
        slow_pal: "DISABLED", # accepts DISABLED, ENABLED
        softness: 1,
        spatial_adaptive_quantization: "DISABLED", # accepts DISABLED, ENABLED
        syntax: "DEFAULT", # accepts DEFAULT, RP2027
        telecine: "NONE", # accepts NONE, SOFT, HARD
        temporal_adaptive_quantization: "DISABLED", # accepts DISABLED, ENABLED
        unregistered_sei_timecode: "DISABLED", # accepts DISABLED, ENABLED
      },
      h265_settings: {
        adaptive_quantization: "OFF", # accepts OFF, LOW, MEDIUM, HIGH, HIGHER, MAX
        alternate_transfer_function_sei: "DISABLED", # accepts DISABLED, ENABLED
        bitrate: 1,
        codec_level: "AUTO", # accepts AUTO, LEVEL_1, LEVEL_2, LEVEL_2_1, LEVEL_3, LEVEL_3_1, LEVEL_4, LEVEL_4_1, LEVEL_5, LEVEL_5_1, LEVEL_5_2, LEVEL_6, LEVEL_6_1, LEVEL_6_2
        codec_profile: "MAIN_MAIN", # accepts MAIN_MAIN, MAIN_HIGH, MAIN10_MAIN, MAIN10_HIGH, MAIN_422_8BIT_MAIN, MAIN_422_8BIT_HIGH, MAIN_422_10BIT_MAIN, MAIN_422_10BIT_HIGH
        dynamic_sub_gop: "ADAPTIVE", # accepts ADAPTIVE, STATIC
        flicker_adaptive_quantization: "DISABLED", # accepts DISABLED, ENABLED
        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,
        gop_b_reference: "DISABLED", # accepts DISABLED, ENABLED
        gop_closed_cadence: 1,
        gop_size: 1.0,
        gop_size_units: "FRAMES", # accepts FRAMES, SECONDS
        hrd_buffer_initial_fill_percentage: 1,
        hrd_buffer_size: 1,
        interlace_mode: "PROGRESSIVE", # accepts PROGRESSIVE, TOP_FIELD, BOTTOM_FIELD, FOLLOW_TOP_FIELD, FOLLOW_BOTTOM_FIELD
        max_bitrate: 1,
        min_i_interval: 1,
        number_b_frames_between_reference_frames: 1,
        number_reference_frames: 1,
        par_control: "INITIALIZE_FROM_SOURCE", # accepts INITIALIZE_FROM_SOURCE, SPECIFIED
        par_denominator: 1,
        par_numerator: 1,
        quality_tuning_level: "SINGLE_PASS", # accepts SINGLE_PASS, SINGLE_PASS_HQ, MULTI_PASS_HQ
        qvbr_settings: {
          max_average_bitrate: 1,
          qvbr_quality_level: 1,
          qvbr_quality_level_fine_tune: 1.0,
        },
        rate_control_mode: "VBR", # accepts VBR, CBR, QVBR
        sample_adaptive_offset_filter_mode: "DEFAULT", # accepts DEFAULT, ADAPTIVE, OFF
        scan_type_conversion_mode: "INTERLACED", # accepts INTERLACED, INTERLACED_OPTIMIZE
        scene_change_detect: "DISABLED", # accepts DISABLED, ENABLED, TRANSITION_DETECTION
        slices: 1,
        slow_pal: "DISABLED", # accepts DISABLED, ENABLED
        spatial_adaptive_quantization: "DISABLED", # accepts DISABLED, ENABLED
        telecine: "NONE", # accepts NONE, SOFT, HARD
        temporal_adaptive_quantization: "DISABLED", # accepts DISABLED, ENABLED
        temporal_ids: "DISABLED", # accepts DISABLED, ENABLED
        tiles: "DISABLED", # accepts DISABLED, ENABLED
        unregistered_sei_timecode: "DISABLED", # accepts DISABLED, ENABLED
        write_mp_4_packaging_type: "HVC1", # accepts HVC1, HEV1
      },
      mpeg_2_settings: {
        adaptive_quantization: "OFF", # accepts OFF, LOW, MEDIUM, HIGH
        bitrate: 1,
        codec_level: "AUTO", # accepts AUTO, LOW, MAIN, HIGH1440, HIGH
        codec_profile: "MAIN", # accepts MAIN, PROFILE_422
        dynamic_sub_gop: "ADAPTIVE", # accepts ADAPTIVE, STATIC
        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,
        gop_closed_cadence: 1,
        gop_size: 1.0,
        gop_size_units: "FRAMES", # accepts FRAMES, SECONDS
        hrd_buffer_initial_fill_percentage: 1,
        hrd_buffer_size: 1,
        interlace_mode: "PROGRESSIVE", # accepts PROGRESSIVE, TOP_FIELD, BOTTOM_FIELD, FOLLOW_TOP_FIELD, FOLLOW_BOTTOM_FIELD
        intra_dc_precision: "AUTO", # accepts AUTO, INTRA_DC_PRECISION_8, INTRA_DC_PRECISION_9, INTRA_DC_PRECISION_10, INTRA_DC_PRECISION_11
        max_bitrate: 1,
        min_i_interval: 1,
        number_b_frames_between_reference_frames: 1,
        par_control: "INITIALIZE_FROM_SOURCE", # accepts INITIALIZE_FROM_SOURCE, SPECIFIED
        par_denominator: 1,
        par_numerator: 1,
        quality_tuning_level: "SINGLE_PASS", # accepts SINGLE_PASS, MULTI_PASS
        rate_control_mode: "VBR", # accepts VBR, CBR
        scan_type_conversion_mode: "INTERLACED", # accepts INTERLACED, INTERLACED_OPTIMIZE
        scene_change_detect: "DISABLED", # accepts DISABLED, ENABLED
        slow_pal: "DISABLED", # accepts DISABLED, ENABLED
        softness: 1,
        spatial_adaptive_quantization: "DISABLED", # accepts DISABLED, ENABLED
        syntax: "DEFAULT", # accepts DEFAULT, D_10
        telecine: "NONE", # accepts NONE, SOFT, HARD
        temporal_adaptive_quantization: "DISABLED", # accepts DISABLED, ENABLED
      },
      prores_settings: {
        chroma_sampling: "PRESERVE_444_SAMPLING", # accepts PRESERVE_444_SAMPLING, SUBSAMPLE_TO_422
        codec_profile: "APPLE_PRORES_422", # accepts APPLE_PRORES_422, APPLE_PRORES_422_HQ, APPLE_PRORES_422_LT, APPLE_PRORES_422_PROXY, APPLE_PRORES_4444, APPLE_PRORES_4444_XQ
        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,
        interlace_mode: "PROGRESSIVE", # accepts PROGRESSIVE, TOP_FIELD, BOTTOM_FIELD, FOLLOW_TOP_FIELD, FOLLOW_BOTTOM_FIELD
        par_control: "INITIALIZE_FROM_SOURCE", # accepts INITIALIZE_FROM_SOURCE, SPECIFIED
        par_denominator: 1,
        par_numerator: 1,
        scan_type_conversion_mode: "INTERLACED", # accepts INTERLACED, INTERLACED_OPTIMIZE
        slow_pal: "DISABLED", # accepts DISABLED, ENABLED
        telecine: "NONE", # accepts NONE, HARD
      },
      vc_3_settings: {
        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,
        interlace_mode: "INTERLACED", # accepts INTERLACED, PROGRESSIVE
        scan_type_conversion_mode: "INTERLACED", # accepts INTERLACED, INTERLACED_OPTIMIZE
        slow_pal: "DISABLED", # accepts DISABLED, ENABLED
        telecine: "NONE", # accepts NONE, HARD
        vc_3_class: "CLASS_145_8BIT", # accepts CLASS_145_8BIT, CLASS_220_8BIT, CLASS_220_10BIT
      },
      vp_8_settings: {
        bitrate: 1,
        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,
        gop_size: 1.0,
        hrd_buffer_size: 1,
        max_bitrate: 1,
        par_control: "INITIALIZE_FROM_SOURCE", # accepts INITIALIZE_FROM_SOURCE, SPECIFIED
        par_denominator: 1,
        par_numerator: 1,
        quality_tuning_level: "MULTI_PASS", # accepts MULTI_PASS, MULTI_PASS_HQ
        rate_control_mode: "VBR", # accepts VBR
      },
      vp_9_settings: {
        bitrate: 1,
        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,
        gop_size: 1.0,
        hrd_buffer_size: 1,
        max_bitrate: 1,
        par_control: "INITIALIZE_FROM_SOURCE", # accepts INITIALIZE_FROM_SOURCE, SPECIFIED
        par_denominator: 1,
        par_numerator: 1,
        quality_tuning_level: "MULTI_PASS", # accepts MULTI_PASS, MULTI_PASS_HQ
        rate_control_mode: "VBR", # accepts VBR
      },
      xavc_settings: {
        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] av_1_settings

Required when you set Codec, under VideoDescription>CodecSettings to
the value AV1.
@return [Types::Av1Settings]

@!attribute [rw] avc_intra_settings

Required when you choose AVC-Intra for your output video codec. For
more information about the AVC-Intra settings, see the relevant
specification. For detailed information about SD and HD in
AVC-Intra, see https://ieeexplore.ieee.org/document/7290936. For
information about 4K/2K in AVC-Intra, see
https://pro-av.panasonic.net/en/avc-ultra/AVC-ULTRAoverview.pdf.
@return [Types::AvcIntraSettings]

@!attribute [rw] codec

Specifies the video codec. This must be equal to one of the enum
values defined by the object VideoCodec.
@return [String]

@!attribute [rw] frame_capture_settings

Required when you set (Codec) under
(VideoDescription)>(CodecSettings) to the value FRAME\_CAPTURE.
@return [Types::FrameCaptureSettings]

@!attribute [rw] h264_settings

Required when you set (Codec) under
(VideoDescription)>(CodecSettings) to the value H\_264.
@return [Types::H264Settings]

@!attribute [rw] h265_settings

Settings for H265 codec
@return [Types::H265Settings]

@!attribute [rw] mpeg_2_settings

Required when you set (Codec) under
(VideoDescription)>(CodecSettings) to the value MPEG2.
@return [Types::Mpeg2Settings]

@!attribute [rw] prores_settings

Required when you set (Codec) under
(VideoDescription)>(CodecSettings) to the value PRORES.
@return [Types::ProresSettings]

@!attribute [rw] vc_3_settings

Required when you set (Codec) under
(VideoDescription)>(CodecSettings) to the value VC3
@return [Types::Vc3Settings]

@!attribute [rw] vp_8_settings

Required when you set (Codec) under
(VideoDescription)>(CodecSettings) to the value VP8.
@return [Types::Vp8Settings]

@!attribute [rw] vp_9_settings

Required when you set (Codec) under
(VideoDescription)>(CodecSettings) to the value VP9.
@return [Types::Vp9Settings]

@!attribute [rw] xavc_settings

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

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

Constants

SENSITIVE