pub struct Equalizer {
pub bands: Option<Vec<EqualizerBand>>,
pub supported_controls: Option<EqualizerSupportedControls>,
pub can_disable_bands: Option<bool>,
pub min_frequency: Option<u32>,
pub max_frequency: Option<u32>,
pub max_q: Option<f32>,
pub min_gain_db: Option<f32>,
pub max_gain_db: Option<f32>,
/* private fields */
}
Expand description
Parameters for a Element
with type
equal to EQUALIZER
.
Fields§
§bands: Option<Vec<EqualizerBand>>
Equalizers in this protocol are built by a number of bands, each specifying a number of
parameters here and in EqualizerElementState
that can be changed with SetElementState
.
The number of elements of the bands
vector determines the number of bands
supported by this processing element.
Required. Must contain at least one entry.
supported_controls: Option<EqualizerSupportedControls>
The controls supported by this equalizer (i.e. that can be changed via SetElementState
).
Optional.
can_disable_bands: Option<bool>
If included and true, individual bands can be disabled via SetElementState
.
If not included or false, bands are always enabled.
For EQ bands to be functional, the enclosing equalizer processing element must also be
started and not bypassed.
Optional.
min_frequency: Option<u32>
Minimum frequency for all bands, in Hz.
Required.
max_frequency: Option<u32>
Maximum frequency for all bands, in Hz.
Required.
max_q: Option<f32>
Maximum quality factor, usually denoted by “Q”, for all bands. This indicates how narrow the frequency transition is. Higher Q values imply narrower notches/peaks and steeper cuts/shelves. Must be positive.
Optional. If specified, must be finite.
min_gain_db: Option<f32>
Minimum gain in dB.
Required, if supported_controls
is present and includes SUPPORTS_TYPE_PEAK
,
SUPPORTS_TYPE_LOW_SHELF
or SUPPORTS_TYPE_HIGH_SHELF
. Must be finite.
Disallowed, otherwise.
max_gain_db: Option<f32>
Maximum gain in dB.
Required, if supported_controls
is present and includes SUPPORTS_TYPE_PEAK
,
SUPPORTS_TYPE_LOW_SHELF
or SUPPORTS_TYPE_HIGH_SHELF
. Must be finite.
Disallowed, otherwise.
Trait Implementations§
Source§impl<D> Decode<Equalizer, D> for Equalizerwhere
D: ResourceDialect,
impl<D> Decode<Equalizer, D> for Equalizerwhere
D: ResourceDialect,
Source§impl TypeMarker for Equalizer
impl TypeMarker for Equalizer
Source§fn inline_align(_context: Context) -> usize
fn inline_align(_context: Context) -> usize
Source§fn inline_size(_context: Context) -> usize
fn inline_size(_context: Context) -> usize
inline_align
.Source§fn encode_is_copy() -> bool
fn encode_is_copy() -> bool
Self::Owned
matches the FIDL wire
format and encoding requires no validation. When true, we can optimize
encoding arrays and vectors of Self::Owned
to a single memcpy. Read moreSource§fn decode_is_copy() -> bool
fn decode_is_copy() -> bool
Self::Owned
matches the FIDL wire
format and decoding requires no validation. When true, we can optimize
decoding arrays and vectors of Self::Owned
to a single memcpy.Source§impl ValueTypeMarker for Equalizer
impl ValueTypeMarker for Equalizer
Source§type Borrowed<'a> = &'a Equalizer
type Borrowed<'a> = &'a Equalizer
Encode<Self>
type cheaply obtainable from &Self::Owned
. There are three cases: Read moreSource§fn borrow(
value: &<Equalizer as TypeMarker>::Owned,
) -> <Equalizer as ValueTypeMarker>::Borrowed<'_>
fn borrow( value: &<Equalizer as TypeMarker>::Owned, ) -> <Equalizer as ValueTypeMarker>::Borrowed<'_>
&Self::Owned
to Self::Borrowed
.