pub enum AudioInput {
File(FileSource),
Device(DeviceStream),
}Expand description
Unified audio input that can be either file or device.
Variants§
Implementations§
Source§impl AudioInput
impl AudioInput
Sourcepub fn from_device(config: DeviceConfig) -> Result<Self>
pub fn from_device(config: DeviceConfig) -> Result<Self>
Create input from the default audio device.
Trait Implementations§
Source§impl AudioSource for AudioInput
impl AudioSource for AudioInput
Source§fn sample_rate(&self) -> u32
fn sample_rate(&self) -> u32
Get the sample rate in Hz.
Source§fn total_samples(&self) -> Option<u64>
fn total_samples(&self) -> Option<u64>
Get the total number of samples (None for streams).
Source§fn read_frame(&mut self, frame_size: usize) -> Result<Option<AudioFrame>>
fn read_frame(&mut self, frame_size: usize) -> Result<Option<AudioFrame>>
Read the next frame of audio.
Source§fn is_exhausted(&self) -> bool
fn is_exhausted(&self) -> bool
Check if the source is exhausted.
Auto Trait Implementations§
impl Freeze for AudioInput
impl RefUnwindSafe for AudioInput
impl Send for AudioInput
impl Sync for AudioInput
impl Unpin for AudioInput
impl UnwindSafe for AudioInput
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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
Mutably borrows from an owned value. Read more
Source§impl<F, W, T, D> Deserialize<With<T, W>, D> for F
impl<F, W, T, D> Deserialize<With<T, W>, D> for F
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> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Gets the layout of the type.