pub struct SoftStreamConfig { /* private fields */ }
Expand description
A software fuchsia audio output, which implements Audio Driver Streaming Interface as defined in //docs/concepts/drivers/driver_interfaces/audio_streaming.md
Implementations§
Source§impl SoftStreamConfig
impl SoftStreamConfig
Sourcepub fn create_output(
unique_id: &[u8; 16],
manufacturer: &str,
product: &str,
clock_domain: u32,
pcm_format: PcmFormat,
packet_duration: MonotonicDuration,
initial_external_delay: MonotonicDuration,
) -> Result<(ClientEnd<StreamConfigMarker>, AudioFrameStream)>
pub fn create_output( unique_id: &[u8; 16], manufacturer: &str, product: &str, clock_domain: u32, pcm_format: PcmFormat, packet_duration: MonotonicDuration, initial_external_delay: MonotonicDuration, ) -> Result<(ClientEnd<StreamConfigMarker>, AudioFrameStream)>
Create a new software audio device, returning a client channel which can be supplied
to the AudioCore and will act correctly as an audio output driver channel which can
render audio in the pcm_format
format, and an AudioFrameStream which produces the
audio frames delivered to the audio output.
Spawns a task to handle messages from the Audio Core and setup of internal VMO buffers
required for audio output. See AudioFrameStream for more information on timing
requirements for audio output.
packet_duration
: desired duration of an audio packet returned by the stream. Rounded down to
end on a audio frame boundary.
initial_external_delay
: delay that is added after packets have been returned from the stream
pub fn create_input( unique_id: &[u8; 16], manufacturer: &str, product: &str, clock_domain: u32, pcm_format: PcmFormat, buffer: MonotonicDuration, ) -> Result<(ClientEnd<StreamConfigMarker>, AudioFrameSink)>
Trait Implementations§
Source§impl Inspect for &mut SoftStreamConfig
impl Inspect for &mut SoftStreamConfig
Source§fn iattach(
self,
parent: &InspectNode,
name: impl AsRef<str>,
) -> Result<(), AttachError>
fn iattach( self, parent: &InspectNode, name: impl AsRef<str>, ) -> Result<(), AttachError>
Auto Trait Implementations§
impl Freeze for SoftStreamConfig
impl !RefUnwindSafe for SoftStreamConfig
impl Send for SoftStreamConfig
impl Sync for SoftStreamConfig
impl Unpin for SoftStreamConfig
impl !UnwindSafe for SoftStreamConfig
Blanket Implementations§
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
Source§impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
Source§impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more