Symbian
Symbian OS Library

SYMBIAN OS V9.3

[Index] [Spacer] [Previous] [Next]



MIDI Playing

CMIDIClientUtility provides an interface to open, play and obtain information in MIDI format. The MIDI data can supplied either in a file, a descriptor or a URL.

For the purposes of this description, the playing process has been broken down into the following sections.


Playing

This class is intended for playing MIDI resources only. CMIDIClientUtility is capable of playing more than one clip within the same instance of the object.

The play related methods are as follows:

[Top]


Opening

CMIDIClientUtility provides methods to play multiple MIDI resources within a single instance. MIDI resources are not be opened during instantiation of the CMIDIClientUtility object. Instead, all MIDI resources must be opened using one of the open methods listed below.

The following open methods are provided:

OpenFileL(const TDesC& aFileName);

OpenDesL(const TDesC8& aDescriptor);

OpenUrlL(const TDesC& aUrl, TInt aIapId = KUseDefaultIap, const TDesC8& aMimeType=KNullDesC8);

As soon as the open method has completed, successfully or otherwise, the callback function MMIDIClientUtilityObserver::MmcuoStateChanged() is called.

If a MIDI file is already open and playing, use Stop() followed by Close() to unload the clip before specifying new MIDI data to open.

[Top]


Control

You can control the MIDI player, or a MIDI song, in the following ways:

[Top]


Information

The CMIDIClientUtility class can return information about the MIDI player or MIDI songs in the following ways:

[Top]


Events

The MIDI API allows you to monitor MIDI progress.

The API also provides a callback mechanism to synchronise the playback of an external device with MIDI player's time base (MIDI player acting as a master): MmcuoSyncUpdateL

[Top]


See also