Skip to main content

MicrophoneBuilder

Struct MicrophoneBuilder 

Source
pub struct MicrophoneBuilder { /* private fields */ }
Available on crate feature microphone and non-target_family=wasm only.

Implementations§

Source§

impl MicrophoneBuilder

Source

pub fn spool_dir(self, directory: impl Into<PathBuf>) -> Self

Where the bounded temporary WAV lives while recording. It holds everything the microphone hears, so use a directory only your user can read. Without one, loading creates a private per-user directory.

Source

pub fn maximum_duration(self, maximum_duration: Duration) -> Self

The most a single recording may hold, up to about 37 hours. The spool grows with it, about 115 MB per hour, and each reader holds what it has not released, about 230 MB per hour.

Source

pub fn open(self) -> Result<Microphone, CaptureError>

Source

pub fn load(self) -> Result<PreparedMicrophone, CaptureError>

Source

pub fn load_with<V>(self, vad: V) -> Result<PreparedMicrophone<V>, CaptureError>
where V: VoiceActivityDetector + Send + 'static,

Uses vad instead of the bundled Silero model, for both endpointing and the wake-word gate. A panic while it scores fails the recording in progress, or drops the held stream when idle; a panic in its reset ends the microphone.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<S, T> Duplex<S> for T
where T: FromSample<S> + ToSample<S>,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<S> FromSample<S> for S

Source§

fn from_sample_(s: S) -> S

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self> ⓘ

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self> ⓘ

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> ToSample<U> for T
where U: FromSample<T>,

Source§

fn to_sample_(self) -> U

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘ
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more