Music Hub  ..
A session-wide music playback service
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
core::ubuntu::media::Player Class Referenceabstract

#include <player.h>

+ Inheritance diagram for core::ubuntu::media::Player:
+ Collaboration diagram for core::ubuntu::media::Player:

Classes

struct  Client
 
struct  Configuration
 

Public Types

enum  PlaybackStatus {
  null,
  ready,
  playing,
  paused,
  stopped
}
 
enum  LoopStatus {
  none,
  track,
  playlist
}
 
enum  AudioStreamRole {
  alarm,
  alert,
  multimedia,
  phone
}
 
enum  Orientation {
  rotate0,
  rotate90,
  rotate180,
  rotate270
}
 
typedef double PlaybackRate
 
typedef double Volume
 
typedef uint32_t PlayerKey
 
typedef void * GLConsumerWrapperHybris
 
typedef void(* FrameAvailableCbHybris )(GLConsumerWrapperHybris wrapper, void *context)
 
typedef void(* FrameAvailableCb )(void *context)
 
typedef void(* PlaybackCompleteCb )(void *context)
 

Public Member Functions

 Player (const Player &)=delete
 
virtual ~Player ()
 
Playeroperator= (const Player &)=delete
 
bool operator== (const Player &) const =delete
 
virtual std::shared_ptr
< TrackList
track_list ()=0
 
virtual PlayerKey key () const =0
 
virtual bool open_uri (const Track::UriType &uri)=0
 
virtual void create_video_sink (uint32_t texture_id)=0
 
virtual GLConsumerWrapperHybris gl_consumer () const =0
 
virtual void next ()=0
 
virtual void previous ()=0
 
virtual void play ()=0
 
virtual void pause ()=0
 
virtual void stop ()=0
 
virtual void seek_to (const std::chrono::microseconds &offset)=0
 
virtual void set_frame_available_callback (FrameAvailableCb cb, void *context)=0
 
virtual void set_playback_complete_callback (PlaybackCompleteCb cb, void *context)=0
 
virtual const core::Property
< bool > & 
can_play () const =0
 
virtual const core::Property
< bool > & 
can_pause () const =0
 
virtual const core::Property
< bool > & 
can_seek () const =0
 
virtual const core::Property
< bool > & 
can_go_previous () const =0
 
virtual const core::Property
< bool > & 
can_go_next () const =0
 
virtual const core::Property
< bool > & 
is_video_source () const =0
 
virtual const core::Property
< bool > & 
is_audio_source () const =0
 
virtual const core::Property
< PlaybackStatus > & 
playback_status () const =0
 
virtual const core::Property
< LoopStatus > & 
loop_status () const =0
 
virtual const core::Property
< PlaybackRate > & 
playback_rate () const =0
 
virtual const core::Property
< bool > & 
is_shuffle () const =0
 
virtual const core::Property
< Track::MetaData > & 
meta_data_for_current_track () const =0
 
virtual const core::Property
< Volume > & 
volume () const =0
 
virtual const core::Property
< PlaybackRate > & 
minimum_playback_rate () const =0
 
virtual const core::Property
< PlaybackRate > & 
maximum_playback_rate () const =0
 
virtual const core::Property
< int64_t > & 
position () const =0
 
virtual const core::Property
< int64_t > & 
duration () const =0
 
virtual const core::Property
< AudioStreamRole > & 
audio_stream_role () const =0
 
virtual const core::Property
< Orientation > & 
orientation () const =0
 
virtual core::Property
< LoopStatus > & 
loop_status ()=0
 
virtual core::Property
< PlaybackRate > & 
playback_rate ()=0
 
virtual core::Property< bool > & is_shuffle ()=0
 
virtual core::Property< Volume > & volume ()=0
 
virtual core::Property
< AudioStreamRole > & 
audio_stream_role ()=0
 
virtual const core::Signal
< int64_t > & 
seeked_to () const =0
 
virtual const core::Signal
< void > & 
end_of_stream () const =0
 
virtual core::Signal
< PlaybackStatus > & 
playback_status_changed ()=0
 
virtual const core::Signal
< uint64_t > & 
video_dimension_changed () const =0
 

Protected Member Functions

 Player ()
 

Detailed Description

Definition at line 38 of file player.h.

Member Typedef Documentation

typedef void(* core::ubuntu::media::Player::FrameAvailableCb)(void *context)

Definition at line 48 of file player.h.

typedef void(* core::ubuntu::media::Player::FrameAvailableCbHybris)(GLConsumerWrapperHybris wrapper, void *context)

Used to set a callback function to be called when a frame is ready to be rendered

Definition at line 47 of file player.h.

Definition at line 44 of file player.h.

typedef void(* core::ubuntu::media::Player::PlaybackCompleteCb)(void *context)

Definition at line 49 of file player.h.

Definition at line 41 of file player.h.

Definition at line 43 of file player.h.

Definition at line 42 of file player.h.

Member Enumeration Documentation

Audio stream role types used to categorize audio playback. multimedia is the default role type and will be automatically paused by media-hub when other types need to play.

Enumerator
alarm 
alert 
multimedia 
phone 

Definition at line 81 of file player.h.

Enumerator
none 
track 
playlist 

Definition at line 69 of file player.h.

