#[non_exhaustive]pub struct AudioParameters {
pub codec: Option<String>,
pub sample_rate: Option<String>,
pub bit_rate: Option<String>,
pub channels: Option<String>,
pub audio_packing_mode: Option<String>,
pub codec_options: Option<AudioCodecOptions>,
}
Expand description
Parameters required for transcoding audio.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.codec: Option<String>
The audio codec for the output file. Valid values include aac
, flac
, mp2
, mp3
, pcm
, and vorbis
.
sample_rate: Option<String>
The sample rate of the audio stream in the output file, in Hertz. Valid values include:
auto
, 22050
, 32000
, 44100
, 48000
, 96000
If you specify auto
, Elastic Transcoder automatically detects the sample rate.
bit_rate: Option<String>
The bit rate of the audio stream in the output file, in kilobits/second. Enter an integer between 64 and 320, inclusive.
channels: Option<String>
The number of audio channels in the output file. The following values are valid:
auto
, 0
, 1
, 2
One channel carries the information played by a single speaker. For example, a stereo track with two channels sends one channel to the left speaker, and the other channel to the right speaker. The output channels are organized into tracks. If you want Elastic Transcoder to automatically detect the number of audio channels in the input file and use that value for the output file, select auto
.
The output of a specific channel value and inputs are as follows:
-
auto
channel specified, with any input: Pass through up to eight input channels. -
0
channels specified, with any input: Audio omitted from the output. -
1
channel specified, with at least one input channel: Mono sound. -
2
channels specified, with any input: Two identical mono channels or stereo. For more information about tracks, seeAudio:AudioPackingMode.
For more information about how Elastic Transcoder organizes channels and tracks, see Audio:AudioPackingMode
.
audio_packing_mode: Option<String>
The method of organizing audio channels and tracks. Use Audio:Channels
to specify the number of channels in your output, and Audio:AudioPackingMode
to specify the number of tracks and their relation to the channels. If you do not specify an Audio:AudioPackingMode
, Elastic Transcoder uses SingleTrack
.
The following values are valid:
SingleTrack
, OneChannelPerTrack
, and OneChannelPerTrackWithMosTo8Tracks
When you specify SingleTrack
, Elastic Transcoder creates a single track for your output. The track can have up to eight channels. Use SingleTrack
for all non-mxf
containers.
The outputs of SingleTrack
for a specific channel value and inputs are as follows:
-
0
channels with any input: Audio omitted from the output -
1, 2, or auto
channels with no audio input: Audio omitted from the output -
1
channel with any input with audio: One track with one channel, downmixed if necessary -
2
channels with one track with one channel: One track with two identical channels -
2 or auto
channels with two tracks with one channel each: One track with two channels -
2 or auto
channels with one track with two channels: One track with two channels -
2
channels with one track with multiple channels: One track with two channels -
auto
channels with one track with one channel: One track with one channel -
auto
channels with one track with multiple channels: One track with multiple channels
When you specify OneChannelPerTrack
, Elastic Transcoder creates a new track for every channel in your output. Your output can have up to eight single-channel tracks.
The outputs of OneChannelPerTrack
for a specific channel value and inputs are as follows:
-
0
channels with any input: Audio omitted from the output -
1, 2, or auto
channels with no audio input: Audio omitted from the output -
1
channel with any input with audio: One track with one channel, downmixed if necessary -
2
channels with one track with one channel: Two tracks with one identical channel each -
2 or auto
channels with two tracks with one channel each: Two tracks with one channel each -
2 or auto
channels with one track with two channels: Two tracks with one channel each -
2
channels with one track with multiple channels: Two tracks with one channel each -
auto
channels with one track with one channel: One track with one channel -
auto
channels with one track with multiple channels: Up to eight tracks with one channel each
When you specify OneChannelPerTrackWithMosTo8Tracks
, Elastic Transcoder creates eight single-channel tracks for your output. All tracks that do not contain audio data from an input channel are MOS, or Mit Out Sound, tracks.
The outputs of OneChannelPerTrackWithMosTo8Tracks
for a specific channel value and inputs are as follows:
-
0
channels with any input: Audio omitted from the output -
1, 2, or auto
channels with no audio input: Audio omitted from the output -
1
channel with any input with audio: One track with one channel, downmixed if necessary, plus six MOS tracks -
2
channels with one track with one channel: Two tracks with one identical channel each, plus six MOS tracks -
2 or auto
channels with two tracks with one channel each: Two tracks with one channel each, plus six MOS tracks -
2 or auto
channels with one track with two channels: Two tracks with one channel each, plus six MOS tracks -
2
channels with one track with multiple channels: Two tracks with one channel each, plus six MOS tracks -
auto
channels with one track with one channel: One track with one channel, plus seven MOS tracks -
auto
channels with one track with multiple channels: Up to eight tracks with one channel each, plus MOS tracks until there are eight tracks in all
codec_options: Option<AudioCodecOptions>
If you specified AAC
for Audio:Codec
, this is the AAC
compression profile to use. Valid values include:
auto
, AAC-LC
, HE-AAC
, HE-AACv2
If you specify auto
, Elastic Transcoder chooses a profile based on the bit rate of the output file.
Implementations§
Source§impl AudioParameters
impl AudioParameters
Sourcepub fn codec(&self) -> Option<&str>
pub fn codec(&self) -> Option<&str>
The audio codec for the output file. Valid values include aac
, flac
, mp2
, mp3
, pcm
, and vorbis
.
Sourcepub fn sample_rate(&self) -> Option<&str>
pub fn sample_rate(&self) -> Option<&str>
The sample rate of the audio stream in the output file, in Hertz. Valid values include:
auto
, 22050
, 32000
, 44100
, 48000
, 96000
If you specify auto
, Elastic Transcoder automatically detects the sample rate.
Sourcepub fn bit_rate(&self) -> Option<&str>
pub fn bit_rate(&self) -> Option<&str>
The bit rate of the audio stream in the output file, in kilobits/second. Enter an integer between 64 and 320, inclusive.
Sourcepub fn channels(&self) -> Option<&str>
pub fn channels(&self) -> Option<&str>
The number of audio channels in the output file. The following values are valid:
auto
, 0
, 1
, 2
One channel carries the information played by a single speaker. For example, a stereo track with two channels sends one channel to the left speaker, and the other channel to the right speaker. The output channels are organized into tracks. If you want Elastic Transcoder to automatically detect the number of audio channels in the input file and use that value for the output file, select auto
.
The output of a specific channel value and inputs are as follows:
-
auto
channel specified, with any input: Pass through up to eight input channels. -
0
channels specified, with any input: Audio omitted from the output. -
1
channel specified, with at least one input channel: Mono sound. -
2
channels specified, with any input: Two identical mono channels or stereo. For more information about tracks, seeAudio:AudioPackingMode.
For more information about how Elastic Transcoder organizes channels and tracks, see Audio:AudioPackingMode
.
Sourcepub fn audio_packing_mode(&self) -> Option<&str>
pub fn audio_packing_mode(&self) -> Option<&str>
The method of organizing audio channels and tracks. Use Audio:Channels
to specify the number of channels in your output, and Audio:AudioPackingMode
to specify the number of tracks and their relation to the channels. If you do not specify an Audio:AudioPackingMode
, Elastic Transcoder uses SingleTrack
.
The following values are valid:
SingleTrack
, OneChannelPerTrack
, and OneChannelPerTrackWithMosTo8Tracks
When you specify SingleTrack
, Elastic Transcoder creates a single track for your output. The track can have up to eight channels. Use SingleTrack
for all non-mxf
containers.
The outputs of SingleTrack
for a specific channel value and inputs are as follows:
-
0
channels with any input: Audio omitted from the output -
1, 2, or auto
channels with no audio input: Audio omitted from the output -
1
channel with any input with audio: One track with one channel, downmixed if necessary -
2
channels with one track with one channel: One track with two identical channels -
2 or auto
channels with two tracks with one channel each: One track with two channels -
2 or auto
channels with one track with two channels: One track with two channels -
2
channels with one track with multiple channels: One track with two channels -
auto
channels with one track with one channel: One track with one channel -
auto
channels with one track with multiple channels: One track with multiple channels
When you specify OneChannelPerTrack
, Elastic Transcoder creates a new track for every channel in your output. Your output can have up to eight single-channel tracks.
The outputs of OneChannelPerTrack
for a specific channel value and inputs are as follows:
-
0
channels with any input: Audio omitted from the output -
1, 2, or auto
channels with no audio input: Audio omitted from the output -
1
channel with any input with audio: One track with one channel, downmixed if necessary -
2
channels with one track with one channel: Two tracks with one identical channel each -
2 or auto
channels with two tracks with one channel each: Two tracks with one channel each -
2 or auto
channels with one track with two channels: Two tracks with one channel each -
2
channels with one track with multiple channels: Two tracks with one channel each -
auto
channels with one track with one channel: One track with one channel -
auto
channels with one track with multiple channels: Up to eight tracks with one channel each
When you specify OneChannelPerTrackWithMosTo8Tracks
, Elastic Transcoder creates eight single-channel tracks for your output. All tracks that do not contain audio data from an input channel are MOS, or Mit Out Sound, tracks.
The outputs of OneChannelPerTrackWithMosTo8Tracks
for a specific channel value and inputs are as follows:
-
0
channels with any input: Audio omitted from the output -
1, 2, or auto
channels with no audio input: Audio omitted from the output -
1
channel with any input with audio: One track with one channel, downmixed if necessary, plus six MOS tracks -
2
channels with one track with one channel: Two tracks with one identical channel each, plus six MOS tracks -
2 or auto
channels with two tracks with one channel each: Two tracks with one channel each, plus six MOS tracks -
2 or auto
channels with one track with two channels: Two tracks with one channel each, plus six MOS tracks -
2
channels with one track with multiple channels: Two tracks with one channel each, plus six MOS tracks -
auto
channels with one track with one channel: One track with one channel, plus seven MOS tracks -
auto
channels with one track with multiple channels: Up to eight tracks with one channel each, plus MOS tracks until there are eight tracks in all
Sourcepub fn codec_options(&self) -> Option<&AudioCodecOptions>
pub fn codec_options(&self) -> Option<&AudioCodecOptions>
If you specified AAC
for Audio:Codec
, this is the AAC
compression profile to use. Valid values include:
auto
, AAC-LC
, HE-AAC
, HE-AACv2
If you specify auto
, Elastic Transcoder chooses a profile based on the bit rate of the output file.
Source§impl AudioParameters
impl AudioParameters
Sourcepub fn builder() -> AudioParametersBuilder
pub fn builder() -> AudioParametersBuilder
Creates a new builder-style object to manufacture AudioParameters
.
Trait Implementations§
Source§impl Clone for AudioParameters
impl Clone for AudioParameters
Source§fn clone(&self) -> AudioParameters
fn clone(&self) -> AudioParameters
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for AudioParameters
impl Debug for AudioParameters
Source§impl PartialEq for AudioParameters
impl PartialEq for AudioParameters
impl StructuralPartialEq for AudioParameters
Auto Trait Implementations§
impl Freeze for AudioParameters
impl RefUnwindSafe for AudioParameters
impl Send for AudioParameters
impl Sync for AudioParameters
impl Unpin for AudioParameters
impl UnwindSafe for AudioParameters
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the foreground set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red()
and
green()
, which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg()
:
use yansi::{Paint, Color};
painted.fg(Color::White);
Set foreground color to white using white()
.
use yansi::Paint;
painted.white();
Source§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
Source§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
Source§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
Source§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
Source§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the background set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red()
and
on_green()
, which have the same functionality but
are pithier.
§Example
Set background color to red using fg()
:
use yansi::{Paint, Color};
painted.bg(Color::Red);
Set background color to red using on_red()
.
use yansi::Paint;
painted.on_red();
Source§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
Source§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
Source§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling Attribute
value
.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold()
and
underline()
, which have the same functionality
but are pithier.
§Example
Make text bold using attr()
:
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);
Make text bold using using bold()
.
use yansi::Paint;
painted.bold();
Source§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Source§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi
Quirk
value
.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask()
and
wrap()
, which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk()
:
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);
Enable wrapping using wrap()
.
use yansi::Paint;
painted.wrap();
Source§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.
fn clear(&self) -> Painted<&T>
resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.Source§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the Condition
value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted
only when both stdout
and stderr
are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);