pub struct PlayerProxy { /* private fields */ }
Implementations§
Source§impl PlayerProxy
impl PlayerProxy
Sourcepub fn take_event_stream(&self) -> PlayerEventStream
pub fn take_event_stream(&self) -> PlayerEventStream
Get a Stream of events from the remote end of the protocol.
§Panics
Panics if the event stream was already taken.
Sourcepub fn add_sound_from_file(
&self,
id: u32,
file: ClientEnd<FileMarker>,
) -> QueryResponseFut<PlayerAddSoundFromFileResult, DefaultFuchsiaResourceDialect>
pub fn add_sound_from_file( &self, id: u32, file: ClientEnd<FileMarker>, ) -> QueryResponseFut<PlayerAddSoundFromFileResult, DefaultFuchsiaResourceDialect>
Adds a sound to the collection maintained for the client, reading the sound from a file.
If id
identifies an existing sound in the collection, the service will close the
connection. Returns the duration of the sound or an error status returned from an I/O
operation.
Currently, only PCM WAV files and Ogg/Opus files are supported.
Sourcepub fn add_sound_buffer(
&self,
id: u32,
buffer: Buffer,
stream_type: &AudioStreamType,
) -> Result<(), Error>
pub fn add_sound_buffer( &self, id: u32, buffer: Buffer, stream_type: &AudioStreamType, ) -> Result<(), Error>
Adds a sound, in the form of a buffer containing raw PCM samples, to the collection maintained for the client. The service will retain a handle to the buffer’s VMO until the sound is removed and is no longer playing or until the connection is closed.
If id
identifies an existing sound in the collection, the service will close the
connection.
Sourcepub fn remove_sound(&self, id: u32) -> Result<(), Error>
pub fn remove_sound(&self, id: u32) -> Result<(), Error>
Removes a sound from the collection maintained for the client. A sound can be removed even
if a PlaySound
method is pending for that sound.
If id
doesn’t identify an existing sound in the collection, the service will do nothing.
This is tolerated so that clients don’t have to wait for the response from
AddSoundFromFile
before playing and removing the sound.
Removing an unneeded sound frees the resources associated with that sound, principally the VMO required to store the uncompressed sound.
Sourcepub fn play_sound(
&self,
id: u32,
usage: AudioRenderUsage,
) -> QueryResponseFut<PlayerPlaySoundResult, DefaultFuchsiaResourceDialect>
pub fn play_sound( &self, id: u32, usage: AudioRenderUsage, ) -> QueryResponseFut<PlayerPlaySoundResult, DefaultFuchsiaResourceDialect>
Plays the existing sound identified by id
using a renderer with usage usage
. The
sound is played as soon as possible. The reply is sent when the sound is finished playing.
If id
doesn’t identify an existing sound in the collection, the method returns
PlaySoundError.NO_SUCH_SOUND
. The most recent PlaySound
call for a given valid id can
be stopped using StopPlayingSound
, in which case, this method returns
PlaySoundError.STOPPED
.
Sourcepub fn stop_playing_sound(&self, id: u32) -> Result<(), Error>
pub fn stop_playing_sound(&self, id: u32) -> Result<(), Error>
Stops playback of the sound identified by id
invoked by the the most recent call to
PlaySound
for that sound. If id
doesn’t identify an existing sound in the collection
or if the sound is not currently playing, this method does nothing. If more than one
PlaySound
method is currently pending for that sound, only the most recent is stopped.
Trait Implementations§
Source§impl Clone for PlayerProxy
impl Clone for PlayerProxy
Source§fn clone(&self) -> PlayerProxy
fn clone(&self) -> PlayerProxy
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for PlayerProxy
impl Debug for PlayerProxy
Source§impl PlayerProxyInterface for PlayerProxy
impl PlayerProxyInterface for PlayerProxy
type AddSoundFromFileResponseFut = QueryResponseFut<Result<i64, i32>>
type PlaySoundResponseFut = QueryResponseFut<Result<(), PlaySoundError>>
fn add_sound_from_file( &self, id: u32, file: ClientEnd<FileMarker>, ) -> Self::AddSoundFromFileResponseFut
fn add_sound_buffer( &self, id: u32, buffer: Buffer, stream_type: &AudioStreamType, ) -> Result<(), Error>
fn remove_sound(&self, id: u32) -> Result<(), Error>
fn play_sound( &self, id: u32, usage: AudioRenderUsage, ) -> Self::PlaySoundResponseFut
fn stop_playing_sound(&self, id: u32) -> Result<(), Error>
Source§impl Proxy for PlayerProxy
impl Proxy for PlayerProxy
Source§type Protocol = PlayerMarker
type Protocol = PlayerMarker
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 PlayerProxy
impl !RefUnwindSafe for PlayerProxy
impl Send for PlayerProxy
impl Sync for PlayerProxy
impl Unpin for PlayerProxy
impl !UnwindSafe for PlayerProxy
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
)