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 UnsafeUnpin 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