pub enum GainControllerMode {
AdaptiveAnalog,
AdaptiveDigital,
FixedDigital,
}Expand description
Gain control mode.
Variants§
AdaptiveAnalog
Adaptive mode intended for use if an analog volume control is available on the capture device. It will require the user to provide coupling between the OS mixer controls and AGC through the stream_analog_level() functions. It consists of an analog gain prescription for the audio device and a digital compression stage.
AdaptiveDigital
Adaptive mode intended for situations in which an analog volume control is unavailable. It operates in a similar fashion to the adaptive analog mode, but with scaling instead applied in the digital domain. As with the analog mode, it additionally uses a digital compression stage.
FixedDigital
Fixed mode which enables only the digital compression stage also used by the two adaptive modes. It is distinguished from the adaptive modes by considering only a short time-window of the input signal. It applies a fixed gain through most of the input level range, and compresses (gradually reduces gain with increasing level) the input signal at higher levels. This mode is preferred on embedded devices where the capture signal level is predictable, so that a known gain can be applied.
Trait Implementations§
Source§impl Clone for GainControllerMode
impl Clone for GainControllerMode
Source§fn clone(&self) -> GainControllerMode
fn clone(&self) -> GainControllerMode
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for GainControllerMode
impl Debug for GainControllerMode
Source§impl<'de> Deserialize<'de> for GainControllerMode
impl<'de> Deserialize<'de> for GainControllerMode
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Display for GainControllerMode
impl Display for GainControllerMode
Source§impl IntoEnumIterator for GainControllerMode
impl IntoEnumIterator for GainControllerMode
type Iterator = GainControllerModeIter
fn iter() -> GainControllerModeIter ⓘ
Source§impl JsonSchema for GainControllerMode
impl JsonSchema for GainControllerMode
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read more