Music Hub  ..
A session-wide music playback service
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
 
struct  Errors
 

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
}
 
enum  Lifetime {
  normal,
  resumable
}
 
enum  Error {
  no_error,
  resource_error,
  format_error,
  network_error,
  access_denied_error,
  service_missing_error
}
 
typedef double PlaybackRate
 
typedef double Volume
 
typedef uint32_t PlayerKey
 
typedef void * GLConsumerWrapperHybris
 
typedef std::map< std::string, std::string > HeadersType
 

Public Member Functions

 Player (const Player &)=delete
 
virtual ~Player ()
 
Playeroperator= (const Player &)=delete
 
bool operator== (const Player &) const =delete
 
virtual std::string uuid () const =0
 
virtual void reconnect ()=0
 
virtual void abandon ()=0
 
virtual std::shared_ptr< TrackListtrack_list ()=0
 
virtual PlayerKey key () const =0
 
virtual video::Sink::Ptr create_gl_texture_video_sink (std::uint32_t texture_id)=0
 
virtual bool open_uri (const Track::UriType &uri)=0
 
virtual bool open_uri (const Track::UriType &uri, const HeadersType &)=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 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< AVBackend::Backend > & backend () 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 > & 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 const core::Property< Lifetime > & lifetime () const =0
 
virtual core::Property< LoopStatus > & loop_status ()=0
 
virtual core::Property< PlaybackRate > & playback_rate ()=0
 
virtual core::Property< bool > & shuffle ()=0
 
virtual core::Property< Volume > & volume ()=0
 
virtual core::Property< AudioStreamRole > & audio_stream_role ()=0
 
virtual core::Property< Lifetime > & lifetime ()=0
 
virtual const core::Signal< int64_t > & seeked_to () const =0
 
virtual const core::Signal< void > & about_to_finish () const =0
 
virtual const core::Signal< void > & end_of_stream () const =0
 
virtual core::Signal< PlaybackStatus > & playback_status_changed ()=0
 
virtual const core::Signal< video::Dimensions > & video_dimension_changed () const =0
 
virtual const core::Signal< Error > & error () const =0
 
virtual const core::Signal< int > & buffering_changed () const =0
 

Protected Member Functions

 Player ()
 

Detailed Description

Definition at line 58 of file player.h.

Member Typedef Documentation

◆ GLConsumerWrapperHybris

Definition at line 64 of file player.h.

◆ HeadersType

typedef std::map<std::string, std::string> core::ubuntu::media::Player::HeadersType

Definition at line 65 of file player.h.

◆ PlaybackRate

Definition at line 61 of file player.h.

◆ PlayerKey

Definition at line 63 of file player.h.

◆ Volume

Definition at line 62 of file player.h.

Member Enumeration Documentation

◆ AudioStreamRole

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 117 of file player.h.

◆ Error

Enumerator
no_error 
resource_error 
format_error 
network_error 
access_denied_error 
service_missing_error 

Definition at line 139 of file player.h.

◆ Lifetime

Enumerator
normal 
resumable 

Definition at line 133 of file player.h.

◆ LoopStatus

Enumerator
none 
track 
playlist 

Definition at line 105 of file player.h.

◆ Orientation

Enumerator
rotate0 
rotate90 
rotate180 
rotate270 

Definition at line 125 of file player.h.

◆ PlaybackStatus

Enumerator
null 
ready 
playing 
paused 
stopped 

Definition at line 96 of file player.h.

Constructor & Destructor Documentation

◆ Player() [1/2]

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

◆ ~Player()

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

Definition at line 57 of file player.cpp.

◆ Player() [2/2]

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

Definition at line 53 of file player.cpp.

Member Function Documentation

◆ abandon()

virtual void core::ubuntu::media::Player::abandon ( )
pure virtual

◆ about_to_finish()

virtual const core::Signal<void>& core::ubuntu::media::Player::about_to_finish ( ) const
pure virtual

◆ audio_stream_role() [1/2]

virtual const core::Property<AudioStreamRole>& core::ubuntu::media::Player::audio_stream_role ( ) const
pure virtual

◆ audio_stream_role() [2/2]

virtual core::Property<AudioStreamRole>& core::ubuntu::media::Player::audio_stream_role ( )
pure virtual

◆ backend()

virtual const core::Property<AVBackend::Backend>& core::ubuntu::media::Player::backend ( ) const
pure virtual

◆ buffering_changed()

virtual const core::Signal<int>& core::ubuntu::media::Player::buffering_changed ( ) const
pure virtual

◆ can_go_next()

virtual const core::Property<bool>& core::ubuntu::media::Player::can_go_next ( ) const
pure virtual

◆ can_go_previous()

virtual const core::Property<bool>& core::ubuntu::media::Player::can_go_previous ( ) const
pure virtual

◆ can_pause()

virtual const core::Property<bool>& core::ubuntu::media::Player::can_pause ( ) const
pure virtual

◆ can_play()

virtual const core::Property<bool>& core::ubuntu::media::Player::can_play ( ) const
pure virtual

◆ can_seek()

