pub struct PlayerProxy { /* private fields */ }
Implementations§
Source§impl PlayerProxy
impl PlayerProxy
Sourcepub fn new(channel: AsyncChannel) -> Self
pub fn new(channel: AsyncChannel) -> Self
Create a new Proxy for fuchsia.media.sessions2/Player.
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 play(&self) -> Result<(), Error>
pub fn play(&self) -> Result<(), Error>
Plays media. If this method is not supported as indicated by the absence of the PLAY
flag in PlayerCapabilities
, this method does nothing.
Sourcepub fn pause(&self) -> Result<(), Error>
pub fn pause(&self) -> Result<(), Error>
Pauses playback and retains position in media. If this method is not supported as indicated
by the absence of the PAUSE
flag in PlayerCapabilities
, this method does nothing.
Sourcepub fn seek(&self, position: i64) -> Result<(), Error>
pub fn seek(&self, position: i64) -> Result<(), Error>
Seeks to a specific position in media. Implementations are free to
enter an error state if the position is out of bounds. position
is an offset from the beginning of the media. If this method is not supported as indicated
by the absence of the SEEK
flag in PlayerCapabilities
, this method does nothing.
Sourcepub fn skip_forward(&self) -> Result<(), Error>
pub fn skip_forward(&self) -> Result<(), Error>
Skips forward in media by the player’s default skip amount. If this method is not supported
as indicated by the absence of the SKIP_FORWARD
flag in PlayerCapabilities
, this method
does nothing.
Sourcepub fn skip_reverse(&self) -> Result<(), Error>
pub fn skip_reverse(&self) -> Result<(), Error>
Skips in reverse in media by the player’s default skip amount. If this method is not
supported as indicated by the absence of the SKIP_REVERSE
flag in PlayerCapabilities
,
this method does nothing.
Sourcepub fn next_item(&self) -> Result<(), Error>
pub fn next_item(&self) -> Result<(), Error>
Changes media to the next item (e.g. next song in playlist). If this method is not
supported as indicated by the absence of the CHANGE_TO_NEXT_ITEM
flag in
PlayerCapabilities
, this method does nothing.
Sourcepub fn prev_item(&self) -> Result<(), Error>
pub fn prev_item(&self) -> Result<(), Error>
Changes media to the previous item. If this method is not
supported as indicated by the absence of the CHANGE_TO_PREV_ITEM
flag in
PlayerCapabilities
, this method does nothing.
Sourcepub fn set_playback_rate(&self, playback_rate: f32) -> Result<(), Error>
pub fn set_playback_rate(&self, playback_rate: f32) -> Result<(), Error>
Sets the playback rate of the media. This will not change the playback mode. If this method
is not supported as indicated by the absense of the SET_PLAYBACK_RATE
flag in
PlayerCapabilities
, this method does nothing.
Sourcepub fn set_repeat_mode(&self, repeat_mode: RepeatMode) -> Result<(), Error>
pub fn set_repeat_mode(&self, repeat_mode: RepeatMode) -> Result<(), Error>
Sets repeat mode to any of the supported repeat modes.
Whether this method takes effect depends on the PlayerCapabilities
and repeat_mode
:
- [
OFF
] is always supported. - [
GROUP
] requires theREPEAT_GROUPS
capability, and is otherwise ignored. - [
SINGLE
] requires theREPEAT_SINGLE
capability, and is otherwise ignored.
Sourcepub fn set_shuffle_mode(&self, shuffle_on: bool) -> Result<(), Error>
pub fn set_shuffle_mode(&self, shuffle_on: bool) -> Result<(), Error>
Sets shuffle mode. If this method is not supported as indicated by the absence of the
SHUFFLE
flag in PlayerCapabilities
, this method does nothing.
Sourcepub fn bind_volume_control(
&self,
volume_control_request: ServerEnd<VolumeControlMarker>,
) -> Result<(), Error>
pub fn bind_volume_control( &self, volume_control_request: ServerEnd<VolumeControlMarker>, ) -> Result<(), Error>
Binds to the session’s volume control for control and notifications. If this method is not
supported as indicated by the absence of the HAS_GAIN_CONTROL
flag in
PlayerCapabilities
, the channel handle passed as volume_control_request
is closed
by the service.
Sourcepub fn watch_info_change(
&self,
) -> QueryResponseFut<PlayerInfoDelta, DefaultFuchsiaResourceDialect>
pub fn watch_info_change( &self, ) -> QueryResponseFut<PlayerInfoDelta, DefaultFuchsiaResourceDialect>
Gets the net player info change using the hanging get pattern.
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 WatchInfoChangeResponseFut = QueryResponseFut<PlayerInfoDelta>
fn play(&self) -> Result<(), Error>
fn pause(&self) -> Result<(), Error>
fn stop(&self) -> Result<(), Error>
fn seek(&self, position: i64) -> Result<(), Error>
fn skip_forward(&self) -> Result<(), Error>
fn skip_reverse(&self) -> Result<(), Error>
fn next_item(&self) -> Result<(), Error>
fn prev_item(&self) -> Result<(), Error>
fn set_playback_rate(&self, playback_rate: f32) -> Result<(), Error>
fn set_repeat_mode(&self, repeat_mode: RepeatMode) -> Result<(), Error>
fn set_shuffle_mode(&self, shuffle_on: bool) -> Result<(), Error>
fn bind_volume_control( &self, volume_control_request: ServerEnd<VolumeControlMarker>, ) -> Result<(), Error>
fn watch_info_change(&self) -> Self::WatchInfoChangeResponseFut
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
)