Struct aws_sdk_elastictranscoder::model::video_parameters::Builder
source · pub struct Builder { /* private fields */ }
Expand description
A builder for VideoParameters
.
Implementations§
source§impl Builder
impl Builder
sourcepub fn codec(self, input: impl Into<String>) -> Self
pub fn codec(self, input: impl Into<String>) -> Self
The video codec for the output file. Valid values include gif
, H.264
, mpeg2
, vp8
, and vp9
. You can only specify vp8
and vp9
when the container type is webm
, gif
when the container type is gif
, and mpeg2
when the container type is mpg
.
sourcepub fn set_codec(self, input: Option<String>) -> Self
pub fn set_codec(self, input: Option<String>) -> Self
The video codec for the output file. Valid values include gif
, H.264
, mpeg2
, vp8
, and vp9
. You can only specify vp8
and vp9
when the container type is webm
, gif
when the container type is gif
, and mpeg2
when the container type is mpg
.
Examples found in repository?
2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745
pub(crate) fn deser_structure_crate_model_video_parameters<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<
Option<crate::model::VideoParameters>,
aws_smithy_json::deserialize::error::DeserializeError,
>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::video_parameters::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"Codec" => {
builder = builder.set_codec(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"CodecOptions" => {
builder = builder.set_codec_options(
crate::json_deser::deser_map_com_amazonaws_elastictranscoder_codec_options(tokens)?
);
}
"KeyframesMaxDist" => {
builder = builder.set_keyframes_max_dist(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FixedGOP" => {
builder = builder.set_fixed_gop(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"BitRate" => {
builder = builder.set_bit_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FrameRate" => {
builder = builder.set_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxFrameRate" => {
builder = builder.set_max_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Resolution" => {
builder = builder.set_resolution(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"AspectRatio" => {
builder = builder.set_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxWidth" => {
builder = builder.set_max_width(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxHeight" => {
builder = builder.set_max_height(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"DisplayAspectRatio" => {
builder = builder.set_display_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"SizingPolicy" => {
builder = builder.set_sizing_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"PaddingPolicy" => {
builder = builder.set_padding_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Watermarks" => {
builder = builder.set_watermarks(
crate::json_deser::deser_list_com_amazonaws_elastictranscoder_preset_watermarks(tokens)?
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}
sourcepub fn codec_options(self, k: impl Into<String>, v: impl Into<String>) -> Self
pub fn codec_options(self, k: impl Into<String>, v: impl Into<String>) -> Self
Adds a key-value pair to codec_options
.
To override the contents of this collection use set_codec_options
.
Profile (H.264/VP8/VP9 Only)
The H.264 profile that you want to use for the output file. Elastic Transcoder supports the following profiles:
-
baseline
: The profile most commonly used for videoconferencing and for mobile applications. -
main
: The profile used for standard-definition digital TV broadcasts. -
high
: The profile used for high-definition digital TV broadcasts and for Blu-ray discs.
Level (H.264 Only)
The H.264 level that you want to use for the output file. Elastic Transcoder supports the following levels:
1
, 1b
, 1.1
, 1.2
, 1.3
, 2
, 2.1
, 2.2
, 3
, 3.1
, 3.2
, 4
, 4.1
MaxReferenceFrames (H.264 Only)
Applicable only when the value of Video:Codec is H.264. The maximum number of previously decoded frames to use as a reference for decoding future frames. Valid values are integers 0 through 16, but we recommend that you not use a value greater than the following:
Min(Floor(Maximum decoded picture buffer in macroblocks * 256 / (Width in pixels * Height in pixels)), 16)
where Width in pixels and Height in pixels represent either MaxWidth and MaxHeight, or Resolution. Maximum decoded picture buffer in macroblocks depends on the value of the Level
object. See the list below. (A macroblock is a block of pixels measuring 16x16.)
-
1 - 396
-
1b - 396
-
1.1 - 900
-
1.2 - 2376
-
1.3 - 2376
-
2 - 2376
-
2.1 - 4752
-
2.2 - 8100
-
3 - 8100
-
3.1 - 18000
-
3.2 - 20480
-
4 - 32768
-
4.1 - 32768
MaxBitRate (Optional, H.264/MPEG2/VP8/VP9 only)
The maximum number of bits per second in a video buffer; the size of the buffer is specified by BufferSize
. Specify a value between 16 and 62,500. You can reduce the bandwidth required to stream a video by reducing the maximum bit rate, but this also reduces the quality of the video.
BufferSize (Optional, H.264/MPEG2/VP8/VP9 only)
The maximum number of bits in any x seconds of the output video. This window is commonly 10 seconds, the standard segment duration when you're using FMP4 or MPEG-TS for the container type of the output video. Specify an integer greater than 0. If you specify MaxBitRate
and omit BufferSize
, Elastic Transcoder sets BufferSize
to 10 times the value of MaxBitRate
.
InterlacedMode (Optional, H.264/MPEG2 Only)
The interlace mode for the output video.
Interlaced video is used to double the perceived frame rate for a video by interlacing two fields (one field on every other line, the other field on the other lines) so that the human eye registers multiple pictures per frame. Interlacing reduces the bandwidth required for transmitting a video, but can result in blurred images and flickering.
Valid values include Progressive
(no interlacing, top to bottom), TopFirst
(top field first), BottomFirst
(bottom field first), and Auto
.
If InterlaceMode
is not specified, Elastic Transcoder uses Progressive
for the output. If Auto
is specified, Elastic Transcoder interlaces the output.
ColorSpaceConversionMode (Optional, H.264/MPEG2 Only)
The color space conversion Elastic Transcoder applies to the output video. Color spaces are the algorithms used by the computer to store information about how to render color. Bt.601
is the standard for standard definition video, while Bt.709
is the standard for high definition video.
Valid values include None
, Bt709toBt601
, Bt601toBt709
, and Auto
.
If you chose Auto
for ColorSpaceConversionMode
and your output is interlaced, your frame rate is one of 23.97
, 24
, 25
, 29.97
, 50
, or 60
, your SegmentDuration
is null, and you are using one of the resolution changes from the list below, Elastic Transcoder applies the following color space conversions:
-
Standard to HD, 720x480 to 1920x1080 - Elastic Transcoder applies
Bt601ToBt709
-
Standard to HD, 720x576 to 1920x1080 - Elastic Transcoder applies
Bt601ToBt709
-
HD to Standard, 1920x1080 to 720x480 - Elastic Transcoder applies
Bt709ToBt601
-
HD to Standard, 1920x1080 to 720x576 - Elastic Transcoder applies
Bt709ToBt601
Elastic Transcoder may change the behavior of the ColorspaceConversionMode
Auto
mode in the future. All outputs in a playlist must use the same ColorSpaceConversionMode
.
If you do not specify a ColorSpaceConversionMode
, Elastic Transcoder does not change the color space of a file. If you are unsure what ColorSpaceConversionMode
was applied to your output file, you can check the AppliedColorSpaceConversion
parameter included in your job response. If your job does not have an AppliedColorSpaceConversion
in its response, no ColorSpaceConversionMode
was applied.
ChromaSubsampling
The sampling pattern for the chroma (color) channels of the output video. Valid values include yuv420p
and yuv422p
.
yuv420p
samples the chroma information of every other horizontal and every other vertical line, yuv422p
samples the color information of every horizontal line and every other vertical line.
LoopCount (Gif Only)
The number of times you want the output gif to loop. Valid values include Infinite
and integers between 0
and 100
, inclusive.
sourcepub fn set_codec_options(self, input: Option<HashMap<String, String>>) -> Self
pub fn set_codec_options(self, input: Option<HashMap<String, String>>) -> Self
Profile (H.264/VP8/VP9 Only)
The H.264 profile that you want to use for the output file. Elastic Transcoder supports the following profiles:
-
baseline
: The profile most commonly used for videoconferencing and for mobile applications. -
main
: The profile used for standard-definition digital TV broadcasts. -
high
: The profile used for high-definition digital TV broadcasts and for Blu-ray discs.
Level (H.264 Only)
The H.264 level that you want to use for the output file. Elastic Transcoder supports the following levels:
1
, 1b
, 1.1
, 1.2
, 1.3
, 2
, 2.1
, 2.2
, 3
, 3.1
, 3.2
, 4
, 4.1
MaxReferenceFrames (H.264 Only)
Applicable only when the value of Video:Codec is H.264. The maximum number of previously decoded frames to use as a reference for decoding future frames. Valid values are integers 0 through 16, but we recommend that you not use a value greater than the following:
Min(Floor(Maximum decoded picture buffer in macroblocks * 256 / (Width in pixels * Height in pixels)), 16)
where Width in pixels and Height in pixels represent either MaxWidth and MaxHeight, or Resolution. Maximum decoded picture buffer in macroblocks depends on the value of the Level
object. See the list below. (A macroblock is a block of pixels measuring 16x16.)
-
1 - 396
-
1b - 396
-
1.1 - 900
-
1.2 - 2376
-
1.3 - 2376
-
2 - 2376
-
2.1 - 4752
-
2.2 - 8100
-
3 - 8100
-
3.1 - 18000
-
3.2 - 20480
-
4 - 32768
-
4.1 - 32768
MaxBitRate (Optional, H.264/MPEG2/VP8/VP9 only)
The maximum number of bits per second in a video buffer; the size of the buffer is specified by BufferSize
. Specify a value between 16 and 62,500. You can reduce the bandwidth required to stream a video by reducing the maximum bit rate, but this also reduces the quality of the video.
BufferSize (Optional, H.264/MPEG2/VP8/VP9 only)
The maximum number of bits in any x seconds of the output video. This window is commonly 10 seconds, the standard segment duration when you're using FMP4 or MPEG-TS for the container type of the output video. Specify an integer greater than 0. If you specify MaxBitRate
and omit BufferSize
, Elastic Transcoder sets BufferSize
to 10 times the value of MaxBitRate
.
InterlacedMode (Optional, H.264/MPEG2 Only)
The interlace mode for the output video.
Interlaced video is used to double the perceived frame rate for a video by interlacing two fields (one field on every other line, the other field on the other lines) so that the human eye registers multiple pictures per frame. Interlacing reduces the bandwidth required for transmitting a video, but can result in blurred images and flickering.
Valid values include Progressive
(no interlacing, top to bottom), TopFirst
(top field first), BottomFirst
(bottom field first), and Auto
.
If InterlaceMode
is not specified, Elastic Transcoder uses Progressive
for the output. If Auto
is specified, Elastic Transcoder interlaces the output.
ColorSpaceConversionMode (Optional, H.264/MPEG2 Only)
The color space conversion Elastic Transcoder applies to the output video. Color spaces are the algorithms used by the computer to store information about how to render color. Bt.601
is the standard for standard definition video, while Bt.709
is the standard for high definition video.
Valid values include None
, Bt709toBt601
, Bt601toBt709
, and Auto
.
If you chose Auto
for ColorSpaceConversionMode
and your output is interlaced, your frame rate is one of 23.97
, 24
, 25
, 29.97
, 50
, or 60
, your SegmentDuration
is null, and you are using one of the resolution changes from the list below, Elastic Transcoder applies the following color space conversions:
-
Standard to HD, 720x480 to 1920x1080 - Elastic Transcoder applies
Bt601ToBt709
-
Standard to HD, 720x576 to 1920x1080 - Elastic Transcoder applies
Bt601ToBt709
-
HD to Standard, 1920x1080 to 720x480 - Elastic Transcoder applies
Bt709ToBt601
-
HD to Standard, 1920x1080 to 720x576 - Elastic Transcoder applies
Bt709ToBt601
Elastic Transcoder may change the behavior of the ColorspaceConversionMode
Auto
mode in the future. All outputs in a playlist must use the same ColorSpaceConversionMode
.
If you do not specify a ColorSpaceConversionMode
, Elastic Transcoder does not change the color space of a file. If you are unsure what ColorSpaceConversionMode
was applied to your output file, you can check the AppliedColorSpaceConversion
parameter included in your job response. If your job does not have an AppliedColorSpaceConversion
in its response, no ColorSpaceConversionMode
was applied.
ChromaSubsampling
The sampling pattern for the chroma (color) channels of the output video. Valid values include yuv420p
and yuv422p
.
yuv420p
samples the chroma information of every other horizontal and every other vertical line, yuv422p
samples the color information of every horizontal line and every other vertical line.
LoopCount (Gif Only)
The number of times you want the output gif to loop. Valid values include Infinite
and integers between 0
and 100
, inclusive.
Examples found in repository?
2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745
pub(crate) fn deser_structure_crate_model_video_parameters<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<
Option<crate::model::VideoParameters>,
aws_smithy_json::deserialize::error::DeserializeError,
>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::video_parameters::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"Codec" => {
builder = builder.set_codec(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"CodecOptions" => {
builder = builder.set_codec_options(
crate::json_deser::deser_map_com_amazonaws_elastictranscoder_codec_options(tokens)?
);
}
"KeyframesMaxDist" => {
builder = builder.set_keyframes_max_dist(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FixedGOP" => {
builder = builder.set_fixed_gop(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"BitRate" => {
builder = builder.set_bit_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FrameRate" => {
builder = builder.set_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxFrameRate" => {
builder = builder.set_max_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Resolution" => {
builder = builder.set_resolution(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"AspectRatio" => {
builder = builder.set_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxWidth" => {
builder = builder.set_max_width(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxHeight" => {
builder = builder.set_max_height(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"DisplayAspectRatio" => {
builder = builder.set_display_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"SizingPolicy" => {
builder = builder.set_sizing_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"PaddingPolicy" => {
builder = builder.set_padding_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Watermarks" => {
builder = builder.set_watermarks(
crate::json_deser::deser_list_com_amazonaws_elastictranscoder_preset_watermarks(tokens)?
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}
sourcepub fn keyframes_max_dist(self, input: impl Into<String>) -> Self
pub fn keyframes_max_dist(self, input: impl Into<String>) -> Self
Applicable only when the value of Video:Codec is one of H.264
, MPEG2
, or VP8
.
The maximum number of frames between key frames. Key frames are fully encoded frames; the frames between key frames are encoded based, in part, on the content of the key frames. The value is an integer formatted as a string; valid values are between 1 (every frame is a key frame) and 100000, inclusive. A higher value results in higher compression but may also discernibly decrease video quality.
For Smooth
outputs, the FrameRate
must have a constant ratio to the KeyframesMaxDist
. This allows Smooth
playlists to switch between different quality levels while the file is being played.
For example, an input file can have a FrameRate
of 30 with a KeyframesMaxDist
of 90. The output file then needs to have a ratio of 1:3. Valid outputs would have FrameRate
of 30, 25, and 10, and KeyframesMaxDist
of 90, 75, and 30, respectively.
Alternately, this can be achieved by setting FrameRate
to auto and having the same values for MaxFrameRate
and KeyframesMaxDist
.
sourcepub fn set_keyframes_max_dist(self, input: Option<String>) -> Self
pub fn set_keyframes_max_dist(self, input: Option<String>) -> Self
Applicable only when the value of Video:Codec is one of H.264
, MPEG2
, or VP8
.
The maximum number of frames between key frames. Key frames are fully encoded frames; the frames between key frames are encoded based, in part, on the content of the key frames. The value is an integer formatted as a string; valid values are between 1 (every frame is a key frame) and 100000, inclusive. A higher value results in higher compression but may also discernibly decrease video quality.
For Smooth
outputs, the FrameRate
must have a constant ratio to the KeyframesMaxDist
. This allows Smooth
playlists to switch between different quality levels while the file is being played.
For example, an input file can have a FrameRate
of 30 with a KeyframesMaxDist
of 90. The output file then needs to have a ratio of 1:3. Valid outputs would have FrameRate
of 30, 25, and 10, and KeyframesMaxDist
of 90, 75, and 30, respectively.
Alternately, this can be achieved by setting FrameRate
to auto and having the same values for MaxFrameRate
and KeyframesMaxDist
.
Examples found in repository?
2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745
pub(crate) fn deser_structure_crate_model_video_parameters<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<
Option<crate::model::VideoParameters>,
aws_smithy_json::deserialize::error::DeserializeError,
>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::video_parameters::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"Codec" => {
builder = builder.set_codec(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"CodecOptions" => {
builder = builder.set_codec_options(
crate::json_deser::deser_map_com_amazonaws_elastictranscoder_codec_options(tokens)?
);
}
"KeyframesMaxDist" => {
builder = builder.set_keyframes_max_dist(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FixedGOP" => {
builder = builder.set_fixed_gop(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"BitRate" => {
builder = builder.set_bit_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FrameRate" => {
builder = builder.set_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxFrameRate" => {
builder = builder.set_max_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Resolution" => {
builder = builder.set_resolution(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"AspectRatio" => {
builder = builder.set_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxWidth" => {
builder = builder.set_max_width(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxHeight" => {
builder = builder.set_max_height(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"DisplayAspectRatio" => {
builder = builder.set_display_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"SizingPolicy" => {
builder = builder.set_sizing_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"PaddingPolicy" => {
builder = builder.set_padding_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Watermarks" => {
builder = builder.set_watermarks(
crate::json_deser::deser_list_com_amazonaws_elastictranscoder_preset_watermarks(tokens)?
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}
sourcepub fn fixed_gop(self, input: impl Into<String>) -> Self
pub fn fixed_gop(self, input: impl Into<String>) -> Self
Applicable only when the value of Video:Codec is one of H.264
, MPEG2
, or VP8
.
Whether to use a fixed value for FixedGOP
. Valid values are true
and false
:
-
true
: Elastic Transcoder uses the value ofKeyframesMaxDist
for the distance between key frames (the number of frames in a group of pictures, or GOP). -
false
: The distance between key frames can vary.
FixedGOP
must be set to true
for fmp4
containers.
sourcepub fn set_fixed_gop(self, input: Option<String>) -> Self
pub fn set_fixed_gop(self, input: Option<String>) -> Self
Applicable only when the value of Video:Codec is one of H.264
, MPEG2
, or VP8
.
Whether to use a fixed value for FixedGOP
. Valid values are true
and false
:
-
true
: Elastic Transcoder uses the value ofKeyframesMaxDist
for the distance between key frames (the number of frames in a group of pictures, or GOP). -
false
: The distance between key frames can vary.
FixedGOP
must be set to true
for fmp4
containers.
Examples found in repository?
2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745
pub(crate) fn deser_structure_crate_model_video_parameters<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<
Option<crate::model::VideoParameters>,
aws_smithy_json::deserialize::error::DeserializeError,
>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::video_parameters::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"Codec" => {
builder = builder.set_codec(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"CodecOptions" => {
builder = builder.set_codec_options(
crate::json_deser::deser_map_com_amazonaws_elastictranscoder_codec_options(tokens)?
);
}
"KeyframesMaxDist" => {
builder = builder.set_keyframes_max_dist(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FixedGOP" => {
builder = builder.set_fixed_gop(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"BitRate" => {
builder = builder.set_bit_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FrameRate" => {
builder = builder.set_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxFrameRate" => {
builder = builder.set_max_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Resolution" => {
builder = builder.set_resolution(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"AspectRatio" => {
builder = builder.set_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxWidth" => {
builder = builder.set_max_width(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxHeight" => {
builder = builder.set_max_height(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"DisplayAspectRatio" => {
builder = builder.set_display_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"SizingPolicy" => {
builder = builder.set_sizing_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"PaddingPolicy" => {
builder = builder.set_padding_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Watermarks" => {
builder = builder.set_watermarks(
crate::json_deser::deser_list_com_amazonaws_elastictranscoder_preset_watermarks(tokens)?
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}
sourcepub fn bit_rate(self, input: impl Into<String>) -> Self
pub fn bit_rate(self, input: impl Into<String>) -> Self
The bit rate of the video stream in the output file, in kilobits/second. Valid values depend on the values of Level
and Profile
. If you specify auto
, Elastic Transcoder uses the detected bit rate of the input source. If you specify a value other than auto
, we recommend that you specify a value less than or equal to the maximum H.264-compliant value listed for your level and profile:
Level - Maximum video bit rate in kilobits/second (baseline and main Profile) : maximum video bit rate in kilobits/second (high Profile)
-
1 - 64 : 80
-
1b - 128 : 160
-
1.1 - 192 : 240
-
1.2 - 384 : 480
-
1.3 - 768 : 960
-
2 - 2000 : 2500
-
3 - 10000 : 12500
-
3.1 - 14000 : 17500
-
3.2 - 20000 : 25000
-
4 - 20000 : 25000
-
4.1 - 50000 : 62500
sourcepub fn set_bit_rate(self, input: Option<String>) -> Self
pub fn set_bit_rate(self, input: Option<String>) -> Self
The bit rate of the video stream in the output file, in kilobits/second. Valid values depend on the values of Level
and Profile
. If you specify auto
, Elastic Transcoder uses the detected bit rate of the input source. If you specify a value other than auto
, we recommend that you specify a value less than or equal to the maximum H.264-compliant value listed for your level and profile:
Level - Maximum video bit rate in kilobits/second (baseline and main Profile) : maximum video bit rate in kilobits/second (high Profile)
-
1 - 64 : 80
-
1b - 128 : 160
-
1.1 - 192 : 240
-
1.2 - 384 : 480
-
1.3 - 768 : 960
-
2 - 2000 : 2500
-
3 - 10000 : 12500
-
3.1 - 14000 : 17500
-
3.2 - 20000 : 25000
-
4 - 20000 : 25000
-
4.1 - 50000 : 62500
Examples found in repository?
2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745
pub(crate) fn deser_structure_crate_model_video_parameters<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<
Option<crate::model::VideoParameters>,
aws_smithy_json::deserialize::error::DeserializeError,
>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::video_parameters::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"Codec" => {
builder = builder.set_codec(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"CodecOptions" => {
builder = builder.set_codec_options(
crate::json_deser::deser_map_com_amazonaws_elastictranscoder_codec_options(tokens)?
);
}
"KeyframesMaxDist" => {
builder = builder.set_keyframes_max_dist(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FixedGOP" => {
builder = builder.set_fixed_gop(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"BitRate" => {
builder = builder.set_bit_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FrameRate" => {
builder = builder.set_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxFrameRate" => {
builder = builder.set_max_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Resolution" => {
builder = builder.set_resolution(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"AspectRatio" => {
builder = builder.set_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxWidth" => {
builder = builder.set_max_width(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxHeight" => {
builder = builder.set_max_height(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"DisplayAspectRatio" => {
builder = builder.set_display_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"SizingPolicy" => {
builder = builder.set_sizing_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"PaddingPolicy" => {
builder = builder.set_padding_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Watermarks" => {
builder = builder.set_watermarks(
crate::json_deser::deser_list_com_amazonaws_elastictranscoder_preset_watermarks(tokens)?
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}
sourcepub fn frame_rate(self, input: impl Into<String>) -> Self
pub fn frame_rate(self, input: impl Into<String>) -> Self
The frames per second for the video stream in the output file. Valid values include:
auto
, 10
, 15
, 23.97
, 24
, 25
, 29.97
, 30
, 60
If you specify auto
, Elastic Transcoder uses the detected frame rate of the input source. If you specify a frame rate, we recommend that you perform the following calculation:
Frame rate = maximum recommended decoding speed in luma samples/second / (width in pixels * height in pixels)
where:
-
width in pixels and height in pixels represent the Resolution of the output video.
-
maximum recommended decoding speed in Luma samples/second is less than or equal to the maximum value listed in the following table, based on the value that you specified for Level.
The maximum recommended decoding speed in Luma samples/second for each level is described in the following list (Level - Decoding speed):
-
1 - 380160
-
1b - 380160
-
1.1 - 76800
-
1.2 - 1536000
-
1.3 - 3041280
-
2 - 3041280
-
2.1 - 5068800
-
2.2 - 5184000
-
3 - 10368000
-
3.1 - 27648000
-
3.2 - 55296000
-
4 - 62914560
-
4.1 - 62914560
sourcepub fn set_frame_rate(self, input: Option<String>) -> Self
pub fn set_frame_rate(self, input: Option<String>) -> Self
The frames per second for the video stream in the output file. Valid values include:
auto
, 10
, 15
, 23.97
, 24
, 25
, 29.97
, 30
, 60
If you specify auto
, Elastic Transcoder uses the detected frame rate of the input source. If you specify a frame rate, we recommend that you perform the following calculation:
Frame rate = maximum recommended decoding speed in luma samples/second / (width in pixels * height in pixels)
where:
-
width in pixels and height in pixels represent the Resolution of the output video.
-
maximum recommended decoding speed in Luma samples/second is less than or equal to the maximum value listed in the following table, based on the value that you specified for Level.
The maximum recommended decoding speed in Luma samples/second for each level is described in the following list (Level - Decoding speed):
-
1 - 380160
-
1b - 380160
-
1.1 - 76800
-
1.2 - 1536000
-
1.3 - 3041280
-
2 - 3041280
-
2.1 - 5068800
-
2.2 - 5184000
-
3 - 10368000
-
3.1 - 27648000
-
3.2 - 55296000
-
4 - 62914560
-
4.1 - 62914560
Examples found in repository?
2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745
pub(crate) fn deser_structure_crate_model_video_parameters<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<
Option<crate::model::VideoParameters>,
aws_smithy_json::deserialize::error::DeserializeError,
>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::video_parameters::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"Codec" => {
builder = builder.set_codec(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"CodecOptions" => {
builder = builder.set_codec_options(
crate::json_deser::deser_map_com_amazonaws_elastictranscoder_codec_options(tokens)?
);
}
"KeyframesMaxDist" => {
builder = builder.set_keyframes_max_dist(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FixedGOP" => {
builder = builder.set_fixed_gop(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"BitRate" => {
builder = builder.set_bit_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FrameRate" => {
builder = builder.set_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxFrameRate" => {
builder = builder.set_max_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Resolution" => {
builder = builder.set_resolution(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"AspectRatio" => {
builder = builder.set_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxWidth" => {
builder = builder.set_max_width(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxHeight" => {
builder = builder.set_max_height(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"DisplayAspectRatio" => {
builder = builder.set_display_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"SizingPolicy" => {
builder = builder.set_sizing_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"PaddingPolicy" => {
builder = builder.set_padding_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Watermarks" => {
builder = builder.set_watermarks(
crate::json_deser::deser_list_com_amazonaws_elastictranscoder_preset_watermarks(tokens)?
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}
sourcepub fn max_frame_rate(self, input: impl Into<String>) -> Self
pub fn max_frame_rate(self, input: impl Into<String>) -> Self
If you specify auto
for FrameRate
, Elastic Transcoder uses the frame rate of the input video for the frame rate of the output video. Specify the maximum frame rate that you want Elastic Transcoder to use when the frame rate of the input video is greater than the desired maximum frame rate of the output video. Valid values include: 10
, 15
, 23.97
, 24
, 25
, 29.97
, 30
, 60
.
sourcepub fn set_max_frame_rate(self, input: Option<String>) -> Self
pub fn set_max_frame_rate(self, input: Option<String>) -> Self
If you specify auto
for FrameRate
, Elastic Transcoder uses the frame rate of the input video for the frame rate of the output video. Specify the maximum frame rate that you want Elastic Transcoder to use when the frame rate of the input video is greater than the desired maximum frame rate of the output video. Valid values include: 10
, 15
, 23.97
, 24
, 25
, 29.97
, 30
, 60
.
Examples found in repository?
2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745
pub(crate) fn deser_structure_crate_model_video_parameters<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<
Option<crate::model::VideoParameters>,
aws_smithy_json::deserialize::error::DeserializeError,
>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::video_parameters::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"Codec" => {
builder = builder.set_codec(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"CodecOptions" => {
builder = builder.set_codec_options(
crate::json_deser::deser_map_com_amazonaws_elastictranscoder_codec_options(tokens)?
);
}
"KeyframesMaxDist" => {
builder = builder.set_keyframes_max_dist(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FixedGOP" => {
builder = builder.set_fixed_gop(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"BitRate" => {
builder = builder.set_bit_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FrameRate" => {
builder = builder.set_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxFrameRate" => {
builder = builder.set_max_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Resolution" => {
builder = builder.set_resolution(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"AspectRatio" => {
builder = builder.set_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxWidth" => {
builder = builder.set_max_width(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxHeight" => {
builder = builder.set_max_height(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"DisplayAspectRatio" => {
builder = builder.set_display_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"SizingPolicy" => {
builder = builder.set_sizing_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"PaddingPolicy" => {
builder = builder.set_padding_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Watermarks" => {
builder = builder.set_watermarks(
crate::json_deser::deser_list_com_amazonaws_elastictranscoder_preset_watermarks(tokens)?
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}
sourcepub fn resolution(self, input: impl Into<String>) -> Self
pub fn resolution(self, input: impl Into<String>) -> Self
To better control resolution and aspect ratio of output videos, we recommend that you use the values MaxWidth
, MaxHeight
, SizingPolicy
, PaddingPolicy
, and DisplayAspectRatio
instead of Resolution
and AspectRatio
. The two groups of settings are mutually exclusive. Do not use them together.
The width and height of the video in the output file, in pixels. Valid values are auto
and width x height:
-
auto
: Elastic Transcoder attempts to preserve the width and height of the input file, subject to the following rules. -
width x height
: The width and height of the output video in pixels.
Note the following about specifying the width and height:
-
The width must be an even integer between 128 and 4096, inclusive.
-
The height must be an even integer between 96 and 3072, inclusive.
-
If you specify a resolution that is less than the resolution of the input file, Elastic Transcoder rescales the output file to the lower resolution.
-
If you specify a resolution that is greater than the resolution of the input file, Elastic Transcoder rescales the output to the higher resolution.
-
We recommend that you specify a resolution for which the product of width and height is less than or equal to the applicable value in the following list (List - Max width x height value):
-
1 - 25344
-
1b - 25344
-
1.1 - 101376
-
1.2 - 101376
-
1.3 - 101376
-
2 - 101376
-
2.1 - 202752
-
2.2 - 404720
-
3 - 404720
-
3.1 - 921600
-
3.2 - 1310720
-
4 - 2097152
-
4.1 - 2097152
-
sourcepub fn set_resolution(self, input: Option<String>) -> Self
pub fn set_resolution(self, input: Option<String>) -> Self
To better control resolution and aspect ratio of output videos, we recommend that you use the values MaxWidth
, MaxHeight
, SizingPolicy
, PaddingPolicy
, and DisplayAspectRatio
instead of Resolution
and AspectRatio
. The two groups of settings are mutually exclusive. Do not use them together.
The width and height of the video in the output file, in pixels. Valid values are auto
and width x height:
-
auto
: Elastic Transcoder attempts to preserve the width and height of the input file, subject to the following rules. -
width x height
: The width and height of the output video in pixels.
Note the following about specifying the width and height:
-
The width must be an even integer between 128 and 4096, inclusive.
-
The height must be an even integer between 96 and 3072, inclusive.
-
If you specify a resolution that is less than the resolution of the input file, Elastic Transcoder rescales the output file to the lower resolution.
-
If you specify a resolution that is greater than the resolution of the input file, Elastic Transcoder rescales the output to the higher resolution.
-
We recommend that you specify a resolution for which the product of width and height is less than or equal to the applicable value in the following list (List - Max width x height value):
-
1 - 25344
-
1b - 25344
-
1.1 - 101376
-
1.2 - 101376
-
1.3 - 101376
-
2 - 101376
-
2.1 - 202752
-
2.2 - 404720
-
3 - 404720
-
3.1 - 921600
-
3.2 - 1310720
-
4 - 2097152
-
4.1 - 2097152
-
Examples found in repository?
2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745
pub(crate) fn deser_structure_crate_model_video_parameters<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<
Option<crate::model::VideoParameters>,
aws_smithy_json::deserialize::error::DeserializeError,
>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::video_parameters::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"Codec" => {
builder = builder.set_codec(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"CodecOptions" => {
builder = builder.set_codec_options(
crate::json_deser::deser_map_com_amazonaws_elastictranscoder_codec_options(tokens)?
);
}
"KeyframesMaxDist" => {
builder = builder.set_keyframes_max_dist(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FixedGOP" => {
builder = builder.set_fixed_gop(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"BitRate" => {
builder = builder.set_bit_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FrameRate" => {
builder = builder.set_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxFrameRate" => {
builder = builder.set_max_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Resolution" => {
builder = builder.set_resolution(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"AspectRatio" => {
builder = builder.set_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxWidth" => {
builder = builder.set_max_width(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxHeight" => {
builder = builder.set_max_height(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"DisplayAspectRatio" => {
builder = builder.set_display_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"SizingPolicy" => {
builder = builder.set_sizing_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"PaddingPolicy" => {
builder = builder.set_padding_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Watermarks" => {
builder = builder.set_watermarks(
crate::json_deser::deser_list_com_amazonaws_elastictranscoder_preset_watermarks(tokens)?
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}
sourcepub fn aspect_ratio(self, input: impl Into<String>) -> Self
pub fn aspect_ratio(self, input: impl Into<String>) -> Self
To better control resolution and aspect ratio of output videos, we recommend that you use the values MaxWidth
, MaxHeight
, SizingPolicy
, PaddingPolicy
, and DisplayAspectRatio
instead of Resolution
and AspectRatio
. The two groups of settings are mutually exclusive. Do not use them together.
The display aspect ratio of the video in the output file. Valid values include:
auto
, 1:1
, 4:3
, 3:2
, 16:9
If you specify auto
, Elastic Transcoder tries to preserve the aspect ratio of the input file.
If you specify an aspect ratio for the output file that differs from aspect ratio of the input file, Elastic Transcoder adds pillarboxing (black bars on the sides) or letterboxing (black bars on the top and bottom) to maintain the aspect ratio of the active region of the video.
sourcepub fn set_aspect_ratio(self, input: Option<String>) -> Self
pub fn set_aspect_ratio(self, input: Option<String>) -> Self
To better control resolution and aspect ratio of output videos, we recommend that you use the values MaxWidth
, MaxHeight
, SizingPolicy
, PaddingPolicy
, and DisplayAspectRatio
instead of Resolution
and AspectRatio
. The two groups of settings are mutually exclusive. Do not use them together.
The display aspect ratio of the video in the output file. Valid values include:
auto
, 1:1
, 4:3
, 3:2
, 16:9
If you specify auto
, Elastic Transcoder tries to preserve the aspect ratio of the input file.
If you specify an aspect ratio for the output file that differs from aspect ratio of the input file, Elastic Transcoder adds pillarboxing (black bars on the sides) or letterboxing (black bars on the top and bottom) to maintain the aspect ratio of the active region of the video.
Examples found in repository?
2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745
pub(crate) fn deser_structure_crate_model_video_parameters<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<
Option<crate::model::VideoParameters>,
aws_smithy_json::deserialize::error::DeserializeError,
>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::video_parameters::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"Codec" => {
builder = builder.set_codec(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"CodecOptions" => {
builder = builder.set_codec_options(
crate::json_deser::deser_map_com_amazonaws_elastictranscoder_codec_options(tokens)?
);
}
"KeyframesMaxDist" => {
builder = builder.set_keyframes_max_dist(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FixedGOP" => {
builder = builder.set_fixed_gop(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"BitRate" => {
builder = builder.set_bit_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FrameRate" => {
builder = builder.set_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxFrameRate" => {
builder = builder.set_max_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Resolution" => {
builder = builder.set_resolution(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"AspectRatio" => {
builder = builder.set_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxWidth" => {
builder = builder.set_max_width(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxHeight" => {
builder = builder.set_max_height(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"DisplayAspectRatio" => {
builder = builder.set_display_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"SizingPolicy" => {
builder = builder.set_sizing_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"PaddingPolicy" => {
builder = builder.set_padding_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Watermarks" => {
builder = builder.set_watermarks(
crate::json_deser::deser_list_com_amazonaws_elastictranscoder_preset_watermarks(tokens)?
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}
sourcepub fn max_width(self, input: impl Into<String>) -> Self
pub fn max_width(self, input: impl Into<String>) -> Self
The maximum width of the output video in pixels. If you specify auto
, Elastic Transcoder uses 1920 (Full HD) as the default value. If you specify a numeric value, enter an even integer between 128 and 4096.
sourcepub fn set_max_width(self, input: Option<String>) -> Self
pub fn set_max_width(self, input: Option<String>) -> Self
The maximum width of the output video in pixels. If you specify auto
, Elastic Transcoder uses 1920 (Full HD) as the default value. If you specify a numeric value, enter an even integer between 128 and 4096.
Examples found in repository?
2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745
pub(crate) fn deser_structure_crate_model_video_parameters<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<
Option<crate::model::VideoParameters>,
aws_smithy_json::deserialize::error::DeserializeError,
>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::video_parameters::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"Codec" => {
builder = builder.set_codec(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"CodecOptions" => {
builder = builder.set_codec_options(
crate::json_deser::deser_map_com_amazonaws_elastictranscoder_codec_options(tokens)?
);
}
"KeyframesMaxDist" => {
builder = builder.set_keyframes_max_dist(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FixedGOP" => {
builder = builder.set_fixed_gop(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"BitRate" => {
builder = builder.set_bit_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FrameRate" => {
builder = builder.set_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxFrameRate" => {
builder = builder.set_max_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Resolution" => {
builder = builder.set_resolution(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"AspectRatio" => {
builder = builder.set_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxWidth" => {
builder = builder.set_max_width(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxHeight" => {
builder = builder.set_max_height(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"DisplayAspectRatio" => {
builder = builder.set_display_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"SizingPolicy" => {
builder = builder.set_sizing_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"PaddingPolicy" => {
builder = builder.set_padding_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Watermarks" => {
builder = builder.set_watermarks(
crate::json_deser::deser_list_com_amazonaws_elastictranscoder_preset_watermarks(tokens)?
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}
sourcepub fn max_height(self, input: impl Into<String>) -> Self
pub fn max_height(self, input: impl Into<String>) -> Self
The maximum height of the output video in pixels. If you specify auto
, Elastic Transcoder uses 1080 (Full HD) as the default value. If you specify a numeric value, enter an even integer between 96 and 3072.
sourcepub fn set_max_height(self, input: Option<String>) -> Self
pub fn set_max_height(self, input: Option<String>) -> Self
The maximum height of the output video in pixels. If you specify auto
, Elastic Transcoder uses 1080 (Full HD) as the default value. If you specify a numeric value, enter an even integer between 96 and 3072.
Examples found in repository?
2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745
pub(crate) fn deser_structure_crate_model_video_parameters<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<
Option<crate::model::VideoParameters>,
aws_smithy_json::deserialize::error::DeserializeError,
>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::video_parameters::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"Codec" => {
builder = builder.set_codec(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"CodecOptions" => {
builder = builder.set_codec_options(
crate::json_deser::deser_map_com_amazonaws_elastictranscoder_codec_options(tokens)?
);
}
"KeyframesMaxDist" => {
builder = builder.set_keyframes_max_dist(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FixedGOP" => {
builder = builder.set_fixed_gop(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"BitRate" => {
builder = builder.set_bit_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FrameRate" => {
builder = builder.set_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxFrameRate" => {
builder = builder.set_max_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Resolution" => {
builder = builder.set_resolution(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"AspectRatio" => {
builder = builder.set_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxWidth" => {
builder = builder.set_max_width(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxHeight" => {
builder = builder.set_max_height(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"DisplayAspectRatio" => {
builder = builder.set_display_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"SizingPolicy" => {
builder = builder.set_sizing_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"PaddingPolicy" => {
builder = builder.set_padding_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Watermarks" => {
builder = builder.set_watermarks(
crate::json_deser::deser_list_com_amazonaws_elastictranscoder_preset_watermarks(tokens)?
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}
sourcepub fn display_aspect_ratio(self, input: impl Into<String>) -> Self
pub fn display_aspect_ratio(self, input: impl Into<String>) -> Self
The value that Elastic Transcoder adds to the metadata in the output file.
sourcepub fn set_display_aspect_ratio(self, input: Option<String>) -> Self
pub fn set_display_aspect_ratio(self, input: Option<String>) -> Self
The value that Elastic Transcoder adds to the metadata in the output file.
Examples found in repository?
2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745
pub(crate) fn deser_structure_crate_model_video_parameters<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<
Option<crate::model::VideoParameters>,
aws_smithy_json::deserialize::error::DeserializeError,
>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::video_parameters::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"Codec" => {
builder = builder.set_codec(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"CodecOptions" => {
builder = builder.set_codec_options(
crate::json_deser::deser_map_com_amazonaws_elastictranscoder_codec_options(tokens)?
);
}
"KeyframesMaxDist" => {
builder = builder.set_keyframes_max_dist(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FixedGOP" => {
builder = builder.set_fixed_gop(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"BitRate" => {
builder = builder.set_bit_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FrameRate" => {
builder = builder.set_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxFrameRate" => {
builder = builder.set_max_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Resolution" => {
builder = builder.set_resolution(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"AspectRatio" => {
builder = builder.set_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxWidth" => {
builder = builder.set_max_width(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxHeight" => {
builder = builder.set_max_height(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"DisplayAspectRatio" => {
builder = builder.set_display_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"SizingPolicy" => {
builder = builder.set_sizing_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"PaddingPolicy" => {
builder = builder.set_padding_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Watermarks" => {
builder = builder.set_watermarks(
crate::json_deser::deser_list_com_amazonaws_elastictranscoder_preset_watermarks(tokens)?
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}
sourcepub fn sizing_policy(self, input: impl Into<String>) -> Self
pub fn sizing_policy(self, input: impl Into<String>) -> Self
Specify one of the following values to control scaling of the output video:
-
Fit
: Elastic Transcoder scales the output video so it matches the value that you specified in eitherMaxWidth
orMaxHeight
without exceeding the other value. -
Fill
: Elastic Transcoder scales the output video so it matches the value that you specified in eitherMaxWidth
orMaxHeight
and matches or exceeds the other value. Elastic Transcoder centers the output video and then crops it in the dimension (if any) that exceeds the maximum value. -
Stretch
: Elastic Transcoder stretches the output video to match the values that you specified forMaxWidth
andMaxHeight
. If the relative proportions of the input video and the output video are different, the output video will be distorted. -
Keep
: Elastic Transcoder does not scale the output video. If either dimension of the input video exceeds the values that you specified forMaxWidth
andMaxHeight
, Elastic Transcoder crops the output video. -
ShrinkToFit
: Elastic Transcoder scales the output video down so that its dimensions match the values that you specified for at least one ofMaxWidth
andMaxHeight
without exceeding either value. If you specify this option, Elastic Transcoder does not scale the video up. -
ShrinkToFill
: Elastic Transcoder scales the output video down so that its dimensions match the values that you specified for at least one ofMaxWidth
andMaxHeight
without dropping below either value. If you specify this option, Elastic Transcoder does not scale the video up.
sourcepub fn set_sizing_policy(self, input: Option<String>) -> Self
pub fn set_sizing_policy(self, input: Option<String>) -> Self
Specify one of the following values to control scaling of the output video:
-
Fit
: Elastic Transcoder scales the output video so it matches the value that you specified in eitherMaxWidth
orMaxHeight
without exceeding the other value. -
Fill
: Elastic Transcoder scales the output video so it matches the value that you specified in eitherMaxWidth
orMaxHeight
and matches or exceeds the other value. Elastic Transcoder centers the output video and then crops it in the dimension (if any) that exceeds the maximum value. -
Stretch
: Elastic Transcoder stretches the output video to match the values that you specified forMaxWidth
andMaxHeight
. If the relative proportions of the input video and the output video are different, the output video will be distorted. -
Keep
: Elastic Transcoder does not scale the output video. If either dimension of the input video exceeds the values that you specified forMaxWidth
andMaxHeight
, Elastic Transcoder crops the output video. -
ShrinkToFit
: Elastic Transcoder scales the output video down so that its dimensions match the values that you specified for at least one ofMaxWidth
andMaxHeight
without exceeding either value. If you specify this option, Elastic Transcoder does not scale the video up. -
ShrinkToFill
: Elastic Transcoder scales the output video down so that its dimensions match the values that you specified for at least one ofMaxWidth
andMaxHeight
without dropping below either value. If you specify this option, Elastic Transcoder does not scale the video up.
Examples found in repository?
2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745
pub(crate) fn deser_structure_crate_model_video_parameters<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<
Option<crate::model::VideoParameters>,
aws_smithy_json::deserialize::error::DeserializeError,
>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::video_parameters::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"Codec" => {
builder = builder.set_codec(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"CodecOptions" => {
builder = builder.set_codec_options(
crate::json_deser::deser_map_com_amazonaws_elastictranscoder_codec_options(tokens)?
);
}
"KeyframesMaxDist" => {
builder = builder.set_keyframes_max_dist(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FixedGOP" => {
builder = builder.set_fixed_gop(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"BitRate" => {
builder = builder.set_bit_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FrameRate" => {
builder = builder.set_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxFrameRate" => {
builder = builder.set_max_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Resolution" => {
builder = builder.set_resolution(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"AspectRatio" => {
builder = builder.set_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxWidth" => {
builder = builder.set_max_width(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxHeight" => {
builder = builder.set_max_height(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"DisplayAspectRatio" => {
builder = builder.set_display_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"SizingPolicy" => {
builder = builder.set_sizing_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"PaddingPolicy" => {
builder = builder.set_padding_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Watermarks" => {
builder = builder.set_watermarks(
crate::json_deser::deser_list_com_amazonaws_elastictranscoder_preset_watermarks(tokens)?
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}
sourcepub fn padding_policy(self, input: impl Into<String>) -> Self
pub fn padding_policy(self, input: impl Into<String>) -> Self
When you set PaddingPolicy
to Pad
, Elastic Transcoder may add black bars to the top and bottom and/or left and right sides of the output video to make the total size of the output video match the values that you specified for MaxWidth
and MaxHeight
.
sourcepub fn set_padding_policy(self, input: Option<String>) -> Self
pub fn set_padding_policy(self, input: Option<String>) -> Self
When you set PaddingPolicy
to Pad
, Elastic Transcoder may add black bars to the top and bottom and/or left and right sides of the output video to make the total size of the output video match the values that you specified for MaxWidth
and MaxHeight
.
Examples found in repository?
2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745
pub(crate) fn deser_structure_crate_model_video_parameters<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<
Option<crate::model::VideoParameters>,
aws_smithy_json::deserialize::error::DeserializeError,
>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::video_parameters::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"Codec" => {
builder = builder.set_codec(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"CodecOptions" => {
builder = builder.set_codec_options(
crate::json_deser::deser_map_com_amazonaws_elastictranscoder_codec_options(tokens)?
);
}
"KeyframesMaxDist" => {
builder = builder.set_keyframes_max_dist(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FixedGOP" => {
builder = builder.set_fixed_gop(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"BitRate" => {
builder = builder.set_bit_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FrameRate" => {
builder = builder.set_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxFrameRate" => {
builder = builder.set_max_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Resolution" => {
builder = builder.set_resolution(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"AspectRatio" => {
builder = builder.set_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxWidth" => {
builder = builder.set_max_width(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxHeight" => {
builder = builder.set_max_height(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"DisplayAspectRatio" => {
builder = builder.set_display_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"SizingPolicy" => {
builder = builder.set_sizing_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"PaddingPolicy" => {
builder = builder.set_padding_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Watermarks" => {
builder = builder.set_watermarks(
crate::json_deser::deser_list_com_amazonaws_elastictranscoder_preset_watermarks(tokens)?
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}
sourcepub fn watermarks(self, input: PresetWatermark) -> Self
pub fn watermarks(self, input: PresetWatermark) -> Self
Appends an item to watermarks
.
To override the contents of this collection use set_watermarks
.
Settings for the size, location, and opacity of graphics that you want Elastic Transcoder to overlay over videos that are transcoded using this preset. You can specify settings for up to four watermarks. Watermarks appear in the specified size and location, and with the specified opacity for the duration of the transcoded video.
Watermarks can be in .png or .jpg format. If you want to display a watermark that is not rectangular, use the .png format, which supports transparency.
When you create a job that uses this preset, you specify the .png or .jpg graphics that you want Elastic Transcoder to include in the transcoded videos. You can specify fewer graphics in the job than you specify watermark settings in the preset, which allows you to use the same preset for up to four watermarks that have different dimensions.
sourcepub fn set_watermarks(self, input: Option<Vec<PresetWatermark>>) -> Self
pub fn set_watermarks(self, input: Option<Vec<PresetWatermark>>) -> Self
Settings for the size, location, and opacity of graphics that you want Elastic Transcoder to overlay over videos that are transcoded using this preset. You can specify settings for up to four watermarks. Watermarks appear in the specified size and location, and with the specified opacity for the duration of the transcoded video.
Watermarks can be in .png or .jpg format. If you want to display a watermark that is not rectangular, use the .png format, which supports transparency.
When you create a job that uses this preset, you specify the .png or .jpg graphics that you want Elastic Transcoder to include in the transcoded videos. You can specify fewer graphics in the job than you specify watermark settings in the preset, which allows you to use the same preset for up to four watermarks that have different dimensions.
Examples found in repository?
2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745
pub(crate) fn deser_structure_crate_model_video_parameters<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<
Option<crate::model::VideoParameters>,
aws_smithy_json::deserialize::error::DeserializeError,
>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::video_parameters::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"Codec" => {
builder = builder.set_codec(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"CodecOptions" => {
builder = builder.set_codec_options(
crate::json_deser::deser_map_com_amazonaws_elastictranscoder_codec_options(tokens)?
);
}
"KeyframesMaxDist" => {
builder = builder.set_keyframes_max_dist(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FixedGOP" => {
builder = builder.set_fixed_gop(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"BitRate" => {
builder = builder.set_bit_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FrameRate" => {
builder = builder.set_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxFrameRate" => {
builder = builder.set_max_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Resolution" => {
builder = builder.set_resolution(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"AspectRatio" => {
builder = builder.set_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxWidth" => {
builder = builder.set_max_width(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxHeight" => {
builder = builder.set_max_height(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"DisplayAspectRatio" => {
builder = builder.set_display_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"SizingPolicy" => {
builder = builder.set_sizing_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"PaddingPolicy" => {
builder = builder.set_padding_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Watermarks" => {
builder = builder.set_watermarks(
crate::json_deser::deser_list_com_amazonaws_elastictranscoder_preset_watermarks(tokens)?
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}
sourcepub fn build(self) -> VideoParameters
pub fn build(self) -> VideoParameters
Consumes the builder and constructs a VideoParameters
.
Examples found in repository?
2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745
pub(crate) fn deser_structure_crate_model_video_parameters<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<
Option<crate::model::VideoParameters>,
aws_smithy_json::deserialize::error::DeserializeError,
>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::video_parameters::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"Codec" => {
builder = builder.set_codec(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"CodecOptions" => {
builder = builder.set_codec_options(
crate::json_deser::deser_map_com_amazonaws_elastictranscoder_codec_options(tokens)?
);
}
"KeyframesMaxDist" => {
builder = builder.set_keyframes_max_dist(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FixedGOP" => {
builder = builder.set_fixed_gop(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"BitRate" => {
builder = builder.set_bit_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"FrameRate" => {
builder = builder.set_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxFrameRate" => {
builder = builder.set_max_frame_rate(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Resolution" => {
builder = builder.set_resolution(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"AspectRatio" => {
builder = builder.set_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxWidth" => {
builder = builder.set_max_width(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"MaxHeight" => {
builder = builder.set_max_height(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"DisplayAspectRatio" => {
builder = builder.set_display_aspect_ratio(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"SizingPolicy" => {
builder = builder.set_sizing_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"PaddingPolicy" => {
builder = builder.set_padding_policy(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
"Watermarks" => {
builder = builder.set_watermarks(
crate::json_deser::deser_list_com_amazonaws_elastictranscoder_preset_watermarks(tokens)?
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}