virtual const core::Property<bool>& core::ubuntu::media::Player::can_seek ( ) const
pure virtual

◆ create_gl_texture_video_sink()

virtual video::Sink::Ptr core::ubuntu::media::Player::create_gl_texture_video_sink ( std::uint32_t  texture_id)
pure virtual

◆ duration()

virtual const core::Property<int64_t>& core::ubuntu::media::Player::duration ( ) const
pure virtual

◆ end_of_stream()

virtual const core::Signal<void>& core::ubuntu::media::Player::end_of_stream ( ) const
pure virtual

◆ error()

virtual const core::Signal<Error>& core::ubuntu::media::Player::error ( ) const
pure virtual

Signals all errors and warnings (typically from GStreamer and below)

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

◆ is_audio_source()

virtual const core::Property<bool>& core::ubuntu::media::Player::is_audio_source ( ) const
pure virtual

◆ is_video_source()

virtual const core::Property<bool>& core::ubuntu::media::Player::is_video_source ( ) const
pure virtual

◆ key()

virtual PlayerKey core::ubuntu::media::Player::key ( ) const
pure virtual

◆ lifetime() [1/2]

virtual const core::Property<Lifetime>& core::ubuntu::media::Player::lifetime ( ) const
pure virtual

◆ lifetime() [2/2]

virtual core::Property<Lifetime>& core::ubuntu::media::Player::lifetime ( )
pure virtual

◆ loop_status() [1/2]

virtual const core::Property<LoopStatus>& core::ubuntu::media::Player::loop_status ( ) const
pure virtual

◆ loop_status() [2/2]

virtual core::Property<LoopStatus>& core::ubuntu::media::Player::loop_status ( )
pure virtual

◆ maximum_playback_rate()

virtual const core::Property<PlaybackRate>& core::ubuntu::media::Player::maximum_playback_rate ( ) const
pure virtual

◆ meta_data_for_current_track()

virtual const core::Property<Track::MetaData>& core::ubuntu::media::Player::meta_data_for_current_track ( ) const
pure virtual

◆ minimum_playback_rate()

virtual const core::Property<PlaybackRate>& core::ubuntu::media::Player::minimum_playback_rate ( ) const
pure virtual

◆ next()

virtual void core::ubuntu::media::Player::next ( )
pure virtual

◆ open_uri() [1/2]

virtual bool core::ubuntu::media::Player::open_uri ( const Track::UriType uri)
pure virtual

◆ open_uri() [2/2]

virtual bool core::ubuntu::media::Player::open_uri ( const Track::UriType uri,
const HeadersType  
)
pure virtual

◆ operator=()

Player& core::ubuntu::media::Player::operator= ( const Player )
delete

◆ operator==()

bool core::ubuntu::media::Player::operator== ( const Player ) const
delete

◆ orientation()

virtual const core::Property<Orientation>& core::ubuntu::media::Player::orientation ( ) const
pure virtual

◆ pause()

virtual void core::ubuntu::media::Player::pause ( )
pure virtual

◆ play()

virtual void core::ubuntu::media::Player::play ( )
pure virtual

◆ playback_rate() [1/2]

virtual const core::Property<PlaybackRate>& core::ubuntu::media::Player::playback_rate ( ) const
pure virtual

◆ playback_rate() [2/2]

virtual core::Property<PlaybackRate>& core::ubuntu::media::Player::playback_rate ( )
pure virtual

◆ playback_status()

virtual const core::Property<PlaybackStatus>& core::ubuntu::media::Player::playback_status ( ) const
pure virtual

◆ playback_status_changed()

virtual core::Signal<PlaybackStatus>& core::ubuntu::media::Player::playback_status_changed ( )
pure virtual

◆ position()

virtual const core::Property<int64_t>& core::ubuntu::media::Player::position ( ) const
pure virtual

◆ previous()

virtual void core::ubuntu::media::Player::previous ( )
pure virtual

◆ reconnect()

virtual void core::ubuntu::media::Player::reconnect ( )
pure virtual

◆ seek_to()

virtual void core::ubuntu::media::Player::seek_to ( const std::chrono::microseconds &  offset)
pure virtual

◆ seeked_to()

virtual const core::Signal<int64_t>& core::ubuntu::media::Player::seeked_to ( ) const
pure virtual

◆ shuffle() [1/2]

virtual const core::Property<bool>& core::ubuntu::media::Player::shuffle ( ) const
pure virtual

◆ shuffle() [2/2]

virtual core::Property<bool>& core::ubuntu::media::Player::shuffle ( )
pure virtual

◆ stop()

virtual void core::ubuntu::media::Player::stop ( )
pure virtual

◆ track_list()

virtual std::shared_ptr<TrackList> core::ubuntu::media::Player::track_list ( )
pure virtual

◆ uuid()

virtual std::string core::ubuntu::media::Player::uuid ( ) const
pure virtual

◆ video_dimension_changed()

virtual const core::Signal<video::Dimensions>& core::ubuntu::media::Player::video_dimension_changed ( ) const
pure virtual

◆ volume() [1/2]

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

◆ volume() [2/2]

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

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