Struct AudioDevice

Source
pub struct AudioDevice { /* private fields */ }
Expand description

Represents an open audio device (playback or recording).

Implementations§

Source§

impl AudioDevice

Source

pub fn id(&self) -> AudioDeviceID

Source

pub fn new(device_id: AudioDeviceID, audio_subsystem: AudioSubsystem) -> Self

Source

pub fn name(&self) -> Result<String, Error>

Get the name of the audio device.

Source

pub fn open_device_stream( self, spec: Option<&AudioSpec>, ) -> Result<AudioStreamOwner, Error>

Create an AudioStream for this device with the specified spec. This device will be closed when the stream is dropped. The device begins paused, so you must call stream.resume() to start playback.

Source

pub fn bind_stream(&self, stream: &AudioStream) -> Result<(), Error>

Binds an audio stream to this device.

Source

pub fn bind_streams(&self, streams: &[&AudioStream]) -> Result<(), Error>

Binds multiple audio streams to this device.

Source

pub fn open_playback<'a, D>( _a: &AudioSubsystem, device: D, spec: &AudioSpec, ) -> Result<AudioDevice, Error>
where D: Into<Option<&'a AudioDeviceID>>,

Opens a new audio device for playback (given the desired parameters).

Source

pub fn open_recording<'a, D>( _a: &AudioSubsystem, device: D, spec: &AudioSpec, ) -> Result<AudioDevice, Error>
where D: Into<Option<&'a AudioDeviceID>>,

Opens a new audio device for recording (given the desired parameters).

Source

pub fn pause(&self) -> bool

Pauses playback of the audio device.

Source

pub fn resume(&self) -> bool

Starts playback of the audio device.

Source

pub fn open_playback_stream_with_callback<CB, Channel>( &self, spec: &AudioSpec, callback: CB, ) -> Result<AudioStreamWithCallback<CB>, Error>
where CB: AudioCallback<Channel>, Channel: AudioFormatNum + 'static,

Opens a new audio stream for this device with the specified spec. The device begins paused, so you must call stream.resume() to start playback.

Source

pub fn open_recording_stream_with_callback<CB, Channel>( &self, spec: &AudioSpec, callback: CB, ) -> Result<AudioStreamWithCallback<CB>, Error>
where CB: AudioRecordingCallback<Channel>, Channel: AudioFormatNum + 'static,

Opens a new audio stream for recording with the specified spec. The device begins paused, so you must call stream.resume() to start recording.

Trait Implementations§

Source§

impl Clone for AudioDevice

Source§

fn clone(&self) -> AudioDevice

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Drop for AudioDevice

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more
Source§

impl PartialEq for AudioDevice

Source§

fn eq(&self, other: &Self) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for AudioDevice

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<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

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

Source§

type Error = Infallible

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

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

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.