Struct aws_sdk_mediaconvert::types::builders::Av1SettingsBuilder
source · #[non_exhaustive]pub struct Av1SettingsBuilder { /* private fields */ }
Expand description
A builder for Av1Settings
.
Implementations§
source§impl Av1SettingsBuilder
impl Av1SettingsBuilder
sourcepub fn adaptive_quantization(self, input: Av1AdaptiveQuantization) -> Self
pub fn adaptive_quantization(self, input: Av1AdaptiveQuantization) -> Self
Specify the strength of any adaptive quantization filters that you enable. The value that you choose here applies to Spatial adaptive quantization.
sourcepub fn set_adaptive_quantization(
self,
input: Option<Av1AdaptiveQuantization>
) -> Self
pub fn set_adaptive_quantization( self, input: Option<Av1AdaptiveQuantization> ) -> Self
Specify the strength of any adaptive quantization filters that you enable. The value that you choose here applies to Spatial adaptive quantization.
sourcepub fn get_adaptive_quantization(&self) -> &Option<Av1AdaptiveQuantization>
pub fn get_adaptive_quantization(&self) -> &Option<Av1AdaptiveQuantization>
Specify the strength of any adaptive quantization filters that you enable. The value that you choose here applies to Spatial adaptive quantization.
sourcepub fn bit_depth(self, input: Av1BitDepth) -> Self
pub fn bit_depth(self, input: Av1BitDepth) -> Self
Specify the Bit depth. You can choose 8-bit or 10-bit.
sourcepub fn set_bit_depth(self, input: Option<Av1BitDepth>) -> Self
pub fn set_bit_depth(self, input: Option<Av1BitDepth>) -> Self
Specify the Bit depth. You can choose 8-bit or 10-bit.
sourcepub fn get_bit_depth(&self) -> &Option<Av1BitDepth>
pub fn get_bit_depth(&self) -> &Option<Av1BitDepth>
Specify the Bit depth. You can choose 8-bit or 10-bit.
sourcepub fn film_grain_synthesis(self, input: Av1FilmGrainSynthesis) -> Self
pub fn film_grain_synthesis(self, input: Av1FilmGrainSynthesis) -> Self
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.
sourcepub fn set_film_grain_synthesis(
self,
input: Option<Av1FilmGrainSynthesis>
) -> Self
pub fn set_film_grain_synthesis( self, input: Option<Av1FilmGrainSynthesis> ) -> Self
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.
sourcepub fn get_film_grain_synthesis(&self) -> &Option<Av1FilmGrainSynthesis>
pub fn get_film_grain_synthesis(&self) -> &Option<Av1FilmGrainSynthesis>
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.
sourcepub fn framerate_control(self, input: Av1FramerateControl) -> Self
pub fn framerate_control(self, input: Av1FramerateControl) -> Self
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.
sourcepub fn set_framerate_control(self, input: Option<Av1FramerateControl>) -> Self
pub fn set_framerate_control(self, input: Option<Av1FramerateControl>) -> Self
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.
sourcepub fn get_framerate_control(&self) -> &Option<Av1FramerateControl>
pub fn get_framerate_control(&self) -> &Option<Av1FramerateControl>
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.
sourcepub fn framerate_conversion_algorithm(
self,
input: Av1FramerateConversionAlgorithm
) -> Self
pub fn framerate_conversion_algorithm( self, input: Av1FramerateConversionAlgorithm ) -> Self
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.
sourcepub fn set_framerate_conversion_algorithm(
self,
input: Option<Av1FramerateConversionAlgorithm>
) -> Self
pub fn set_framerate_conversion_algorithm( self, input: Option<Av1FramerateConversionAlgorithm> ) -> Self
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.
sourcepub fn get_framerate_conversion_algorithm(
&self
) -> &Option<Av1FramerateConversionAlgorithm>
pub fn get_framerate_conversion_algorithm( &self ) -> &Option<Av1FramerateConversionAlgorithm>
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.
sourcepub fn framerate_denominator(self, input: i32) -> Self
pub fn framerate_denominator(self, input: i32) -> Self
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.
sourcepub fn set_framerate_denominator(self, input: Option<i32>) -> Self
pub fn set_framerate_denominator(self, input: Option<i32>) -> Self
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.
sourcepub fn get_framerate_denominator(&self) -> &Option<i32>
pub fn get_framerate_denominator(&self) -> &Option<i32>
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.
sourcepub fn framerate_numerator(self, input: i32) -> Self
pub fn framerate_numerator(self, input: i32) -> Self
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.
sourcepub fn set_framerate_numerator(self, input: Option<i32>) -> Self
pub fn set_framerate_numerator(self, input: Option<i32>) -> Self
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.
sourcepub fn get_framerate_numerator(&self) -> &Option<i32>
pub fn get_framerate_numerator(&self) -> &Option<i32>
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.
sourcepub fn gop_size(self, input: f64) -> Self
pub fn gop_size(self, input: f64) -> Self
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.
sourcepub fn set_gop_size(self, input: Option<f64>) -> Self
pub fn set_gop_size(self, input: Option<f64>) -> Self
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.
sourcepub fn get_gop_size(&self) -> &Option<f64>
pub fn get_gop_size(&self) -> &Option<f64>
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.
sourcepub fn max_bitrate(self, input: i32) -> Self
pub fn max_bitrate(self, input: i32) -> Self
Maximum bitrate in bits/second. For example, enter five megabits per second as 5000000. Required when Rate control mode is QVBR.
sourcepub fn set_max_bitrate(self, input: Option<i32>) -> Self
pub fn set_max_bitrate(self, input: Option<i32>) -> Self
Maximum bitrate in bits/second. For example, enter five megabits per second as 5000000. Required when Rate control mode is QVBR.
sourcepub fn get_max_bitrate(&self) -> &Option<i32>
pub fn get_max_bitrate(&self) -> &Option<i32>
Maximum bitrate in bits/second. For example, enter five megabits per second as 5000000. Required when Rate control mode is QVBR.
sourcepub fn number_b_frames_between_reference_frames(self, input: i32) -> Self
pub fn number_b_frames_between_reference_frames(self, input: i32) -> Self
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.
sourcepub fn set_number_b_frames_between_reference_frames(
self,
input: Option<i32>
) -> Self
pub fn set_number_b_frames_between_reference_frames( self, input: Option<i32> ) -> Self
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.
sourcepub fn get_number_b_frames_between_reference_frames(&self) -> &Option<i32>
pub fn get_number_b_frames_between_reference_frames(&self) -> &Option<i32>
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.
sourcepub fn qvbr_settings(self, input: Av1QvbrSettings) -> Self
pub fn qvbr_settings(self, input: Av1QvbrSettings) -> Self
Settings for quality-defined variable bitrate encoding with the H.265 codec. Use these settings only when you set QVBR for Rate control mode.
sourcepub fn set_qvbr_settings(self, input: Option<Av1QvbrSettings>) -> Self
pub fn set_qvbr_settings(self, input: Option<Av1QvbrSettings>) -> Self
Settings for quality-defined variable bitrate encoding with the H.265 codec. Use these settings only when you set QVBR for Rate control mode.
sourcepub fn get_qvbr_settings(&self) -> &Option<Av1QvbrSettings>
pub fn get_qvbr_settings(&self) -> &Option<Av1QvbrSettings>
Settings for quality-defined variable bitrate encoding with the H.265 codec. Use these settings only when you set QVBR for Rate control mode.
sourcepub fn rate_control_mode(self, input: Av1RateControlMode) -> Self
pub fn rate_control_mode(self, input: Av1RateControlMode) -> Self
‘With AV1 outputs, for rate control mode, MediaConvert supports only quality-defined variable bitrate (QVBR). You can’‘t use CBR or VBR.’
sourcepub fn set_rate_control_mode(self, input: Option<Av1RateControlMode>) -> Self
pub fn set_rate_control_mode(self, input: Option<Av1RateControlMode>) -> Self
‘With AV1 outputs, for rate control mode, MediaConvert supports only quality-defined variable bitrate (QVBR). You can’‘t use CBR or VBR.’
sourcepub fn get_rate_control_mode(&self) -> &Option<Av1RateControlMode>
pub fn get_rate_control_mode(&self) -> &Option<Av1RateControlMode>
‘With AV1 outputs, for rate control mode, MediaConvert supports only quality-defined variable bitrate (QVBR). You can’‘t use CBR or VBR.’
sourcepub fn slices(self, input: i32) -> Self
pub fn slices(self, input: i32) -> Self
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.
sourcepub fn set_slices(self, input: Option<i32>) -> Self
pub fn set_slices(self, input: Option<i32>) -> Self
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.
sourcepub fn get_slices(&self) -> &Option<i32>
pub fn get_slices(&self) -> &Option<i32>
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.
sourcepub fn spatial_adaptive_quantization(
self,
input: Av1SpatialAdaptiveQuantization
) -> Self
pub fn spatial_adaptive_quantization( self, input: Av1SpatialAdaptiveQuantization ) -> Self
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.
sourcepub fn set_spatial_adaptive_quantization(
self,
input: Option<Av1SpatialAdaptiveQuantization>
) -> Self
pub fn set_spatial_adaptive_quantization( self, input: Option<Av1SpatialAdaptiveQuantization> ) -> Self
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.
sourcepub fn get_spatial_adaptive_quantization(
&self
) -> &Option<Av1SpatialAdaptiveQuantization>
pub fn get_spatial_adaptive_quantization( &self ) -> &Option<Av1SpatialAdaptiveQuantization>
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.
sourcepub fn build(self) -> Av1Settings
pub fn build(self) -> Av1Settings
Consumes the builder and constructs a Av1Settings
.
Trait Implementations§
source§impl Clone for Av1SettingsBuilder
impl Clone for Av1SettingsBuilder
source§fn clone(&self) -> Av1SettingsBuilder
fn clone(&self) -> Av1SettingsBuilder
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for Av1SettingsBuilder
impl Debug for Av1SettingsBuilder
source§impl Default for Av1SettingsBuilder
impl Default for Av1SettingsBuilder
source§fn default() -> Av1SettingsBuilder
fn default() -> Av1SettingsBuilder
source§impl PartialEq for Av1SettingsBuilder
impl PartialEq for Av1SettingsBuilder
source§fn eq(&self, other: &Av1SettingsBuilder) -> bool
fn eq(&self, other: &Av1SettingsBuilder) -> bool
self
and other
values to be equal, and is used
by ==
.impl StructuralPartialEq for Av1SettingsBuilder
Auto Trait Implementations§
impl Freeze for Av1SettingsBuilder
impl RefUnwindSafe for Av1SettingsBuilder
impl Send for Av1SettingsBuilder
impl Sync for Av1SettingsBuilder
impl Unpin for Av1SettingsBuilder
impl UnwindSafe for Av1SettingsBuilder
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more