Player Information returns details of the state of a specified Media Player application, including the static menu layout and media player events.
Player Information allows a media player to inform a remote controller about events of interest such as track changed, or that the track has reached the end. It also allows the controller to view the current player settings.
The DLL that provides the functionality and the library to which your code must link is identified below.
An application that wants
to support Player Information commands must provide implementations
of the commands in the CPlayerInfoTarget
class.
Player Information is used to configure and observe an application's settings. You can configure the settings using the resource (rss) file or programmatically using objects of the classes discussed in the next section.
There are four groups of information a target device application needs to monitor, they are:
Player Capabilities
Define the capabilities supported by the target application. These are generally static.
Player Application Settings Observer
Defines the attributes supported by the target application. The defined value will be used as a part of the response message to one of the monitored events. The available settings are generally static, however their values may change dynamically.
Player Events Observer
Specify the response message and any other actions required when a monitored event is triggered.
Player Application Settings Notifier
le the target application to monitor changes to the controller device settings and process notifications of those changes. Used to enab
The key classes that make up the Player Information are as follows:
The object used by an application to handle Player Information commands and requests.
A handle to the remote control server application.
An object of this class is used when constructing the CPlayerInfoTarget
object. The application will use this
object to define its capabilities by specifying the events that the
application should be notified about. Several events may be added
by simply using MPlayerCapabilitiesObserver::AddEvent()
.
Both EVENT_PLAYBACK_STATUS_CHANGED
and EVENT_TRACK_CHANGED
are supported by default. An attempt
to MPlayerCapabilitiesObserver::AddEvent()
either
of those events will cause a KErrAlreadyExists
error.
An attempt to MPlayerCapabilitiesObserver::RemoveEvent()
either of these events will result in a KErrNotSupported
error.
Notifications may be added for the following capabilities:
End of track
Start of track
Playback position changed
Battery status changed
Player application setting changed
The application may also be extended using MPlayerCapabilitiesObserver::AddCompanyId()
to add vendor specific capabilities.
MPlayerApplicationSettingsObserver
An object of this class is used when constructing the CPlayerInfoTarget
object. The application will use this
object to define the attribute values.
An object of this class is used when constructing the CPlayerInfoTarget
object. You will define an appropriate
set of cases for each event and handle them as required.
MPlayerApplicationSettingsNotify
An object of this class is used when constructing the CPlayerInfoTarget
object. The application will use this
object to handle changes made to the controller device settings.