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.