Enumerator
rotate0 
rotate90 
rotate180 
rotate270 

Definition at line 89 of file player.h.

Enumerator
null 
ready 
playing 
paused 
stopped 

Definition at line 60 of file player.h.

Constructor & Destructor Documentation

core::ubuntu::media::Player::Player ( const Player )
delete
core::ubuntu::media::Player::~Player ( )
virtual

Definition at line 41 of file player.cpp.

core::ubuntu::media::Player::Player ( )
protected

Definition at line 37 of file player.cpp.

Member Function Documentation

virtual const core::Property<AudioStreamRole>& core::ubuntu::media::Player::audio_stream_role ( ) const
pure virtual
virtual core::Property<AudioStreamRole>& core::ubuntu::media::Player::audio_stream_role ( )
pure virtual
virtual const core::Property<bool>& core::ubuntu::media::Player::can_go_next ( ) const
pure virtual
virtual const core::Property<bool>& core::ubuntu::media::Player::can_go_previous ( ) const
pure virtual
virtual const core::Property<bool>& core::ubuntu::media::Player::can_pause ( ) const
pure virtual
virtual const core::Property<bool>& core::ubuntu::media::Player::can_play ( ) const
pure virtual
virtual const core::Property<bool>& core::ubuntu::media::Player::can_seek ( ) const
pure virtual
virtual void core::ubuntu::media::Player::create_video_sink ( uint32_t  texture_id)
pure virtual
virtual const core::Property<int64_t>& core::ubuntu::media::Player::duration ( ) const
pure virtual
virtual const core::Signal<void>& core::ubuntu::media::Player::end_of_stream ( ) const
pure virtual
virtual GLConsumerWrapperHybris core::ubuntu::media::Player::gl_consumer ( ) const
pure virtual
virtual const core::Property<bool>& core::ubuntu::media::Player::is_audio_source ( ) const
pure virtual
virtual const core::Property<bool>& core::ubuntu::media::Player::is_shuffle ( ) const
pure virtual
virtual core::Property<bool>& core::ubuntu::media::Player::is_shuffle ( )
pure virtual
virtual const core::Property<bool>& core::ubuntu::media::Player::is_video_source ( ) const
pure virtual
virtual PlayerKey core::ubuntu::media::Player::key ( ) const
pure virtual
virtual const core::Property<LoopStatus>& core::ubuntu::media::Player::loop_status ( ) const
pure virtual
virtual core::Property<LoopStatus>& core::ubuntu::media::Player::loop_status ( )
pure virtual
virtual const core::Property<PlaybackRate>& core::ubuntu::media::Player::maximum_playback_rate ( ) const
pure virtual
virtual const core::Property<Track::MetaData>& core::ubuntu::media::Player::meta_data_for_current_track ( ) const
pure virtual
virtual const core::Property<PlaybackRate>& core::ubuntu::media::Player::minimum_playback_rate ( ) const
pure virtual
virtual void core::ubuntu::media::Player::next ( )
pure virtual
virtual bool core::ubuntu::media::Player::open_uri ( const Track::UriType uri)
pure virtual
Player& core::ubuntu::media::Player::operator= ( const Player )
delete
bool core::ubuntu::media::Player::operator== ( const Player ) const
delete
virtual const core::Property<Orientation>& core::ubuntu::media::Player::orientation ( ) const
pure virtual
virtual const core::Property<PlaybackRate>& core::ubuntu::media::Player::playback_rate ( ) const
pure virtual
virtual core::Property<PlaybackRate>& core::ubuntu::media::Player::playback_rate ( )
pure virtual
virtual const core::Property<PlaybackStatus>& core::ubuntu::media::Player::playback_status ( ) const
pure virtual
virtual core::Signal<PlaybackStatus>& core::ubuntu::media::Player::playback_status_changed ( )
pure virtual
virtual const core::Property<int64_t>& core::ubuntu::media::Player::position ( ) const
pure virtual
virtual void core::ubuntu::media::Player::previous ( )
pure virtual
virtual void core::ubuntu::media::Player::seek_to ( const std::chrono::microseconds &  offset)
pure virtual
virtual const core::Signal<int64_t>& core::ubuntu::media::Player::seeked_to ( ) const
pure virtual
virtual void core::ubuntu::media::Player::set_frame_available_callback ( FrameAvailableCb  cb,
void *  context 
)
pure virtual
virtual void core::ubuntu::media::Player::set_playback_complete_callback ( PlaybackCompleteCb  cb,
void *  context 
)
pure virtual
virtual void core::ubuntu::media::Player::stop ( )
pure virtual
virtual std::shared_ptr<TrackList> core::ubuntu::media::Player::track_list ( )
pure virtual
virtual const core::Signal<uint64_t>& core::ubuntu::media::Player::video_dimension_changed ( ) const
pure virtual

Called when the video height/width change. Passes height and width as a bitmask with height in the upper 32 bits and width in the lower 32 bits (both unsigned values)

Implemented in core::ubuntu::media::PlayerStub, and core::ubuntu::media::PlayerSkeleton.

virtual const core::Property<Volume>& core::ubuntu::media::Player::volume ( ) const
pure virtual
virtual core::Property<Volume>& core::ubuntu::media::Player::volume ( )
pure virtual

The documentation for this class was generated from the following files: