pub struct AudioCoreProxy { /* private fields */ }
Implementations§
Source§impl AudioCoreProxy
impl AudioCoreProxy
Sourcepub fn take_event_stream(&self) -> AudioCoreEventStream
pub fn take_event_stream(&self) -> AudioCoreEventStream
Get a Stream of events from the remote end of the protocol.
§Panics
Panics if the event stream was already taken.
Sourcepub fn create_audio_renderer(
&self,
audio_out_request: ServerEnd<AudioRendererMarker>,
) -> Result<(), Error>
pub fn create_audio_renderer( &self, audio_out_request: ServerEnd<AudioRendererMarker>, ) -> Result<(), Error>
Creates an AudioRenderer which outputs audio to the default device.
Sourcepub fn create_audio_capturer_with_configuration(
&self,
stream_type: &AudioStreamType,
configuration: &AudioCapturerConfiguration,
audio_capturer_request: ServerEnd<AudioCapturerMarker>,
) -> Result<(), Error>
pub fn create_audio_capturer_with_configuration( &self, stream_type: &AudioStreamType, configuration: &AudioCapturerConfiguration, audio_capturer_request: ServerEnd<AudioCapturerMarker>, ) -> Result<(), Error>
Creates an AudioCapturer according to the given requirements.
pcm_stream_type
sets the stream type of the stream to be delivered.
It causes the source material to be reformatted/resampled if needed
in order to produce the requested stream type.
usage
is used by Fuchsia to make decisions about user experience.
See AudioCaptureUsage
for more details.
configuration
must be initialized to a variant, or no capturer
can be created.
Sourcepub fn create_audio_capturer(
&self,
loopback: bool,
audio_in_request: ServerEnd<AudioCapturerMarker>,
) -> Result<(), Error>
pub fn create_audio_capturer( &self, loopback: bool, audio_in_request: ServerEnd<AudioCapturerMarker>, ) -> Result<(), Error>
Creates an AudioCapturer which either captures from the current default audio input device, or loops-back from the current default audio output device based on value passed for the loopback flag.
pub fn enable_device_settings(&self, enabled: bool) -> Result<(), Error>
Sourcepub fn set_render_usage_gain(
&self,
usage: AudioRenderUsage,
gain_db: f32,
) -> Result<(), Error>
pub fn set_render_usage_gain( &self, usage: AudioRenderUsage, gain_db: f32, ) -> Result<(), Error>
Sets the Usage gain applied to Renderers. By default, the gain for all render usages is set to Unity (0 db).
Sourcepub fn set_capture_usage_gain(
&self,
usage: AudioCaptureUsage,
gain_db: f32,
) -> Result<(), Error>
pub fn set_capture_usage_gain( &self, usage: AudioCaptureUsage, gain_db: f32, ) -> Result<(), Error>
Sets the Usage gain applied to Capturers. By default, the gain for all capture usages is set to Unity (0 db).
Sourcepub fn bind_usage_volume_control(
&self,
usage: &Usage,
volume_control: ServerEnd<VolumeControlMarker>,
) -> Result<(), Error>
pub fn bind_usage_volume_control( &self, usage: &Usage, volume_control: ServerEnd<VolumeControlMarker>, ) -> Result<(), Error>
Binds to a volume control protocol for the given usage.
Sourcepub fn get_volume_from_db(
&self,
usage: &Usage,
gain_db: f32,
) -> QueryResponseFut<f32, DefaultFuchsiaResourceDialect>
pub fn get_volume_from_db( &self, usage: &Usage, gain_db: f32, ) -> QueryResponseFut<f32, DefaultFuchsiaResourceDialect>
Queries the volume percentage [0, 1] that maps to a gain_db
value for a particular
usage
. This is the same mapping as used by the VolumeControl from
BindUsageVolumeControl
.
Sourcepub fn get_db_from_volume(
&self,
usage: &Usage,
volume: f32,
) -> QueryResponseFut<f32, DefaultFuchsiaResourceDialect>
pub fn get_db_from_volume( &self, usage: &Usage, volume: f32, ) -> QueryResponseFut<f32, DefaultFuchsiaResourceDialect>
Queries the decibel value that maps to a volume percentage [0, 1] for a particular usage
.
This is the same mapping as used by the VolumeControl from BindUsageVolumeControl
.
Sourcepub fn set_interaction(
&self,
active: &Usage,
affected: &Usage,
behavior: Behavior,
) -> Result<(), Error>
pub fn set_interaction( &self, active: &Usage, affected: &Usage, behavior: Behavior, ) -> Result<(), Error>
Sets how audio_core handles interactions of multiple active streams simultaneously. If
streams of Usage active
are processing audio, and streams of Usage affected
are as well,
the Behavior specified will be applied to the streams of Usage affected
.
Sourcepub fn reset_interactions(&self) -> Result<(), Error>
pub fn reset_interactions(&self) -> Result<(), Error>
Re-initializes the set of rules that are currently governing the interaction of streams in audio_core. The default behavior is ‘NONE’.
Sourcepub fn load_defaults(&self) -> Result<(), Error>
pub fn load_defaults(&self) -> Result<(), Error>
Re-loads the platform policy configuration. Falls back to a default config if the platform does not provide a config.
Trait Implementations§
Source§impl AudioCoreProxyInterface for AudioCoreProxy
impl AudioCoreProxyInterface for AudioCoreProxy
type GetVolumeFromDbResponseFut = QueryResponseFut<f32>
type GetDbFromVolumeResponseFut = QueryResponseFut<f32>
fn create_audio_renderer( &self, audio_out_request: ServerEnd<AudioRendererMarker>, ) -> Result<(), Error>
fn create_audio_capturer_with_configuration( &self, stream_type: &AudioStreamType, configuration: &AudioCapturerConfiguration, audio_capturer_request: ServerEnd<AudioCapturerMarker>, ) -> Result<(), Error>
fn create_audio_capturer( &self, loopback: bool, audio_in_request: ServerEnd<AudioCapturerMarker>, ) -> Result<(), Error>
fn enable_device_settings(&self, enabled: bool) -> Result<(), Error>
fn set_render_usage_gain( &self, usage: AudioRenderUsage, gain_db: f32, ) -> Result<(), Error>
fn set_capture_usage_gain( &self, usage: AudioCaptureUsage, gain_db: f32, ) -> Result<(), Error>
fn bind_usage_volume_control( &self, usage: &Usage, volume_control: ServerEnd<VolumeControlMarker>, ) -> Result<(), Error>
fn get_volume_from_db( &self, usage: &Usage, gain_db: f32, ) -> Self::GetVolumeFromDbResponseFut
fn get_db_from_volume( &self, usage: &Usage, volume: f32, ) -> Self::GetDbFromVolumeResponseFut
fn set_interaction( &self, active: &Usage, affected: &Usage, behavior: Behavior, ) -> Result<(), Error>
fn reset_interactions(&self) -> Result<(), Error>
fn load_defaults(&self) -> Result<(), Error>
Source§impl Clone for AudioCoreProxy
impl Clone for AudioCoreProxy
Source§fn clone(&self) -> AudioCoreProxy
fn clone(&self) -> AudioCoreProxy
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for AudioCoreProxy
impl Debug for AudioCoreProxy
Source§impl Proxy for AudioCoreProxy
impl Proxy for AudioCoreProxy
Source§type Protocol = AudioCoreMarker
type Protocol = AudioCoreMarker
Proxy
controls.Source§fn from_channel(inner: AsyncChannel) -> Self
fn from_channel(inner: AsyncChannel) -> Self
Source§fn into_channel(self) -> Result<AsyncChannel, Self>
fn into_channel(self) -> Result<AsyncChannel, Self>
Source§fn as_channel(&self) -> &AsyncChannel
fn as_channel(&self) -> &AsyncChannel
§fn into_client_end(self) -> Result<ClientEnd<Self::Protocol>, Self>
fn into_client_end(self) -> Result<ClientEnd<Self::Protocol>, Self>
Auto Trait Implementations§
impl Freeze for AudioCoreProxy
impl !RefUnwindSafe for AudioCoreProxy
impl Send for AudioCoreProxy
impl Sync for AudioCoreProxy
impl Unpin for AudioCoreProxy
impl !UnwindSafe for AudioCoreProxy
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)