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§
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
§impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
§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